1 /********************************************************
2 * Header file for eata_dma.c Linux EATA-DMA SCSI driver *
3 * (c) 1993,94,95 Michael Neuffer *
4 *********************************************************
5 * last change: 95/07/18 *
6 ********************************************************/
7
8
9 #ifndef _EATA_DMA_H
10 #define _EATA_DMA_H
11
12 #ifndef HOSTS_C
13
14 #include "eata_generic.h"
15
16
17 #define VER_MAJOR 2
18 #define VER_MINOR 5
19 #define VER_SUB "8"
20
21
22 /************************************************************************
23 * Here you can switch parts of the code on and of *
24 ************************************************************************/
25
26 #define CHECKPAL 0 /* EISA pal checking on/off */
27 #define NEWSTUFF 0 /* Some changes for ISA/EISA boards */
28
29 /************************************************************************
30 * Debug options. *
31 * Enable DEBUG and whichever options you require. *
32 ************************************************************************/
33 #define DEBUG_EATA 1 /* Enable debug code. */
34 #define DPT_DEBUG 0 /* Bobs special */
35 #define DBG_DELAY 0 /* Build in delays so debug messages can be
36 * be read before they vanish of the top of
37 * the screen! */
38 #define DBG_PROBE 0 /* Debug probe routines. */
39 #define DBG_PCI 0 /* Trace PCI routines */
40 #define DBG_EISA 0 /* Trace EISA routines */
41 #define DBG_ISA 0 /* Trace ISA routines */
42 #define DBG_BLINK 0 /* Trace Blink check */
43 #define DBG_PIO 0 /* Trace get_config_PIO */
44 #define DBG_COM 0 /* Trace command call */
45 #define DBG_QUEUE 0 /* Trace command queueing. */
46 #define DBG_QUEUE2 0 /* Trace command queueing SG. */
47 #define DBG_INTR 0 /* Trace interrupt service routine. */
48 #define DBG_INTR2 0 /* Trace interrupt service routine. */
49 #define DBG_INTR3 0 /* Trace get_board_data interrupts. */
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_detect(Scsi_Host_Template *);
64 const char *eata_info(struct Scsi_Host *);
65 int eata_command(Scsi_Cmnd *);
66 int eata_queue(Scsi_Cmnd *, void (* done)(Scsi_Cmnd *));
67 int eata_abort(Scsi_Cmnd *);
68 int eata_reset(Scsi_Cmnd *);
69 int eata_proc_info(char *, char **, off_t, int, int, int);
70 #ifdef MODULE
71 int eata_release(struct Scsi_Host *);
72 #else
73 #define eata_release NULL
74 #endif
75
76 #include <linux/scsicam.h>
77
78 #define EATA_DMA { \
79 NULL, NULL, \
80 NULL, /* proc_dir_entry */ \
81 eata_proc_info, /* procinfo */ \
82 "EATA (Extended Attachment) HBA driver", \
83 eata_detect, \
84 eata_release, \
85 NULL, NULL, \
86 eata_queue, \
87 eata_abort, \
88 eata_reset, \
89 NULL, /* Slave attach */ \
90 scsicam_bios_param, \
91 0, /* Canqueue */ \
92 0, /* this_id */ \
93 0, /* sg_tablesize */ \
94 0, /* cmd_per_lun */ \
95 0, /* present */ \
96 1, /* True if ISA */ \
97 ENABLE_CLUSTERING }
98
99
100 #endif /* _EATA_DMA_H */
101
102 /*
103 * Overrides for Emacs so that we almost follow Linus's tabbing style.
104 * Emacs will notice this stuff at the end of the file and automatically
105 * adjust the settings for this buffer only. This must remain at the end
106 * of the file.
107 * ---------------------------------------------------------------------------
108 * Local variables:
109 * c-indent-level: 4
110 * c-brace-imaginary-offset: 0
111 * c-brace-offset: -4
112 * c-argdecl-indent: 4
113 * c-label-offset: -4
114 * c-continued-statement-offset: 4
115 * c-continued-brace-offset: 0
116 * indent-tabs-mode: nil
117 * tab-width: 8
118 * End:
119 */