Move last valid device ID from piix to ata_piix

piix has been kept around because it has 2 device IDs not listed in
other drivers:

PCI_DEVICE_ID_INTEL_82371FB_0 == 0x122e (PIIX function 0)
This function is the ISA bridge, not a PATA controller!

PCI_DEVICE_ID_INTEL_82801DB_1 == 0x24c1 (ICH4-L function 1)
This should be functionally identical to the ICH4's PATA
controller.

Add the latter device ID to ata_piix and disable piix (except on
alpha, which has not been converted to use libata).


svn path=/dists/trunk/linux-2.6/; revision=16427
This commit is contained in:
Ben Hutchings 2010-10-10 22:01:51 +00:00
parent 30e7656cce
commit 10ebafb301
7 changed files with 39 additions and 42 deletions

2
debian/changelog vendored
View File

@ -12,6 +12,8 @@ linux-2.6 (2.6.36~rc7-1~experimental.1) UNRELEASED; urgency=low
* crypto: Explicitly enable algorithm self-tests (Closes: #599441)
* [x86] Skip looking for ioapic overrides when ioapics are not present
(Closes: #598533)
* [x86] ata_piix: Add device ID for ICH4-L
* [armel/iop32x,ia64,x86] Disable BLK_DEV_PIIX as obsolete
-- Ben Hutchings <ben@decadent.org.uk> Thu, 07 Oct 2010 03:24:21 +0100

View File

@ -244,7 +244,7 @@ CONFIG_BLK_DEV_CY82C693=m
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT366=m
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=m
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_IT821X is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set

View File

@ -265,7 +265,7 @@ CONFIG_BLK_DEV_CY82C693=m
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT366=m
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=m
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set

View File

@ -523,7 +523,7 @@ CONFIG_BLK_DEV_CY82C693=m
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_BLK_DEV_HPT366=m
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=m
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set

View File

@ -1,37 +0,0 @@
--- a/drivers/ide/piix.c
+++ b/drivers/ide/piix.c
@@ -416,8 +416,14 @@
static const struct pci_device_id piix_pci_tbl[] = {
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82371FB_0), 1 },
+#if !defined(CONFIG_PATA_OLDPIIX) && !defined(CONFIG_PATA_OLDPIIX_MODULE)
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82371FB_1), 1 },
+#endif
+#if !defined(CONFIG_PATA_MPIIX) && !defined(CONFIG_PATA_MPIIX_MODULE)
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82371MX), 0 },
+#endif
+ { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801DB_1), 6 },
+#if !defined(CONFIG_ATA_PIIX) && !defined(CONFIG_ATA_PIIX_MODULE)
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82371SB_1), 1 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82371AB), 2 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801AB_1), 3 },
@@ -433,15 +439,15 @@
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801EB_11), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801E_11), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801DB_10), 6 },
-#ifdef CONFIG_BLK_DEV_IDE_SATA
- { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801EB_1), 6 },
-#endif
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ESB_2), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ICH6_19), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ICH7_21), 6 },
- { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801DB_1), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ESB2_18), 6 },
{ PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_ICH8_6), 6 },
+#endif
+#ifdef CONFIG_BLK_DEV_IDE_SATA
+ { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_82801EB_1), 6 },
+#endif
{ 0, },
};
MODULE_DEVICE_TABLE(pci, piix_pci_tbl);

View File

@ -0,0 +1,33 @@
From 3080c2292effe085e2ab795b26aeccab724d6bce Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sun, 10 Oct 2010 22:31:26 +0100
Subject: [PATCH] ata_piix: Add device ID for ICH4-L
ICH4-L is a variant of ICH4 lacking USB2 functionality and with some
different device IDs.
It is documented in Intel specification update 290745-025, currently
at <http://www.intel.com/assets/pdf/specupdate/290745.pdf>, and is
included in the device ID table for piix.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
drivers/ata/ata_piix.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c
index 2cfc1ae..6cb14ca 100644
--- a/drivers/ata/ata_piix.c
+++ b/drivers/ata/ata_piix.c
@@ -210,6 +210,8 @@ static const struct pci_device_id piix_pci_tbl[] = {
{ 0x8086, 0x248A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 },
/* Intel ICH3 (E7500/1) UDMA 100 */
{ 0x8086, 0x248B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 },
+ /* Intel ICH4-L */
+ { 0x8086, 0x24C1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 },
/* Intel ICH4 (i845GV, i845E, i852, i855) UDMA 100 */
{ 0x8086, 0x24CA, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 },
{ 0x8086, 0x24CB, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich_pata_100 },
--
1.7.1

View File

@ -3,8 +3,6 @@
+ debian/doc-build-parallel.patch
+ debian/scripts-kconfig-reportoldconfig.patch
+ debian/piix-disable-redundant-devids.patch
+ features/all/drivers-media-dvb-usb-af9005-request_firmware.patch
+ features/all/r8169-rtl8168d-1-2-request_firmware-2.patch
@ -50,3 +48,4 @@
+ bugfix/all/perf-Use-PERF_EXEC_PATH-in-canned-report-scripts.patch
+ bugfix/all/perf-Fix-detection-of-script-extension.patch
+ bugfix/x86/Skip-looking-for-ioapic-overrides-when-ioapics-are-not-present.patch
+ features/x86/ata_piix-Add-device-ID-for-ICH4-L.patch