diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-09-11 16:28:37 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-09-11 16:28:37 -0400 |
commit | 58e47bb1767aa89bfa9cf7ecf4bc051886ae22b3 (patch) | |
tree | 63d0c3162e788e38370067f9ea9bc92f9b48e818 /drivers/ide/pci/via82cxxx.c | |
parent | 6c28c1f59dce3325d373f44766e23eb4237a74c8 (diff) |
via82cxxx: add Arima W730-K8 and other rebadgings to short cables list
Port of Alan's patch for pata_via.c.
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/via82cxxx.c')
-rw-r--r-- | drivers/ide/pci/via82cxxx.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/ide/pci/via82cxxx.c b/drivers/ide/pci/via82cxxx.c index 8c539381d622..a7be7795e6af 100644 --- a/drivers/ide/pci/via82cxxx.c +++ b/drivers/ide/pci/via82cxxx.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * | 2 | * |
3 | * Version 3.46 | 3 | * Version 3.47 |
4 | * | 4 | * |
5 | * VIA IDE driver for Linux. Supported southbridges: | 5 | * VIA IDE driver for Linux. Supported southbridges: |
6 | * | 6 | * |
@@ -430,19 +430,26 @@ static struct dmi_system_id cable_dmi_table[] = { | |||
430 | { } | 430 | { } |
431 | }; | 431 | }; |
432 | 432 | ||
433 | static int via_cable_override(void) | 433 | static int via_cable_override(struct pci_dev *pdev) |
434 | { | 434 | { |
435 | /* Systems by DMI */ | 435 | /* Systems by DMI */ |
436 | if (dmi_check_system(cable_dmi_table)) | 436 | if (dmi_check_system(cable_dmi_table)) |
437 | return 1; | 437 | return 1; |
438 | |||
439 | /* Arima W730-K8/Targa Visionary 811/... */ | ||
440 | if (pdev->subsystem_vendor == 0x161F && | ||
441 | pdev->subsystem_device == 0x2032) | ||
442 | return 1; | ||
443 | |||
438 | return 0; | 444 | return 0; |
439 | } | 445 | } |
440 | 446 | ||
441 | static u8 __devinit via82cxxx_cable_detect(ide_hwif_t *hwif) | 447 | static u8 __devinit via82cxxx_cable_detect(ide_hwif_t *hwif) |
442 | { | 448 | { |
443 | struct via82cxxx_dev *vdev = pci_get_drvdata(hwif->pci_dev); | 449 | struct pci_dev *pdev = hwif->pci_dev; |
450 | struct via82cxxx_dev *vdev = pci_get_drvdata(pdev); | ||
444 | 451 | ||
445 | if (via_cable_override()) | 452 | if (via_cable_override(pdev)) |
446 | return ATA_CBL_PATA40_SHORT; | 453 | return ATA_CBL_PATA40_SHORT; |
447 | 454 | ||
448 | if ((vdev->via_80w >> hwif->channel) & 1) | 455 | if ((vdev->via_80w >> hwif->channel) & 1) |