1 #ifndef ZALON7XX_H 2 #define ZALON7XX_H 3 4 #include <linux/types.h> 5 6 #include "sym53c8xx_defs.h" 7 8 extern int zalon7xx_detect(Scsi_Host_Template *); 9 10 #include <scsi/scsicam.h> 11 12 extern struct proc_dir_entry proc_scsi_zalon7xx; 13 14 /* borrowed from drivers/scsi/ncr53c8xx.h */ 15 int ncr53c8xx_abort(Scsi_Cmnd *); 16 int zalon7xx_detect(Scsi_Host_Template *tpnt); 17 const char *ncr53c8xx_info(struct Scsi_Host *host); 18 int ncr53c8xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); 19 int ncr53c8xx_reset(Scsi_Cmnd *, unsigned int); 20 21 #ifdef MODULE 22 int zalon7xx_release(struct Scsi_Host *); 23 #else 24 #define zalon7xx_release NULL 25 #endif 26 27 #define SCSI_ZALON { proc_name: "zalon720", \ 28 detect: zalon7xx_detect, \ 29 release: zalon7xx_release, \ 30 info: ncr53c8xx_info, \ 31 queuecommand: ncr53c8xx_queue_command,\ 32 abort: ncr53c8xx_abort, \ 33 reset: ncr53c8xx_reset, \ 34 bios_param: scsicam_bios_param, \ 35 can_queue: SCSI_NCR_CAN_QUEUE, \ 36 this_id: 7, \ 37 sg_tablesize: SCSI_NCR_SG_TABLESIZE, \ 38 cmd_per_lun: SCSI_NCR_CMD_PER_LUN, \ 39 use_clustering: DISABLE_CLUSTERING} 40 41 42 #define GSC_SCSI_ZALON_OFFSET 0x800 43 44 #define IO_MODULE_EIM (1*4) 45 #define IO_MODULE_DC_ADATA (2*4) 46 #define IO_MODULE_II_CDATA (3*4) 47 #define IO_MODULE_IO_COMMAND (12*4) 48 #define IO_MODULE_IO_STATUS (13*4) 49 50 #define IOSTATUS_RY 0x40 51 #define IOSTATUS_FE 0x80 52 #define IOIIDATA_SMINT5L 0x40000000 53 #define IOIIDATA_MINT5EN 0x20000000 54 #define IOIIDATA_PACKEN 0x10000000 55 #define IOIIDATA_PREFETCHEN 0x08000000 56 #define IOIIDATA_IOII 0x00000020 57 58 #define CMD_RESET 5 59 60 #endif /* ZALON7XX_H */ 61