initial commit with v2.6.9
[linux-2.6.9-moxart.git] / drivers / ide / pci / serverworks.h
blobaa8bd8b9d2974dfa963cd4a5fcd7c303a2ae9e7e
2 #ifndef SERVERWORKS_H
3 #define SERVERWORKS_H
5 #include <linux/config.h>
6 #include <linux/pci.h>
7 #include <linux/ide.h>
9 #undef SVWKS_DEBUG_DRIVE_INFO
11 #define SVWKS_CSB5_REVISION_NEW 0x92 /* min PCI_REVISION_ID for UDMA5 (A2.0) */
12 #define SVWKS_CSB6_REVISION 0xa0 /* min PCI_REVISION_ID for UDMA4 (A1.0) */
14 /* Seagate Barracuda ATA IV Family drives in UDMA mode 5
15 * can overrun their FIFOs when used with the CSB5 */
16 const char *svwks_bad_ata100[] = {
17 "ST320011A",
18 "ST340016A",
19 "ST360021A",
20 "ST380021A",
21 NULL
24 #define DISPLAY_SVWKS_TIMINGS 1
26 static void init_setup_svwks(struct pci_dev *, ide_pci_device_t *);
27 static void init_setup_csb6(struct pci_dev *, ide_pci_device_t *);
28 static unsigned int init_chipset_svwks(struct pci_dev *, const char *);
29 static void init_hwif_svwks(ide_hwif_t *);
30 static void init_dma_svwks(ide_hwif_t *, unsigned long);
32 static ide_pci_device_t serverworks_chipsets[] __devinitdata = {
33 { /* 0 */
34 .name = "SvrWks OSB4",
35 .init_setup = init_setup_svwks,
36 .init_chipset = init_chipset_svwks,
37 .init_hwif = init_hwif_svwks,
38 .channels = 2,
39 .autodma = AUTODMA,
40 .bootable = ON_BOARD,
41 },{ /* 1 */
42 .name = "SvrWks CSB5",
43 .init_setup = init_setup_svwks,
44 .init_chipset = init_chipset_svwks,
45 .init_hwif = init_hwif_svwks,
46 .init_dma = init_dma_svwks,
47 .channels = 2,
48 .autodma = AUTODMA,
49 .bootable = ON_BOARD,
50 },{ /* 2 */
51 .name = "SvrWks CSB6",
52 .init_setup = init_setup_csb6,
53 .init_chipset = init_chipset_svwks,
54 .init_hwif = init_hwif_svwks,
55 .init_dma = init_dma_svwks,
56 .channels = 2,
57 .autodma = AUTODMA,
58 .bootable = ON_BOARD,
59 },{ /* 3 */
60 .name = "SvrWks CSB6",
61 .init_setup = init_setup_csb6,
62 .init_chipset = init_chipset_svwks,
63 .init_hwif = init_hwif_svwks,
64 .init_dma = init_dma_svwks,
65 .channels = 1, /* 2 */
66 .autodma = AUTODMA,
67 .bootable = ON_BOARD,
71 #endif /* SERVERWORKS_H */