diff options
Diffstat (limited to 'openvz-sources/022.050/5113_linux-2.6.9-ide-csb6-raid.patch')
-rw-r--r-- | openvz-sources/022.050/5113_linux-2.6.9-ide-csb6-raid.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/openvz-sources/022.050/5113_linux-2.6.9-ide-csb6-raid.patch b/openvz-sources/022.050/5113_linux-2.6.9-ide-csb6-raid.patch new file mode 100644 index 0000000..5569627 --- /dev/null +++ b/openvz-sources/022.050/5113_linux-2.6.9-ide-csb6-raid.patch @@ -0,0 +1,65 @@ +--- ./drivers/ide/pci/serverworks.c.SVRWKS 2005-09-26 13:33:23.000000000 +0400 ++++ ./drivers/ide/pci/serverworks.c 2005-10-26 12:29:00.208191552 +0400 +@@ -539,11 +539,9 @@ static unsigned int __init init_chipset_ + else if ((dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB5IDE) || + (dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB6IDE) || + (dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB6IDE2)) { +-// u32 pioreg = 0, dmareg = 0; + + /* Third Channel Test */ + if (!(PCI_FUNC(dev->devfn) & 1)) { +-#if 1 + struct pci_dev * findev = NULL; + u32 reg4c = 0; + findev = pci_find_device(PCI_VENDOR_ID_SERVERWORKS, +@@ -555,19 +553,11 @@ static unsigned int __init init_chipset_ + reg4c |= 0x00000020; + pci_write_config_dword(findev, 0x4C, reg4c); + } +-#endif + outb_p(0x06, 0x0c00); + dev->irq = inb_p(0x0c01); + #if 0 +- /* WE need to figure out how to get the correct one */ +- printk("%s: interrupt %d\n", name, dev->irq); +- if (dev->irq != 0x0B) +- dev->irq = 0x0B; +-#endif +-#if 0 + printk("%s: device class (0x%04x)\n", + name, dev->class); +-#else + if ((dev->class >> 8) != PCI_CLASS_STORAGE_IDE) { + dev->class &= ~0x000F0F00; + // dev->class |= ~0x00000400; +@@ -593,7 +583,8 @@ static unsigned int __init init_chipset_ + * interrupt pin to be set, and it is a compatibility + * mode issue. + */ +- dev->irq = 0; ++ if ((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) ++ dev->irq = 0; + } + // pci_read_config_dword(dev, 0x40, &pioreg) + // pci_write_config_dword(dev, 0x40, 0x99999999); +@@ -767,9 +758,6 @@ static void __init init_setup_csb6 (stru + d->bootable = NEVER_BOARD; + if (dev->resource[0].start == 0x01f1) + d->bootable = ON_BOARD; +- } else { +- if ((dev->class >> 8) != PCI_CLASS_STORAGE_IDE) +- return; + } + #if 0 + if ((IDE_PCI_DEVID_EQ(d->devid, DEVID_CSB6) && +@@ -815,10 +803,6 @@ static struct pci_driver driver = { + .name = "Serverworks IDE", + .id_table = svwks_pci_tbl, + .probe = svwks_init_one, +-#if 0 /* FIXME: implement */ +- .suspend = , +- .resume = , +-#endif + }; + + static int svwks_ide_init(void) |