OSDN Git Service

[PATCH] IDE: enable support for JMicron 20363
[linux-kernel-docs/linux-2.4.36.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         },{     /* 12 */
161                 .vendor         = PCI_VENDOR_ID_JMICRON,
162                 .device         = PCI_DEVICE_ID_JMICRON_20363,
163                 .name           = "JMICRON_20363",
164                 .init_chipset   = init_chipset_generic,
165                 .init_hwif      = init_hwif_generic,
166                 .init_dma       = init_dma_generic,
167                 .channels       = 1,
168                 .autodma        = NOAUTODMA,
169                 .bootable       = ON_BOARD,
170         },{
171                 .vendor         = 0,
172                 .device         = 0,
173                 .channels       = 0,
174                 .bootable       = EOL,
175         }
176 };
177
178 #if 0
179 static ide_pci_device_t unknown_chipset[] __devinitdata = {
180         {       /* 0 */
181                 .vendor         = 0,
182                 .device         = 0,
183                 .name           = "PCI_IDE",
184                 .init_chipset   = init_chipset_generic,
185                 .init_iops      = NULL,
186                 .init_hwif      = init_hwif_generic,
187                 .init_dma       = init_dma_generic,
188                 .channels       = 2,
189                 .autodma        = AUTODMA,
190                 .enablebits     = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
191                 .bootable       = ON_BOARD,
192                 .extra          = 0,
193         },{
194                 .vendor         = 0,
195                 .device         = 0,
196                 .channels       = 0,
197                 .bootable       = EOL,
198         }
199
200 };
201 #endif
202
203 #endif /* IDE_GENERIC_H */