Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 58e47bb1 authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz
Browse files

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: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
parent 6c28c1f5
Loading
Loading
Loading
Loading
+11 −4
Original line number Original line Diff line number Diff line
/*
/*
 *
 *
 * Version 3.46
 * Version 3.47
 *
 *
 * VIA IDE driver for Linux. Supported southbridges:
 * VIA IDE driver for Linux. Supported southbridges:
 *
 *
@@ -430,19 +430,26 @@ static struct dmi_system_id cable_dmi_table[] = {
	{ }
	{ }
};
};


static int via_cable_override(void)
static int via_cable_override(struct pci_dev *pdev)
{
{
	/* Systems by DMI */
	/* Systems by DMI */
	if (dmi_check_system(cable_dmi_table))
	if (dmi_check_system(cable_dmi_table))
		return 1;
		return 1;

	/* Arima W730-K8/Targa Visionary 811/... */
	if (pdev->subsystem_vendor == 0x161F &&
	    pdev->subsystem_device == 0x2032)
		return 1;

	return 0;
	return 0;
}
}


static u8 __devinit via82cxxx_cable_detect(ide_hwif_t *hwif)
static u8 __devinit via82cxxx_cable_detect(ide_hwif_t *hwif)
{
{
	struct via82cxxx_dev *vdev = pci_get_drvdata(hwif->pci_dev);
	struct pci_dev *pdev = hwif->pci_dev;
	struct via82cxxx_dev *vdev = pci_get_drvdata(pdev);


	if (via_cable_override())
	if (via_cable_override(pdev))
		return ATA_CBL_PATA40_SHORT;
		return ATA_CBL_PATA40_SHORT;


	if ((vdev->via_80w >> hwif->channel) & 1)
	if ((vdev->via_80w >> hwif->channel) & 1)