1 /* 2 * Low Level Driver for the IBM Microchannel SCSI Subsystem 3 * (Headerfile, see README.ibmmca for description of the IBM MCA SCSI-driver 4 * For use under the GNU General Public License within the Linux-kernel project. 5 * This include file works only correctly with kernel 2.4.0 or higher!!! */ 6 7 #ifndef _IBMMCA_H 8 #define _IBMMCA_H 9 10 /* Common forward declarations for all Linux-versions: */ 11 12 /* Interfaces to the midlevel Linux SCSI driver */ 13 extern int ibmmca_proc_info (char *, char **, off_t, int, int, int); 14 extern int ibmmca_detect (Scsi_Host_Template *); 15 extern int ibmmca_release (struct Scsi_Host *); 16 extern int ibmmca_command (Scsi_Cmnd *); 17 extern int ibmmca_queuecommand (Scsi_Cmnd *, void (*done) (Scsi_Cmnd *)); 18 extern int ibmmca_abort (Scsi_Cmnd *); 19 extern int ibmmca_reset (Scsi_Cmnd *, unsigned int); 20 extern int ibmmca_biosparam (Disk *, kdev_t, int *); 21 22 /*structure for /proc filesystem */ 23 extern struct proc_dir_entry proc_scsi_ibmmca; 24 25 /* 26 * 2/8/98 27 * Note to maintainer of IBMMCA. Do not change this initializer back to 28 * the old format. Please ask eric@andante.jic.com if you have any questions 29 * about this, but it will break things in the future. 30 */ 31 #define IBMMCA { \ 32 proc_name: "ibmmca", /*proc_name*/ \ 33 proc_info: ibmmca_proc_info, /*proc info fn*/ \ 34 name: "IBM SCSI-Subsystem", /*name*/ \ 35 detect: ibmmca_detect, /*detect fn*/ \ 36 release: ibmmca_release, /*release fn*/ \ 37 command: ibmmca_command, /*command fn*/ \ 38 queuecommand: ibmmca_queuecommand, /*queuecommand fn*/ \ 39 abort: ibmmca_abort, /*abort fn*/ \ 40 reset: ibmmca_reset, /*reset fn*/ \ 41 bios_param: ibmmca_biosparam, /*bios fn*/ \ 42 can_queue: 16, /*can_queue*/ \ 43 this_id: 7, /*set by detect*/ \ 44 sg_tablesize: 16, /*sg_tablesize*/ \ 45 cmd_per_lun: 1, /*cmd_per_lun*/ \ 46 unchecked_isa_dma: 0, /*32-Bit Busmaster */ \ 47 use_clustering: ENABLE_CLUSTERING /*use_clustering*/ \ 48 } 49 50 #endif /* _IBMMCA_H */ 51