[RFC,1/2] ata_piix: revert quirks for fixing SNB chips

Submitted by Ming Lei on Oct. 4, 2011, 5:10 a.m.

Details

Message ID 1317705025-25652-1-git-send-email-ming.lei@canonical.com
State New
Headers show

Commit Message

Ming Lei Oct. 4, 2011, 5:10 a.m.
From: Ming Lei <ming.lei@canonical.com>

Revert the commit 44e8c44804843af82e614921173bc0e01c3ea2e0 in
ubuntu-oneiric.git.

	UBUNTU: SAUCE: ata: make DVD drive recognisable on systems with Sandybridge CPT chipset

because we have a better solution which can fix more cases than the old one.

BugLink:
        https://bugs.launchpad.net/bugs/737388
        https://bugs.launchpad.net/bugs/794642
        https://bugs.launchpad.net/bugs/782389

Upstream: [1],[2],[3]

[1], https://bugzilla.kernel.org/show_bug.cgi?id=40592
[2], http://marc.info/?t=131665670300001&r=1&w=2
[3], http://marc.info/?t=131743346400002&r=1&w=2

Signed-off-by: Ming Lei <ming.lei@canonical.com>
---
 drivers/ata/ata_piix.c |   12 +-----------
 1 files changed, 1 insertions(+), 11 deletions(-)

Comments

Stefan Bader Oct. 4, 2011, 11:36 a.m.
Overall the new approach looks clean. At the moment this is definitely "UBUNTU:
SAUCE:". And the BugLink statement needs to be fixed (One BugLink: key per line
followed by the link).
Also the target release is unclear (Oneiric?). Also wondering whether at least
the subject is the same as the upstream patch will be (while git likely can cope
it would make it simpler for humans to match patches).

Patch hide | download patch | download mbox

diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c
index eb7ea56..43107e9 100644
--- a/drivers/ata/ata_piix.c
+++ b/drivers/ata/ata_piix.c
@@ -341,12 +341,11 @@  static struct ata_port_operations piix_sata_ops = {
 };
 
 static struct ata_port_operations piix_pata_ops = {
-	.inherits		= &ata_bmdma32_port_ops,
+	.inherits		= &piix_sata_ops,
 	.cable_detect		= ata_cable_40wire,
 	.set_piomode		= piix_set_piomode,
 	.set_dmamode		= piix_set_dmamode,
 	.prereset		= piix_pata_prereset,
-	.sff_irq_check		= piix_irq_check,
 };
 
 static struct ata_port_operations piix_vmw_ops = {
@@ -1586,15 +1585,6 @@  static int __devinit piix_init_one(struct pci_dev *pdev,
 				"on poweroff and hibernation\n");
 	}
 
-	/*
-	 * Sandybridge chipset H61/P67/H67 have broken 32 mode up to now
-	 * see https://bugzilla.kernel.org/show_bug.cgi?id=40592
-	 */
-	if (pdev->vendor == PCI_VENDOR_ID_INTEL && pdev->device == 0x1c00)
-		piix_sata_ops.inherits = &ata_bmdma_port_ops;
-	else
-		piix_sata_ops.inherits = &ata_bmdma32_port_ops;
-
 	port_info[0] = piix_port_info[ent->driver_data];
 	port_info[1] = piix_port_info[ent->driver_data];