1 /******************************************************** 2 * Header file for eata_pio.c Linux EATA-PIO SCSI driver * 3 * (c) 1993-96 Michael Neuffer * 4 ********************************************************* 5 * last change: 96/05/05 * 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 <scsi/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 *, unsigned int); 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 proc_info: eata_pio_proc_info, /* procinfo */ \ 79 name: "EATA (Extended Attachment) PIO driver", \ 80 detect: eata_pio_detect, \ 81 release: eata_pio_release, \ 82 queuecommand: eata_pio_queue, \ 83 abort: eata_pio_abort, \ 84 reset: eata_pio_reset, \ 85 bios_param: scsicam_bios_param, \ 86 unchecked_isa_dma: 1, /* True if ISA */ \ 87 use_clustering: ENABLE_CLUSTERING } 88 89 #endif /* _EATA_PIO_H */ 90 91 /* 92 * Overrides for Emacs so that we almost follow Linus's tabbing style. 93 * Emacs will notice this stuff at the end of the file and automatically 94 * adjust the settings for this buffer only. This must remain at the end 95 * of the file. 96 * --------------------------------------------------------------------------- 97 * Local variables: 98 * c-indent-level: 4 99 * c-brace-imaginary-offset: 0 100 * c-brace-offset: -4 101 * c-argdecl-indent: 4 102 * c-label-offset: -4 103 * c-continued-statement-offset: 4 104 * c-continued-brace-offset: 0 105 * tab-width: 8 106 * End: 107 */ 108