[PATCH] via82cxxx: add VIA VT6410 IDE support
From: Mathias Kretschmer <posting@blx4.net> Signed-off-by: Daniel Drake <dsd@gentoo.org> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
Родитель
b286e39207
Коммит
4f1d774aad
|
@ -79,6 +79,7 @@ static struct via_isa_bridge {
|
||||||
u8 rev_max;
|
u8 rev_max;
|
||||||
u16 flags;
|
u16 flags;
|
||||||
} via_isa_bridges[] = {
|
} via_isa_bridges[] = {
|
||||||
|
{ "vt6410", PCI_DEVICE_ID_VIA_6410, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
||||||
{ "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
{ "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
||||||
{ "vt8235", PCI_DEVICE_ID_VIA_8235, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
{ "vt8235", PCI_DEVICE_ID_VIA_8235, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
||||||
{ "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
{ "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
|
||||||
|
@ -467,24 +468,35 @@ static void __devinit init_hwif_via82cxxx(ide_hwif_t *hwif)
|
||||||
hwif->drives[1].autodma = hwif->autodma;
|
hwif->drives[1].autodma = hwif->autodma;
|
||||||
}
|
}
|
||||||
|
|
||||||
static ide_pci_device_t via82cxxx_chipset __devinitdata = {
|
static ide_pci_device_t via82cxxx_chipsets[] __devinitdata = {
|
||||||
.name = "VP_IDE",
|
{ /* 0 */
|
||||||
.init_chipset = init_chipset_via82cxxx,
|
.name = "VP_IDE",
|
||||||
.init_hwif = init_hwif_via82cxxx,
|
.init_chipset = init_chipset_via82cxxx,
|
||||||
.channels = 2,
|
.init_hwif = init_hwif_via82cxxx,
|
||||||
.autodma = NOAUTODMA,
|
.channels = 2,
|
||||||
.enablebits = {{0x40,0x02,0x02}, {0x40,0x01,0x01}},
|
.autodma = NOAUTODMA,
|
||||||
.bootable = ON_BOARD,
|
.enablebits = {{0x40,0x02,0x02}, {0x40,0x01,0x01}},
|
||||||
|
.bootable = ON_BOARD
|
||||||
|
},{ /* 1 */
|
||||||
|
.name = "VP_IDE",
|
||||||
|
.init_chipset = init_chipset_via82cxxx,
|
||||||
|
.init_hwif = init_hwif_via82cxxx,
|
||||||
|
.channels = 2,
|
||||||
|
.autodma = AUTODMA,
|
||||||
|
.enablebits = {{0x00,0x00,0x00}, {0x00,0x00,0x00}},
|
||||||
|
.bootable = ON_BOARD,
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __devinit via_init_one(struct pci_dev *dev, const struct pci_device_id *id)
|
static int __devinit via_init_one(struct pci_dev *dev, const struct pci_device_id *id)
|
||||||
{
|
{
|
||||||
return ide_setup_pci_device(dev, &via82cxxx_chipset);
|
return ide_setup_pci_device(dev, &via82cxxx_chipsets[id->driver_data]);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct pci_device_id via_pci_tbl[] = {
|
static struct pci_device_id via_pci_tbl[] = {
|
||||||
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
|
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
|
||||||
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
|
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
|
||||||
|
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_6410, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1},
|
||||||
{ 0, },
|
{ 0, },
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(pci, via_pci_tbl);
|
MODULE_DEVICE_TABLE(pci, via_pci_tbl);
|
||||||
|
|
|
@ -1234,6 +1234,7 @@
|
||||||
#define PCI_DEVICE_ID_VIA_8703_51_0 0x3148
|
#define PCI_DEVICE_ID_VIA_8703_51_0 0x3148
|
||||||
#define PCI_DEVICE_ID_VIA_8237_SATA 0x3149
|
#define PCI_DEVICE_ID_VIA_8237_SATA 0x3149
|
||||||
#define PCI_DEVICE_ID_VIA_XN266 0x3156
|
#define PCI_DEVICE_ID_VIA_XN266 0x3156
|
||||||
|
#define PCI_DEVICE_ID_VIA_6410 0x3164
|
||||||
#define PCI_DEVICE_ID_VIA_8754C_0 0x3168
|
#define PCI_DEVICE_ID_VIA_8754C_0 0x3168
|
||||||
#define PCI_DEVICE_ID_VIA_8235 0x3177
|
#define PCI_DEVICE_ID_VIA_8235 0x3177
|
||||||
#define PCI_DEVICE_ID_VIA_8385_0 0x3188
|
#define PCI_DEVICE_ID_VIA_8385_0 0x3188
|
||||||
|
|
Загрузка…
Ссылка в новой задаче