pata_sis: FIFO whack
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 25 May 2007 19:50:24 +0000 (20:50 +0100)
committerJeff Garzik <jeff@garzik.org>
Wed, 11 Jul 2007 01:14:19 +0000 (21:14 -0400)
If you are using a SiS controller and the BIOS didn't set it up then the
FIFO may be left active when we try and set up the CD. Not convinced this
matters but I'd prefer to be safe

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/pata_sis.c

index 2b4508206a6cd3753344405ff5c131e9a75abbea..657b1ee2f5c13a5e251f4bd18b2f9a274d4a4051 100644 (file)
@@ -149,6 +149,9 @@ static int sis_pre_reset(struct ata_port *ap, unsigned long deadline)
        if (!pci_test_config_bits(pdev, &sis_enable_bits[ap->port_no]))
                return -ENOENT;
 
+       /* Clear the FIFO settings. We can't enable the FIFO until
+          we know we are poking at a disk */
+       pci_write_config_byte(pdev, 0x4B, 0);
        return ata_std_prereset(ap, deadline);
 }