1 #ifndef _I2O_SCSI_H 2 #define _I2O_SCSI_H 3 4 #if !defined(LINUX_VERSION_CODE) 5 #include <linux/version.h> 6 #endif 7 8 #define LinuxVersionCode(v, p, s) (((v)<<16)+((p)<<8)+(s)) 9 10 #include <linux/types.h> 11 #include <linux/kdev_t.h> 12 13 #define I2O_SCSI_ID 15 14 #define I2O_SCSI_CAN_QUEUE 4 15 #define I2O_SCSI_CMD_PER_LUN 6 16 17 static int i2o_scsi_detect(Scsi_Host_Template *); 18 static const char *i2o_scsi_info(struct Scsi_Host *); 19 static int i2o_scsi_command(Scsi_Cmnd *); 20 static int i2o_scsi_queuecommand(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); 21 static int i2o_scsi_abort(Scsi_Cmnd *); 22 static int i2o_scsi_reset(Scsi_Cmnd *, unsigned int); 23 static int i2o_scsi_bios_param(Disk *, kdev_t, int *); 24 extern void i2o_scsi_setup(char *str, int *ints); 25 static int i2o_scsi_release(struct Scsi_Host *host); 26 27 #define I2OSCSI { \ 28 next: NULL, \ 29 proc_name: "i2o_scsi", \ 30 name: "I2O SCSI Layer", \ 31 detect: i2o_scsi_detect, \ 32 release: i2o_scsi_release, \ 33 info: i2o_scsi_info, \ 34 command: i2o_scsi_command, \ 35 queuecommand: i2o_scsi_queuecommand, \ 36 abort: i2o_scsi_abort, \ 37 reset: i2o_scsi_reset, \ 38 bios_param: i2o_scsi_bios_param, \ 39 can_queue: I2O_SCSI_CAN_QUEUE, \ 40 this_id: I2O_SCSI_ID, \ 41 sg_tablesize: 8, \ 42 cmd_per_lun: I2O_SCSI_CMD_PER_LUN, \ 43 unchecked_isa_dma: 0, \ 44 use_clustering: ENABLE_CLUSTERING \ 45 } 46 47 #endif 48