|
|
1.1 ! root 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: 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: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.