3 #include <linux/types.h>
4 #include <linux/kdev_t.h>
6 static int scsi_debug_detect(Scsi_Host_Template *);
7 static int scsi_debug_release(struct Scsi_Host *);
8 /* static int scsi_debug_command(Scsi_Cmnd *); */
9 static int scsi_debug_queuecommand(Scsi_Cmnd *, void (*done) (Scsi_Cmnd *));
10 static int scsi_debug_ioctl(Scsi_Device *, int, void *);
11 static int scsi_debug_biosparam(Disk *, kdev_t, int[]);
12 static int scsi_debug_abort(Scsi_Cmnd *);
13 static int scsi_debug_bus_reset(Scsi_Cmnd *);
14 static int scsi_debug_device_reset(Scsi_Cmnd *);
15 static int scsi_debug_host_reset(Scsi_Cmnd *);
16 static int scsi_debug_proc_info(char *, char **, off_t, int, int, int);
17 static const char * scsi_debug_info(struct Scsi_Host *);
20 * This driver is written for the lk 2.4 series
22 #define SCSI_DEBUG_CANQUEUE 255 /* needs to be >= 1 */
24 #define SCSI_DEBUG_MAX_CMD_LEN 16
26 #define SCSI_DEBUG_TEMPLATE \
27 {proc_info: scsi_debug_proc_info, \
29 info: scsi_debug_info, \
30 detect: scsi_debug_detect, \
31 release: scsi_debug_release, \
32 ioctl: scsi_debug_ioctl, \
33 queuecommand: scsi_debug_queuecommand, \
34 eh_abort_handler: scsi_debug_abort, \
35 eh_bus_reset_handler: scsi_debug_bus_reset, \
36 eh_device_reset_handler: scsi_debug_device_reset, \
37 eh_host_reset_handler: scsi_debug_host_reset, \
38 bios_param: scsi_debug_biosparam, \
39 can_queue: SCSI_DEBUG_CANQUEUE, \
43 unchecked_isa_dma: 0, \
44 use_clustering: ENABLE_CLUSTERING, \