[PATCH -mm] jmicron: 40/80pin primary detection

From: ethanhsiao
Date: Mon Jan 29 2007 - 23:11:45 EST



Patch is against 2.6.20-rc6-mm2, jmicron module detects all JMB36x as JMB361 and PATA0 has wrong pin status of XICBLID.

--- a/drivers/ide/pci/jmicron.c 2007-01-30 10:08:35.000000000 +0800
+++ b/drivers/ide/pci/jmicron.c 2007-01-30 10:11:31.000000000 +0800
@@ -70,8 +70,8 @@
{
case PORT_PATA0:
if (control & (1 << 3)) /* 40/80 pin primary */
- return 1;
- return 0;
+ return 0;
+ return 1;
case PORT_PATA1:
if (control5 & (1 << 19)) /* 40/80 pin secondary */
return 0;
@@ -205,11 +205,11 @@
}

static struct pci_device_id jmicron_pci_tbl[] = {
- { PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB361), 0},
- { PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB363), 1},
- { PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB365), 2},
- { PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB366), 3},
- { PCI_DEVICE(PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB368), 4},
+ { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB363, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1},
+ { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB365, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2},
+ { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB366, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 3},
+ { PCI_VENDOR_ID_JMICRON, PCI_DEVICE_ID_JMICRON_JMB368, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 4},
{ 0, },
};

Best Regards,
Ethan Hsiao
æåçæèäæéåå ( JMicron Technology )
æççååæååæççåæäè13è1F
1F,No. 13, Innovation Road 1, Science-Based Industrial Park,
Hsinchu, Taiwan.
Tel : 886-3-579-7389 # 8729
Fax : 886-3-579-9566

Attachment: jmicron.c.patch
Description: Binary data