ide/pci/serverworks.c: Fix corruption/timeouts with MegaIDE
authorAlan Cox <alan@redhat.com>
Thu, 24 May 2007 00:42:38 +0000 (02:42 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Thu, 24 May 2007 00:42:38 +0000 (02:42 +0200)
commit2074a106f52b6371885afbd714e929d60d0e3f64
treec78ced4709e39ac98b19477e3e854e82f9922aeb
parent6c6a2a8d201b4f8fd54167802da5ddbe08abd744
ide/pci/serverworks.c: Fix corruption/timeouts with MegaIDE

It turns out from customer reports to Red Hat and some PCI dumps that the
MegaIDE in RAID mode doesn't provide the drive tuning data that the
serverworks driver expects but sometimes does provide something that
fools the code.

For the RAID class case skip the oem setup and don't trust the BIOS data.
We then tune from scratch and this sorts it out. (This has been confirmed
on an afflicted IBM blade)

[libata serverworks.c never trusts the BIOS in the first place so is
accidentally immune]

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/pci/serverworks.c