1 /******************************************************** 2 * Header file for eata_pio.c Linux EATA-PIO SCSI driver * 3 * (c) 1993,94,95 Michael Neuffer * 4 ********************************************************* 5 * last change: 95/06/21 * 6 ********************************************************/ 7 8 9 #ifndef _EATA_PIO_H 10 #define _EATA_PIO_H 11 12 #include <linux/blk.h> 13 #include "scsi.h" 14 #include "hosts.h" 15 #include <linux/scsicam.h> 16 17 #ifndef HOSTS_C 18 #include "eata_generic.h" 19 20 #define VER_MAJOR 0 21 #define VER_MINOR 0 22 #define VER_SUB "1b" 23 24 /************************************************************************ 25 * Here you can switch parts of the code on and of * 26 ************************************************************************/ 27 28 #define VERBOSE_SETUP /* show startup screen of 2001 */ 29 #define ALLOW_DMA_BOARDS 1 30 31 /************************************************************************ 32 * Debug options. * 33 * Enable DEBUG and whichever options you require. * 34 ************************************************************************/ 35 #define DEBUG_EATA 1 /* Enable debug code. */ 36 #define DPT_DEBUG 0 /* Bobs special */ 37 #define DBG_DELAY 0 /* Build in delays so debug messages can be 38 * be read before they vanish of the top of 39 * the screen! 40 */ 41 #define DBG_PROBE 0 /* Debug probe routines. */ 42 #define DBG_ISA 0 /* Trace ISA routines */ 43 #define DBG_EISA 0 /* Trace EISA routines */ 44 #define DBG_PCI 0 /* Trace PCI routines */ 45 #define DBG_PIO 0 /* Trace get_config_PIO */ 46 #define DBG_COM 0 /* Trace command call */ 47 #define DBG_QUEUE 0 /* Trace command queueing. */ 48 #define DBG_INTR 0 /* Trace interrupt service routine. */ 49 #define DBG_INTR2 0 /* Trace interrupt service routine. */ 50 #define DBG_PROC 0 /* Debug proc-fs related statistics */ 51 #define DBG_PROC_WRITE 0 52 #define DBG_REGISTER 0 /* */ 53 #define DBG_ABNORM 1 /* Debug abnormal actions (reset, abort) */ 54 55 #if DEBUG_EATA 56 #define DBG(x, y) if ((x)) {y;} 57 #else 58 #define DBG(x, y) 59 #endif 60 61 #endif /* !HOSTS_C */ 62 63 int eata_pio_detect(Scsi_Host_Template *); 64 const char *eata_pio_info(struct Scsi_Host *); 65 int eata_pio_command(Scsi_Cmnd *); 66 int eata_pio_queue(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); 67 int eata_pio_abort(Scsi_Cmnd *); 68 int eata_pio_reset(Scsi_Cmnd *); 69 int eata_pio_proc_info(char *, char **, off_t, int, int, int); 70 #ifdef MODULE 71 int eata_pio_release(struct Scsi_Host *); 72 #else 73 #define eata_pio_release NULL 74 #endif 75 76 77 #define EATA_PIO { \ 78 NULL, NULL, \ 79 NULL, /* proc_dir_entry */ \ 80 eata_pio_proc_info, /* procinfo */ \ 81 "EATA (Extended Attachment) PIO driver", \ 82 eata_pio_detect, \ 83 eata_pio_release, \ 84 NULL, NULL, \ 85 eata_pio_queue, \ 86 eata_pio_abort, \ 87 eata_pio_reset, \ 88 NULL, /* Slave attach */ \ 89 scsicam_bios_param, \ 90 0, /* Canqueue */ \ 91 0, /* this_id */ \ 92 0, /* sg_tablesize */ \ 93 0, /* cmd_per_lun */ \ 94 0, /* present */ \ 95 1, /* True if ISA */ \ 96 ENABLE_CLUSTERING } 97 98 #endif /* _EATA_PIO_H */ 99 100 /* 101 * Overrides for Emacs so that we almost follow Linus's tabbing style. 102 * Emacs will notice this stuff at the end of the file and automatically 103 * adjust the settings for this buffer only. This must remain at the end 104 * of the file. 105 * --------------------------------------------------------------------------- 106 * Local variables: 107 * c-indent-level: 4 108 * c-brace-imaginary-offset: 0 109 * c-brace-offset: -4 110 * c-argdecl-indent: 4 111 * c-label-offset: -4 112 * c-continued-statement-offset: 4 113 * c-continued-brace-offset: 0 114 * tab-width: 8 115 * End: 116 */