Commit 81030913 authored by Dann Frazier's avatar Dann Frazier

add support for AMD/ATI SB700 hardware, see #429622 -- it builds, but not...

add support for AMD/ATI SB700 hardware, see #429622 -- it builds, but not tested yet (will point submitter at the snapshots to test)

svn path=/dists/etch/linux-2.6/; revision=9249
parent 6d53d31c
......@@ -3,8 +3,9 @@ linux-2.6 (2.6.18.dfsg.1-14) UNRELEASED; urgency=low
* Update abi reference files for ABI 5
* [bluetooth] Fix panic caused by race between RFCOMM socket layer and
RFCOMM TTY layer. Thanks to Mikko Rapeli. (closes: #394742)
* Add support for AMD/ATI SB700 hardware, see #429622
-- dann frazier <dannf@debian.org> Wed, 18 Jul 2007 02:33:30 -0600
-- dann frazier <dannf@debian.org> Fri, 03 Aug 2007 11:57:14 -0600
linux-2.6 (2.6.18.dfsg.1-13) stable; urgency=high
......
From: Henry Su <henry.su@amd.com>
Date: Fri, 11 May 2007 05:48:51 +0000 (-0700)
Subject: add the ATI SB700 SATA controller device id to AHCI pci table
X-Git-Tag: v2.6.22~696^2~2
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=2bcfdde6767f2f07891d2753c25220012fe5e6d2
add the ATI SB700 SATA controller device id to AHCI pci table
Add the device ID to AHCI pci table for ATI SB700 SATA controller, the
subsequent chipset of SB600.
Signed-off-by: henry su<henry.su@amd.com>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Tejun Heo <htejun@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/drivers/scsi/ahci.c linux-source-2.6.18/drivers/scsi/ahci.c
--- linux-source-2.6.18.orig/drivers/scsi/ahci.c 2007-05-23 08:49:57.000000000 -0600
+++ linux-source-2.6.18/drivers/scsi/ahci.c 2007-08-03 01:41:46.646787197 -0600
@@ -347,6 +347,8 @@ static const struct pci_device_id ahci_p
board_ahci }, /* ATI SB600 non-raid */
{ PCI_VENDOR_ID_ATI, 0x4381, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
board_ahci }, /* ATI SB600 raid */
+ { PCI_VENDOR_ID_ATI, 0x4390, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+ board_ahci }, /* ATI SB700 */
/* VIA */
{ PCI_VENDOR_ID_VIA, 0x3349, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
From: su henry <henry.su.ati@gmail.com>
Date: Fri, 20 Jul 2007 12:07:46 +0000 (-0400)
Subject: The SATA controller device ID is different according to
X-Git-Tag: v2.6.23-rc1~219^2~7
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=badc2341579511a247f5993865aa68379e283c5c
The SATA controller device ID is different according to
the onchip SATA type set in the system BIOS:
Device Device ID
SATA in IDE mode 0x4390
SATA in AHCI mode 0x4391
SATA in non-raid5 driver 0x4392
SATA in raid5 driver 0x4393
Although the device ID is different, they use the same AHCI driver
.The attached file is the patch for adding these device
IDs for ATI SB700.
Signed-off-by: henry.su.ati@gmail.com
Signed-off-by: Jeff Garzik <jeff@garzik.org>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/drivers/scsi/ahci.c linux-source-2.6.18/drivers/scsi/ahci.c
--- linux-source-2.6.18.orig/drivers/scsi/ahci.c 2007-08-03 01:41:46.646787000 -0600
+++ linux-source-2.6.18/drivers/scsi/ahci.c 2007-08-03 02:08:45.170323428 -0600
@@ -348,7 +348,13 @@ static const struct pci_device_id ahci_p
{ PCI_VENDOR_ID_ATI, 0x4381, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
board_ahci }, /* ATI SB600 raid */
{ PCI_VENDOR_ID_ATI, 0x4390, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
- board_ahci }, /* ATI SB700 */
+ board_ahci }, /* ATI SB700 IDE */
+ { PCI_VENDOR_ID_ATI, 0x4391, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+ board_ahci }, /* ATI SB700 AHCI */
+ { PCI_VENDOR_ID_ATI, 0x4392, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+ board_ahci }, /* ATI SB700 nraid5 */
+ { PCI_VENDOR_ID_ATI, 0x4393, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+ board_ahci }, /* ATI SB700 raid5 */
/* VIA */
{ PCI_VENDOR_ID_VIA, 0x3349, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
From: Conke Hu <conke.hu@gmail.com>
Date: Tue, 19 Dec 2006 21:11:37 +0000 (-0800)
Subject: PCI: ATI sb600 sata quirk
X-Git-Tag: v2.6.20~490^2~5
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=ab17443a3df35abe4b7529e83511a591aa7384f3
PCI: ATI sb600 sata quirk
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@hp.com>
diff -urpN linux-source-2.6.18.orig/drivers/pci/quirks.c linux-source-2.6.18/drivers/pci/quirks.c
--- linux-source-2.6.18.orig/drivers/pci/quirks.c 2007-05-23 08:49:58.000000000 -0600
+++ linux-source-2.6.18/drivers/pci/quirks.c 2007-08-03 01:27:43.634528290 -0600
@@ -840,6 +840,23 @@ static void __init quirk_disable_pxb(str
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454NX, quirk_disable_pxb );
+static void __devinit quirk_sb600_sata(struct pci_dev *pdev)
+{
+ /* set sb600 sata to ahci mode */
+ if ((pdev->class >> 8) == PCI_CLASS_STORAGE_IDE) {
+ u8 tmp;
+
+ pci_read_config_byte(pdev, 0x40, &tmp);
+ pci_write_config_byte(pdev, 0x40, tmp|1);
+ pci_write_config_byte(pdev, 0x9, 1);
+ pci_write_config_byte(pdev, 0xa, 6);
+ pci_write_config_byte(pdev, 0x40, tmp);
+
+ pdev->class = 0x010601;
+ }
+}
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_SATA, quirk_sb600_sata);
+
/*
* Serverworks CSB5 IDE does not fully support native mode
*/
From: Henry Su <henry.su@amd.com>
Date: Fri, 11 May 2007 05:48:50 +0000 (-0700)
Subject: Add the combined mode for ATI SB700
X-Git-Tag: v2.6.22~696^2~3
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=823777181b4c0200923dcb026efa5b37f55c0ecf
Add the combined mode for ATI SB700
Besides those modes in ATI SB600 SATA controller, ATI SB700 supports one
more mode:the combined mode.
The combined mode is a Legacy IDE mode used for compatibility with some old
OS without AHCI driver, but now it is not necessary for Linux since the
kernel has supported AHCI.
Signed-off-by: Luugi Marsan <luugi.marsan@amd.com>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Tejun Heo <htejun@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/drivers/pci/quirks.c linux-source-2.6.18/drivers/pci/quirks.c
--- linux-source-2.6.18.orig/drivers/pci/quirks.c 2007-08-03 01:27:43.634528000 -0600
+++ linux-source-2.6.18/drivers/pci/quirks.c 2007-08-03 01:44:58.149571991 -0600
@@ -856,6 +856,7 @@ static void __devinit quirk_sb600_sata(s
}
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_SATA, quirk_sb600_sata);
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP700_SATA, quirk_sb600_sata);
/*
* Serverworks CSB5 IDE does not fully support native mode
diff -urpN linux-source-2.6.18.orig/include/linux/pci_ids.h linux-source-2.6.18/include/linux/pci_ids.h
--- linux-source-2.6.18.orig/include/linux/pci_ids.h 2007-05-23 08:49:59.000000000 -0600
+++ linux-source-2.6.18/include/linux/pci_ids.h 2007-08-03 01:44:58.149571991 -0600
@@ -363,6 +363,7 @@
#define PCI_DEVICE_ID_ATI_IXP600_SATA 0x4380
#define PCI_DEVICE_ID_ATI_IXP600_SRAID 0x4381
#define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c
+#define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390
#define PCI_VENDOR_ID_VLSI 0x1004
#define PCI_DEVICE_ID_VLSI_82C592 0x0005
From: Henry Su <henry.su@amd.com>
Date: Thu, 24 May 2007 00:42:37 +0000 (+0200)
Subject: add the IDE device ID for ATI SB700
X-Git-Tag: v2.6.22-rc3~89
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=6c6a2a8d201b4f8fd54167802da5ddbe08abd744
add the IDE device ID for ATI SB700
Add the IDE device ID to atiixp_pci_tbl struct in atiixp.c for ATI SB700.
From: Henry Su <henry.su@amd.com>
Signed-off-by: Luugi Marsan <luugi.marsan@amd.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/drivers/ide/pci/atiixp.c linux-source-2.6.18/drivers/ide/pci/atiixp.c
--- linux-source-2.6.18.orig/drivers/ide/pci/atiixp.c 2007-08-03 01:28:24.135117000 -0600
+++ linux-source-2.6.18/drivers/ide/pci/atiixp.c 2007-08-03 01:48:49.152931194 -0600
@@ -365,6 +365,7 @@ static struct pci_device_id atiixp_pci_t
{ PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP300_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{ PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{ PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1},
+ { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP700_IDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1},
{ 0, },
};
MODULE_DEVICE_TABLE(pci, atiixp_pci_tbl);
diff -urpN linux-source-2.6.18.orig/include/linux/pci_ids.h linux-source-2.6.18/include/linux/pci_ids.h
--- linux-source-2.6.18.orig/include/linux/pci_ids.h 2007-08-03 01:44:58.149571000 -0600
+++ linux-source-2.6.18/include/linux/pci_ids.h 2007-08-03 01:48:49.152931194 -0600
@@ -364,6 +364,7 @@
#define PCI_DEVICE_ID_ATI_IXP600_SRAID 0x4381
#define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c
#define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390
+#define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c
#define PCI_VENDOR_ID_VLSI 0x1004
#define PCI_DEVICE_ID_VLSI_82C592 0x0005
From: Jean Delvare <khali@linux-fr.org>
Date: Tue, 13 Feb 2007 21:08:59 +0000 (+0100)
Subject: i2c-piix4: Add support for the ATI SB600
X-Git-Tag: v2.6.21~1021^2~4^2~14
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=4e6697fcc194db8b45559a9863947c6cbfeea363
i2c-piix4: Add support for the ATI SB600
Add support for the ATI SB600 SMBus controller.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/Documentation/i2c/busses/i2c-piix4 linux-source-2.6.18/Documentation/i2c/busses/i2c-piix4
--- linux-source-2.6.18.orig/Documentation/i2c/busses/i2c-piix4 2006-09-19 21:42:06.000000000 -0600
+++ linux-source-2.6.18/Documentation/i2c/busses/i2c-piix4 2007-08-03 02:39:13.196906208 -0600
@@ -6,7 +6,7 @@ Supported adapters:
Datasheet: Publicly available at the Intel website
* ServerWorks OSB4, CSB5, CSB6 and HT-1000 southbridges
Datasheet: Only available via NDA from ServerWorks
- * ATI IXP southbridges IXP200, IXP300, IXP400
+ * ATI IXP200, IXP300, IXP400 and SB600 southbridges
Datasheet: Not publicly available
* Standard Microsystems (SMSC) SLC90E66 (Victory66) southbridge
Datasheet: Publicly available at the SMSC website http://www.smsc.com
diff -urpN linux-source-2.6.18.orig/drivers/i2c/busses/Kconfig linux-source-2.6.18/drivers/i2c/busses/Kconfig
--- linux-source-2.6.18.orig/drivers/i2c/busses/Kconfig 2007-05-23 08:49:59.000000000 -0600
+++ linux-source-2.6.18/drivers/i2c/busses/Kconfig 2007-08-03 02:39:13.196906208 -0600
@@ -176,6 +176,7 @@ config I2C_PIIX4
ATI IXP200
ATI IXP300
ATI IXP400
+ ATI SB600
Serverworks OSB4
Serverworks CSB5
Serverworks CSB6
diff -urpN linux-source-2.6.18.orig/drivers/i2c/busses/i2c-piix4.c linux-source-2.6.18/drivers/i2c/busses/i2c-piix4.c
--- linux-source-2.6.18.orig/drivers/i2c/busses/i2c-piix4.c 2006-09-19 21:42:06.000000000 -0600
+++ linux-source-2.6.18/drivers/i2c/busses/i2c-piix4.c 2007-08-03 02:39:13.196906208 -0600
@@ -23,6 +23,7 @@
Supports:
Intel PIIX4, 440MX
Serverworks OSB4, CSB5, CSB6, HT-1000
+ ATI IXP200, IXP300, IXP400, SB600
SMSC Victory66
Note: we assume there can only be one device, with one SMBus interface.
@@ -396,6 +397,8 @@ static struct pci_device_id piix4_ids[]
.driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS),
.driver_data = 0 },
+ { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_SMBUS),
+ .driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_OSB4),
.driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_CSB5),
diff -urpN linux-source-2.6.18.orig/include/linux/pci_ids.h linux-source-2.6.18/include/linux/pci_ids.h
--- linux-source-2.6.18.orig/include/linux/pci_ids.h 2007-08-03 01:48:49.152931000 -0600
+++ linux-source-2.6.18/include/linux/pci_ids.h 2007-08-03 02:39:13.196906208 -0600
@@ -362,6 +362,7 @@
#define PCI_DEVICE_ID_ATI_IXP400_SATA2 0x437a
#define PCI_DEVICE_ID_ATI_IXP600_SATA 0x4380
#define PCI_DEVICE_ID_ATI_IXP600_SRAID 0x4381
+#define PCI_DEVICE_ID_ATI_IXP600_SMBUS 0x4385
#define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c
#define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390
#define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c
From: Henry Su <henry.su@amd.com>
Date: Thu, 12 Jul 2007 12:12:29 +0000 (+0200)
Subject: i2c-piix4: Add support for the ATI SB700
X-Git-Tag: v2.6.23-rc1~1112^2~18
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=c29c22218b99dad95f7cd0281415a854aeee805c
i2c-piix4: Add support for the ATI SB700
Add the SMBus device ID for ATI SB700.
Signed-off-by: Henry Su <Henry.su@amd.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
---
Backported to Debian's 2.6.18 by dann frazier <dannf@debian.org>
diff -urpN linux-source-2.6.18.orig/Documentation/i2c/busses/i2c-piix4 linux-source-2.6.18/Documentation/i2c/busses/i2c-piix4
--- linux-source-2.6.18.orig/Documentation/i2c/busses/i2c-piix4 2007-08-03 02:39:13.196906000 -0600
+++ linux-source-2.6.18/Documentation/i2c/busses/i2c-piix4 2007-08-03 02:40:02.197618766 -0600
@@ -6,7 +6,7 @@ Supported adapters:
Datasheet: Publicly available at the Intel website
* ServerWorks OSB4, CSB5, CSB6 and HT-1000 southbridges
Datasheet: Only available via NDA from ServerWorks
- * ATI IXP200, IXP300, IXP400 and SB600 southbridges
+ * ATI IXP200, IXP300, IXP400, SB600 and SB700 southbridges
Datasheet: Not publicly available
* Standard Microsystems (SMSC) SLC90E66 (Victory66) southbridge
Datasheet: Publicly available at the SMSC website http://www.smsc.com
diff -urpN linux-source-2.6.18.orig/drivers/i2c/busses/Kconfig linux-source-2.6.18/drivers/i2c/busses/Kconfig
--- linux-source-2.6.18.orig/drivers/i2c/busses/Kconfig 2007-08-03 02:39:13.196906000 -0600
+++ linux-source-2.6.18/drivers/i2c/busses/Kconfig 2007-08-03 02:40:02.197618766 -0600
@@ -177,6 +177,7 @@ config I2C_PIIX4
ATI IXP300
ATI IXP400
ATI SB600
+ ATI SB700
Serverworks OSB4
Serverworks CSB5
Serverworks CSB6
diff -urpN linux-source-2.6.18.orig/drivers/i2c/busses/i2c-piix4.c linux-source-2.6.18/drivers/i2c/busses/i2c-piix4.c
--- linux-source-2.6.18.orig/drivers/i2c/busses/i2c-piix4.c 2007-08-03 02:39:13.196906000 -0600
+++ linux-source-2.6.18/drivers/i2c/busses/i2c-piix4.c 2007-08-03 02:40:02.197618766 -0600
@@ -23,7 +23,7 @@
Supports:
Intel PIIX4, 440MX
Serverworks OSB4, CSB5, CSB6, HT-1000
- ATI IXP200, IXP300, IXP400, SB600
+ ATI IXP200, IXP300, IXP400, SB600, SB700
SMSC Victory66
Note: we assume there can only be one device, with one SMBus interface.
@@ -399,6 +399,8 @@ static struct pci_device_id piix4_ids[]
.driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP600_SMBUS),
.driver_data = 0 },
+ { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP700_SMBUS),
+ .driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_OSB4),
.driver_data = 0 },
{ PCI_DEVICE(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_CSB5),
diff -urpN linux-source-2.6.18.orig/include/linux/pci_ids.h linux-source-2.6.18/include/linux/pci_ids.h
--- linux-source-2.6.18.orig/include/linux/pci_ids.h 2007-08-03 02:39:13.196906000 -0600
+++ linux-source-2.6.18/include/linux/pci_ids.h 2007-08-03 02:40:02.197618766 -0600
@@ -365,6 +365,7 @@
#define PCI_DEVICE_ID_ATI_IXP600_SMBUS 0x4385
#define PCI_DEVICE_ID_ATI_IXP600_IDE 0x438c
#define PCI_DEVICE_ID_ATI_IXP700_SATA 0x4390
+#define PCI_DEVICE_ID_ATI_IXP700_SMBUS 0x4395
#define PCI_DEVICE_ID_ATI_IXP700_IDE 0x439c
#define PCI_VENDOR_ID_VLSI 0x1004
+ bugfix/bluetooth-rfcomm-panic.patch
+ features/all/drivers/ati-sb600-sata-quirk.patch
+ features/all/drivers/ahci-sb700-pciid.patch
+ features/all/drivers/ati-sb700-combined-mode.patch
+ features/all/drivers/atiixp-sb700.patch
+ features/all/drivers/ahci-sb700-sata-type-ids.patch
+ features/all/drivers/i2c-piix4-sb600.patch
+ features/all/drivers/i2c-piix4-sb700.patch
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment