From: Prarit Bhargava <prarit@redhat.com> Date: Fri, 30 Jul 2010 15:30:34 -0400 Subject: [ide]: atiixp: no pio autotune on AMD Hudson2 Message-id: <20100730153034.3362.17554.sendpatchset@prarit.bos.redhat.com> Patchwork-id: 27257 O-Subject: [RHEL5 BZ 618075 PATCH]: Do not autotune PIO on AMD Hudson2 IDE controller Bugzilla: 618075 RH-Acked-by: Jarod Wilson <jarod@redhat.com> Do not autotune PIO on systems with the AMD Hudson2 IDE device. Admittedly, this is a hack. The correct thing to do is backport some of the upstream commits that merged the autotune code into ide_pci_setup_ports(), however, I feel that is too big of a change for this stage of RHEL5. If any other devices are found with this problem I'll reconsider backporting or maybe just implement a blacklist. Successfully compiled by me. No HW available to test on. Resolves BZ 618075. P. Signed-off-by: Jarod Wilson <jarod@redhat.com> diff --git a/drivers/ide/pci/atiixp.c b/drivers/ide/pci/atiixp.c index 09817ce..003a6e3 100644 --- a/drivers/ide/pci/atiixp.c +++ b/drivers/ide/pci/atiixp.c @@ -299,8 +299,15 @@ static void __devinit init_hwif_atiixp(ide_hwif_t *hwif) hwif->autodma = 0; hwif->tuneproc = &atiixp_tuneproc; hwif->speedproc = &atiixp_speedproc; - hwif->drives[0].autotune = 1; - hwif->drives[1].autotune = 1; + + if (pdev->vendor == PCI_VENDOR_ID_AMD && + pdev->device == PCI_DEVICE_ID_AMD_HUDSON2_IDE) { + hwif->drives[0].autotune = 0; + hwif->drives[1].autotune = 0; + } else { + hwif->drives[0].autotune = 1; + hwif->drives[1].autotune = 1; + } if (!hwif->dma_base) return;