libata pata_via: ACPI checks for 80wire cable
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Thu, 26 Jul 2007 17:38:06 +0000 (18:38 +0100)
committerJeff Garzik <jeff@garzik.org>
Fri, 12 Oct 2007 18:55:34 +0000 (14:55 -0400)
Testing this on the VIA boards fixes several problems with otherwise
undetectable SATA bridge chips

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

index 4ddcae8b8c962bb53b6007181991814d3b967fdc..f11b87e18aaed8ae017d220b9be8435c414d5162 100644 (file)
@@ -184,6 +184,9 @@ static int via_cable_detect(struct ata_port *ap) {
           two drives */
        if (ata66 & (0x10100000 >> (16 * ap->port_no)))
                return ATA_CBL_PATA80;
+       /* Check with ACPI so we can spot BIOS reported SATA bridges */
+       if (ata_acpi_cbl_80wire(ap))
+               return ATA_CBL_PATA80;
        return ATA_CBL_PATA40;
 }