kernel.org 2.6.11.11
[linux-2.6.git] / drivers / ide / pci / piix.h
1 #ifndef PIIX_H
2 #define PIIX_H
3
4 #include <linux/config.h>
5 #include <linux/pci.h>
6 #include <linux/ide.h>
7
8 static void init_setup_piix(struct pci_dev *, ide_pci_device_t *);
9 static unsigned int __devinit init_chipset_piix(struct pci_dev *, const char *);
10 static void init_hwif_piix(ide_hwif_t *);
11
12 #define DECLARE_PIIX_DEV(name_str) \
13         {                                               \
14                 .name           = name_str,             \
15                 .init_setup     = init_setup_piix,      \
16                 .init_chipset   = init_chipset_piix,    \
17                 .init_hwif      = init_hwif_piix,       \
18                 .channels       = 2,                    \
19                 .autodma        = AUTODMA,              \
20                 .enablebits     = {{0x41,0x80,0x80}, {0x43,0x80,0x80}}, \
21                 .bootable       = ON_BOARD,             \
22         }
23
24 /*
25  *      Table of the various PIIX capability blocks
26  *
27  */
28  
29 static ide_pci_device_t piix_pci_info[] __devinitdata = {
30         /*  0 */ DECLARE_PIIX_DEV("PIIXa"),
31         /*  1 */ DECLARE_PIIX_DEV("PIIXb"),
32
33         {       /* 2 */
34                 .name           = "MPIIX",
35                 .init_setup     = init_setup_piix,
36                 .init_hwif      = init_hwif_piix,
37                 .channels       = 2,
38                 .autodma        = NODMA,
39                 .enablebits     = {{0x6D,0x80,0x80}, {0x6F,0x80,0x80}},
40                 .bootable       = ON_BOARD,
41         },
42
43         /*  3 */ DECLARE_PIIX_DEV("PIIX3"),
44         /*  4 */ DECLARE_PIIX_DEV("PIIX4"),
45         /*  5 */ DECLARE_PIIX_DEV("ICH0"),
46         /*  6 */ DECLARE_PIIX_DEV("PIIX4"),
47         /*  7 */ DECLARE_PIIX_DEV("ICH"),
48         /*  8 */ DECLARE_PIIX_DEV("PIIX4"),
49         /*  9 */ DECLARE_PIIX_DEV("PIIX4"),
50         /* 10 */ DECLARE_PIIX_DEV("ICH2"),
51         /* 11 */ DECLARE_PIIX_DEV("ICH2M"),
52         /* 12 */ DECLARE_PIIX_DEV("ICH3M"),
53         /* 13 */ DECLARE_PIIX_DEV("ICH3"),
54         /* 14 */ DECLARE_PIIX_DEV("ICH4"),
55         /* 15 */ DECLARE_PIIX_DEV("ICH5"),
56         /* 16 */ DECLARE_PIIX_DEV("C-ICH"),
57         /* 17 */ DECLARE_PIIX_DEV("ICH4"),
58         /* 18 */ DECLARE_PIIX_DEV("ICH5-SATA"),
59         /* 19 */ DECLARE_PIIX_DEV("ICH5"),
60         /* 20 */ DECLARE_PIIX_DEV("ICH6")
61 };
62
63 #endif /* PIIX_H */