fdaaf211339b9c0fb3a5d489cc406629850beae9
[linux-2.6.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
11 static ide_pci_device_t generic_chipsets[] __devinitdata = {
12         {       /* 0 */
13                 .vendor         = PCI_VENDOR_ID_NS,
14                 .device         = PCI_DEVICE_ID_NS_87410,
15                 .name           = "NS87410",
16                 .init_chipset   = init_chipset_generic,
17                 .init_hwif      = init_hwif_generic,
18                 .channels       = 2,
19                 .autodma        = AUTODMA,
20                 .enablebits     = {{0x43,0x08,0x08}, {0x47,0x08,0x08}},
21                 .bootable       = ON_BOARD,
22         },{     /* 1 */
23                 .vendor         = PCI_VENDOR_ID_PCTECH,
24                 .device         = PCI_DEVICE_ID_PCTECH_SAMURAI_IDE,
25                 .name           = "SAMURAI",
26                 .init_chipset   = init_chipset_generic,
27                 .init_hwif      = init_hwif_generic,
28                 .channels       = 2,
29                 .autodma        = AUTODMA,
30                 .bootable       = ON_BOARD,
31         },{     /* 2 */
32                 .vendor         = PCI_VENDOR_ID_HOLTEK,
33                 .device         = PCI_DEVICE_ID_HOLTEK_6565,
34                 .name           = "HT6565",
35                 .init_chipset   = init_chipset_generic,
36                 .init_hwif      = init_hwif_generic,
37                 .channels       = 2,
38                 .autodma        = AUTODMA,
39                 .bootable       = ON_BOARD,
40         },{     /* 3 */
41                 .vendor         = PCI_VENDOR_ID_UMC,
42                 .device         = PCI_DEVICE_ID_UMC_UM8673F,
43                 .name           = "UM8673F",
44                 .init_chipset   = init_chipset_generic,
45                 .init_hwif      = init_hwif_generic,
46                 .channels       = 2,
47                 .autodma        = NODMA,
48                 .bootable       = ON_BOARD,
49         },{     /* 4 */
50                 .vendor         = PCI_VENDOR_ID_UMC,
51                 .device         = PCI_DEVICE_ID_UMC_UM8886A,
52                 .name           = "UM8886A",
53                 .init_chipset   = init_chipset_generic,
54                 .init_hwif      = init_hwif_generic,
55                 .channels       = 2,
56                 .autodma        = NODMA,
57                 .bootable       = ON_BOARD,
58         },{     /* 5 */
59                 .vendor         = PCI_VENDOR_ID_UMC,
60                 .device         = PCI_DEVICE_ID_UMC_UM8886BF,
61                 .name           = "UM8886BF",
62                 .init_chipset   = init_chipset_generic,
63                 .init_hwif      = init_hwif_generic,
64                 .channels       = 2,
65                 .autodma        = NODMA,
66                 .bootable       = ON_BOARD,
67         },{     /* 6 */
68                 .vendor         = PCI_VENDOR_ID_HINT,
69                 .device         = PCI_DEVICE_ID_HINT_VXPROII_IDE,
70                 .name           = "HINT_IDE",
71                 .init_chipset   = init_chipset_generic,
72                 .init_hwif      = init_hwif_generic,
73                 .channels       = 2,
74                 .autodma        = AUTODMA,
75                 .bootable       = ON_BOARD,
76         },{     /* 7 */
77                 .vendor         = PCI_VENDOR_ID_VIA,
78                 .device         = PCI_DEVICE_ID_VIA_82C561,
79                 .name           = "VIA_IDE",
80                 .init_chipset   = init_chipset_generic,
81                 .init_hwif      = init_hwif_generic,
82                 .channels       = 2,
83                 .autodma        = NOAUTODMA,
84                 .bootable       = ON_BOARD,
85         },{     /* 8 */
86                 .vendor         = PCI_VENDOR_ID_OPTI,
87                 .device         = PCI_DEVICE_ID_OPTI_82C558,
88                 .name           = "OPTI621V",
89                 .init_chipset   = init_chipset_generic,
90                 .init_hwif      = init_hwif_generic,
91                 .channels       = 2,
92                 .autodma        = NOAUTODMA,
93                 .bootable       = ON_BOARD,
94         },{     /* 9 */
95                 .vendor         = PCI_VENDOR_ID_VIA,
96                 .device         = PCI_DEVICE_ID_VIA_8237_SATA,
97                 .name           = "VIA8237SATA",
98                 .init_chipset   = init_chipset_generic,
99                 .init_hwif      = init_hwif_generic,
100                 .channels       = 2,
101                 .autodma        = AUTODMA,
102                 .bootable       = OFF_BOARD,
103         },{ /* 10 */
104                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
105                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO,
106                 .name           = "Piccolo0102",
107                 .init_chipset   = init_chipset_generic,
108                 .init_hwif      = init_hwif_generic,
109                 .channels       = 2,
110                 .autodma        = NOAUTODMA,
111                 .bootable       = ON_BOARD,
112         },{ /* 11 */
113                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
114                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO_1,
115                 .name           = "Piccolo0103",
116                 .init_chipset   = init_chipset_generic,
117                 .init_hwif      = init_hwif_generic,
118                 .channels       = 2,
119                 .autodma        = NOAUTODMA,
120                 .bootable       = ON_BOARD,
121         },{ /* 12 */
122                 .vendor         = PCI_VENDOR_ID_TOSHIBA,
123                 .device         = PCI_DEVICE_ID_TOSHIBA_PICCOLO_2,
124                 .name           = "Piccolo0105",
125                 .init_chipset   = init_chipset_generic,
126                 .init_hwif      = init_hwif_generic,
127                 .channels       = 2,
128                 .autodma        = NOAUTODMA,
129                 .bootable       = ON_BOARD,
130         }
131 };
132
133 #if 0
134 static ide_pci_device_t unknown_chipset[] __devinitdata = {
135         {       /* 0 */
136                 .vendor         = 0,
137                 .device         = 0,
138                 .name           = "PCI_IDE",
139                 .init_chipset   = init_chipset_generic,
140                 .init_hwif      = init_hwif_generic,
141                 .channels       = 2,
142                 .autodma        = AUTODMA,
143                 .bootable       = ON_BOARD,
144         }
145 };
146 #endif
147
148 #endif /* IDE_GENERIC_H */