update atp870u driver to 0.78 from D-Link source
[linux-2.4.git] / drivers / ide / pci / generic.h
1 #ifndef IDE_GENERIC_H
2 #define IDE_GENERIC_H
3
4 #include <linux/config.h>
5 #include <linux/pci.h>
6 #include <linux/ide.h>
7
8 static unsigned int init_chipset_generic(struct pci_dev *, const char *);
9 static void init_hwif_generic(ide_hwif_t *);
10 static void init_dma_generic(ide_hwif_t *, unsigned long);
11
12 static ide_pci_device_t generic_chipsets[] __devinitdata = {
13         {       /* 0 */
14                 .vendor         = PCI_VENDOR_ID_NS,
15                 .device         = PCI_DEVICE_ID_NS_87410,
16                 .name           = "NS87410",
17                 .init_chipset   = init_chipset_generic,
18                 .init_iops      = NULL,
19                 .init_hwif      = init_hwif_generic,
20                 .init_dma       = init_dma_generic,
21                 .channels       = 2,
22                 .autodma        = AUTODMA,
23                 .enablebits     = {{0x43,0x08,0x08}, {0x47,0x08,0x08}},
24                 .bootable       = ON_BOARD,
25                 .extra          = 0,
26         },{     /* 1 */
27                 .vendor         = PCI_VENDOR_ID_PCTECH,
28                 .device         = PCI_DEVICE_ID_PCTECH_SAMURAI_IDE,
29                 .name           = "SAMURAI",
30                 .init_chipset   = init_chipset_generic,
31                 .init_iops      = NULL,
32                 .init_hwif      = init_hwif_generic,
33                 .init_dma       = init_dma_generic,
34                 .channels       = 2,
35                 .autodma        = AUTODMA,
36                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
37                 .bootable       = ON_BOARD,
38                 .extra          = 0,
39         },{     /* 2 */
40                 .vendor         = PCI_VENDOR_ID_HOLTEK,
41                 .device         = PCI_DEVICE_ID_HOLTEK_6565,
42                 .name           = "HT6565",
43                 .init_chipset   = init_chipset_generic,
44                 .init_iops      = NULL,
45                 .init_hwif      = init_hwif_generic,
46                 .init_dma       = init_dma_generic,
47                 .channels       = 2,
48                 .autodma        = AUTODMA,
49                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
50                 .bootable       = ON_BOARD,
51                 .extra          = 0,
52         },{     /* 3 */
53                 .vendor         = PCI_VENDOR_ID_UMC,
54                 .device         = PCI_DEVICE_ID_UMC_UM8673F,
55                 .name           = "UM8673F",
56                 .init_chipset   = init_chipset_generic,
57                 .init_iops      = NULL,
58                 .init_hwif      = init_hwif_generic,
59                 .init_dma       = init_dma_generic,
60                 .channels       = 2,
61                 .autodma        = NODMA,
62                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
63                 .bootable       = ON_BOARD,
64                 .extra          = 0,
65         },{     /* 4 */
66                 .vendor         = PCI_VENDOR_ID_UMC,
67                 .device         = PCI_DEVICE_ID_UMC_UM8886A,
68                 .name           = "UM8886A",
69                 .init_chipset   = init_chipset_generic,
70                 .init_iops      = NULL,
71                 .init_hwif      = init_hwif_generic,
72                 .init_dma       = init_dma_generic,
73                 .channels       = 2,
74                 .autodma        = NODMA,
75                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
76                 .bootable       = ON_BOARD,
77                 .extra          = 0,
78         },{     /* 5 */
79                 .vendor         = PCI_VENDOR_ID_UMC,
80                 .device         = PCI_DEVICE_ID_UMC_UM8886BF,
81                 .name           = "UM8886BF",
82                 .init_chipset   = init_chipset_generic,
83                 .init_iops      = NULL,
84                 .init_hwif      = init_hwif_generic,
85                 .init_dma       = init_dma_generic,
86                 .channels       = 2,
87                 .autodma        = NODMA,
88                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
89                 .bootable       = ON_BOARD,
90                 .extra          = 0,
91         },{     /* 6 */
92                 .vendor         = PCI_VENDOR_ID_HINT,
93                 .device         = PCI_DEVICE_ID_HINT_VXPROII_IDE,
94                 .name           = "HINT_IDE",
95                 .init_chipset   = init_chipset_generic,
96                 .init_iops      = NULL,
97                 .init_hwif      = init_hwif_generic,
98                 .init_dma       = init_dma_generic,
99                 .channels       = 2,
100                 .autodma        = AUTODMA,
101                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
102                 .bootable       = ON_BOARD,
103                 .extra          = 0,
104         },{     /* 7 */
105                 .vendor         = PCI_VENDOR_ID_VIA,
106                 .device         = PCI_DEVICE_ID_VIA_82C561,
107                 .name           = "VIA_IDE",
108                 .init_chipset   = init_chipset_generic,
109                 .init_iops      = NULL,
110                 .init_hwif      = init_hwif_generic,
111                 .init_dma       = init_dma_generic,
112                 .channels       = 2,
113                 .autodma        = NOAUTODMA,
114                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
115                 .bootable       = ON_BOARD,
116                 .extra          = 0,
117         },{     /* 8 */
118                 .vendor         = PCI_VENDOR_ID_OPTI,
119                 .device         = PCI_DEVICE_ID_OPTI_82C558,
120                 .name           = "OPTI621V",
121                 .init_chipset   = init_chipset_generic,
122                 .init_iops      = NULL,
123                 .init_hwif      = init_hwif_generic,
124                 .init_dma       = init_dma_generic,
125                 .channels       = 2,
126                 .autodma        = NOAUTODMA,
127                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
128                 .bootable       = ON_BOARD,
129                 .extra          = 0,
130         },{     /* 9 */
131                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
132                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO,
133                 .name           = "Piccolo0102",
134                 .init_chipset   = init_chipset_generic,
135                 .init_hwif      = init_hwif_generic,
136                 .init_dma       = init_dma_generic,
137                 .channels       = 2,
138                 .autodma        = NOAUTODMA,
139                 .bootable       = ON_BOARD,
140         },{     /* 10 */
141                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
142                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO_1,
143                 .name           = "Piccolo0103",
144                 .init_chipset   = init_chipset_generic,
145                 .init_hwif      = init_hwif_generic,
146                 .init_dma       = init_dma_generic,
147                 .channels       = 2,
148                 .autodma        = NOAUTODMA,
149                 .bootable       = ON_BOARD,
150         },{     /* 11 */
151                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
152                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO_2,
153                 .name           = "Piccolo0105",
154                 .init_chipset   = init_chipset_generic,
155                 .init_hwif      = init_hwif_generic,
156                 .init_dma       = init_dma_generic,
157                 .channels       = 2,
158                 .autodma        = NOAUTODMA,
159                 .bootable       = ON_BOARD,
160         },{
161                 .vendor         = 0,
162                 .device         = 0,
163                 .channels       = 0,
164                 .bootable       = EOL,
165         }
166 };
167
168 #if 0
169 static ide_pci_device_t unknown_chipset[] __devinitdata = {
170         {       /* 0 */
171                 .vendor         = 0,
172                 .device         = 0,
173                 .name           = "PCI_IDE",
174                 .init_chipset   = init_chipset_generic,
175                 .init_iops      = NULL,
176                 .init_hwif      = init_hwif_generic,
177                 .init_dma       = init_dma_generic,
178                 .channels       = 2,
179                 .autodma        = AUTODMA,
180                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
181                 .bootable       = ON_BOARD,
182                 .extra          = 0,
183         },{
184                 .vendor         = 0,
185                 .device         = 0,
186                 .channels       = 0,
187                 .bootable       = EOL,
188         }
189
190 };
191 #endif
192
193 #endif /* IDE_GENERIC_H */