File: /usr/src/linux/drivers/i2o/i2o_scsi.h
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 extern int i2o_scsi_detect(Scsi_Host_Template *);
18 extern const char *i2o_scsi_info(struct Scsi_Host *);
19 extern int i2o_scsi_command(Scsi_Cmnd *);
20 extern int i2o_scsi_queuecommand(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
21 extern int i2o_scsi_abort(Scsi_Cmnd *);
22 extern int i2o_scsi_reset(Scsi_Cmnd *, unsigned int);
23 extern int i2o_scsi_bios_param(Disk *, kdev_t, int *);
24 extern void i2o_scsi_setup(char *str, int *ints);
25 extern 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