[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [linux-2.6.18-xen] Support I2C bus, and SATA IDE/AHCI modes for new Intel PCH chipset.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1227612124 0
# Node ID f236d7def9944909bf40015ff4a08817b0803ed9
# Parent  bf8b1ee634e20283bb6f874942c40cb83959f2a6
Support I2C bus,and SATA IDE/AHCI modes for new Intel PCH chipset.

Signed-off-by: Scott Parker <james.s.parker@xxxxxxxxx>
---
 arch/i386/pci/irq.c           |    9 +++++++++
 drivers/i2c/busses/Kconfig    |    1 +
 drivers/i2c/busses/i2c-i801.c |    2 ++
 drivers/scsi/ahci.c           |   25 +++++++++++++++++++++++++
 drivers/scsi/ata_piix.c       |   12 ++++++++++++
 include/linux/pci_ids.h       |    3 +++
 sound/pci/hda/hda_intel.c     |    2 ++
 7 files changed, 54 insertions(+)

diff -r bf8b1ee634e2 -r f236d7def994 arch/i386/pci/irq.c
--- a/arch/i386/pci/irq.c       Tue Nov 25 11:19:41 2008 +0000
+++ b/arch/i386/pci/irq.c       Tue Nov 25 11:22:04 2008 +0000
@@ -558,6 +558,15 @@ static __init int intel_router_probe(str
                        r->set = pirq_piix_set;
                        return 1;
        }
+
+       if ((device >= PCI_DEVICE_ID_INTEL_PCH_LPC_MIN) && 
+               (device <= PCI_DEVICE_ID_INTEL_PCH_LPC_MAX)) {
+               r->name = "PIIX/ICH";
+               r->get = pirq_piix_get;
+               r->set = pirq_piix_set;
+               return 1;
+       }
+
        return 0;
 }
 
diff -r bf8b1ee634e2 -r f236d7def994 drivers/i2c/busses/Kconfig
--- a/drivers/i2c/busses/Kconfig        Tue Nov 25 11:19:41 2008 +0000
+++ b/drivers/i2c/busses/Kconfig        Tue Nov 25 11:22:04 2008 +0000
@@ -127,6 +127,7 @@ config I2C_I801
            ICH8
            ICH9
            ICH10
+            PCH
 
          This driver can also be built as a module.  If so, the module
          will be called i2c-i801.
diff -r bf8b1ee634e2 -r f236d7def994 drivers/i2c/busses/i2c-i801.c
--- a/drivers/i2c/busses/i2c-i801.c     Tue Nov 25 11:19:41 2008 +0000
+++ b/drivers/i2c/busses/i2c-i801.c     Tue Nov 25 11:22:04 2008 +0000
@@ -36,6 +36,7 @@
     ICH9               2930
     ICH10              3A30
     ICH10              3A60
+    PCH                        3B30
     This driver supports several versions of Intel's I/O Controller Hubs (ICH).
     For SMBus support, they are similar to the PIIX4 and are part
     of Intel's '810' and other chipsets.
@@ -463,6 +464,7 @@ static struct pci_device_id i801_ids[] =
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_6) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_4) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH10_5) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PCH_SMBUS) },
        { 0, }
 };
 
diff -r bf8b1ee634e2 -r f236d7def994 drivers/scsi/ahci.c
--- a/drivers/scsi/ahci.c       Tue Nov 25 11:19:41 2008 +0000
+++ b/drivers/scsi/ahci.c       Tue Nov 25 11:22:04 2008 +0000
@@ -370,6 +370,31 @@ static const struct pci_device_id ahci_p
          board_ahci }, /* ICH10 */
        { PCI_VENDOR_ID_INTEL, 0x3a25, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
          board_ahci }, /* ICH10 */
+       /* SATA Controller AHCI (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b22, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller AHCI (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b23, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller RAID (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b24, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller RAID (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b25, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller Mobile AHCI (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b29, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller Mobile AHCI (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b2f, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller Mobile RAID (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b2b, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+       /* SATA Controller Mobile RAID (PCH) */
+       { PCI_VENDOR_ID_INTEL, 0x3b2c, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+        board_ahci },
+
 
        /* JMicron */
        { 0x197b, 0x2360, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
diff -r bf8b1ee634e2 -r f236d7def994 drivers/scsi/ata_piix.c
--- a/drivers/scsi/ata_piix.c   Tue Nov 25 11:19:41 2008 +0000
+++ b/drivers/scsi/ata_piix.c   Tue Nov 25 11:22:04 2008 +0000
@@ -220,6 +220,18 @@ static const struct pci_device_id piix_p
        { 0x8086, 0x3a20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
        /* SATA Controller IDE (ICH10) */
        { 0x8086, 0x3a26, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b20, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b21, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b26, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b28, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b2d, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
+       /* SATA Controller IDE (PCH) */
+       { 0x8086, 0x3b2e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
 
        { }     /* terminate list */
 };
diff -r bf8b1ee634e2 -r f236d7def994 include/linux/pci_ids.h
--- a/include/linux/pci_ids.h   Tue Nov 25 11:19:41 2008 +0000
+++ b/include/linux/pci_ids.h   Tue Nov 25 11:22:04 2008 +0000
@@ -2219,6 +2219,9 @@
 #define PCI_DEVICE_ID_INTEL_ICH10_3    0x3a1a
 #define PCI_DEVICE_ID_INTEL_ICH10_4    0x3a30
 #define PCI_DEVICE_ID_INTEL_ICH10_5    0x3a60
+#define PCI_DEVICE_ID_INTEL_PCH_LPC_MIN        0x3b00
+#define PCI_DEVICE_ID_INTEL_PCH_LPC_MAX        0x3b1f
+#define PCI_DEVICE_ID_INTEL_PCH_SMBUS  0x3b30
 #define PCI_DEVICE_ID_INTEL_82371SB_0  0x7000
 #define PCI_DEVICE_ID_INTEL_82371SB_1  0x7010
 #define PCI_DEVICE_ID_INTEL_82371SB_2  0x7020
diff -r bf8b1ee634e2 -r f236d7def994 sound/pci/hda/hda_intel.c
--- a/sound/pci/hda/hda_intel.c Tue Nov 25 11:19:41 2008 +0000
+++ b/sound/pci/hda/hda_intel.c Tue Nov 25 11:22:04 2008 +0000
@@ -82,6 +82,7 @@ MODULE_SUPPORTED_DEVICE("{{Intel, ICH6},
                         "{Intel, ICH8},"
                         "{Intel, ICH9},"
                         "{Intel, ICH10},"
+                        "{Intel, PCH},"
                         "{ATI, SB450},"
                         "{ATI, SB600},"
                         "{ATI, RS600},"
@@ -1640,6 +1641,7 @@ static struct pci_device_id azx_ids[] = 
        { 0x8086, 0x293f, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ICH }, /* 
ICH9 */
        { 0x8086, 0x3a3e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ICH }, /* 
ICH10 */
        { 0x8086, 0x3a6e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ICH }, /* 
ICH10 */
+       { 0x8086, 0x3b56, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ICH }, /* 
PCH */
        { 0x1002, 0x437b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ATI }, /* 
ATI SB450 */
        { 0x1002, 0x4383, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ATI }, /* 
ATI SB600 */
        { 0x1002, 0x793b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AZX_DRIVER_ATIHDMI }, 
/* ATI RS600 HDMI */

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.