Re: via 6420 pata/sata controller

From: kern.petr@xxxxxxxxx
Date: Fri Mar 04 2005 - 09:12:21 EST


I downloaded new kernel 2.6.11, applied your's via82cxxx.c patch and compiled it (.config was derived "make oldconfig" from 2.6.8 kernel from Debian Sarge 3.1).

I created initrd.img with this settings:
/etc/mkinitrd/mkinitrd.conf
--- cut here ---
MODULES=dep
--- cut here ---

/etc/mkinitrd/modules
###
jbd
ext3
ide-core
via82cxxx

I boot PC with this settings:
/etc/modules
###
ide-cd
via82cxxx

Results:
Everything is the same, dmesg, lspci, lspci -n, cat /proc/ioports, lsmod as the last email.

Controller still don't working :'(.

PS: I don't add anything into pci_ids.h, I only applied your's via82cxxx.c patch:
#define PCI_DEVICE_ID_VIA_6420 0x4149

Your's Sincerely
Petr Novák
kern.petr@xxxxxxxxx

Jeff Garzik napsal(a):

If I had to guess, I would try the attached patch. The via82cxxx.c driver is a bit annoying in that, here we do not talk to the ISA bridge but to the PCI device 0x4149 itself.

If this doesn't work, I could probably whip together a quick PATA driver for libata that works on this hardware.

Jeff

------------------------------------------------------------------------

===== drivers/ide/pci/via82cxxx.c 1.27 vs edited =====
--- 1.27/drivers/ide/pci/via82cxxx.c 2005-02-03 02:24:29 -05:00
+++ edited/drivers/ide/pci/via82cxxx.c 2005-03-02 01:28:26 -05:00
@@ -79,6 +79,7 @@
u8 rev_max;
u16 flags;
} via_isa_bridges[] = {
+ { "vt6420", 0x4149, 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 },
{ "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST },
@@ -635,9 +636,10 @@
}

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_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
- { 0, },
+ { PCI_DEVICE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1) },
+ { PCI_DEVICE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1) },
+ { PCI_DEVICE(PCI_VENDOR_ID_VIA, 0x4149) },
+ { }, /* terminate list */
};
MODULE_DEVICE_TABLE(pci, via_pci_tbl);



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/