summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWang Qing Pei <wangqingpei@gmail.com>2011-08-26 21:11:41 +0000
committerUwe Hermann <uwe@hermann-uwe.de>2011-08-26 21:11:41 +0000
commit6e9e2ee2f4411de03bcbf7c2e8cb14c08fec90e4 (patch)
tree0f2036a03849d5b3e4824e4a4391f7cc45892f7c
parent09ebd52e01af15466ef08ce240f6c760e27af79c (diff)
downloadast2050-flashrom-6e9e2ee2f4411de03bcbf7c2e8cb14c08fec90e4.zip
ast2050-flashrom-6e9e2ee2f4411de03bcbf7c2e8cb14c08fec90e4.tar.gz
Add AMD Hudson chipset-enable
AMD Hudson has different vendor/device IDs than AMD SBx00, handle that properly. Corresponding to flashrom svn r1422. Signed-off-by: Wang Qing Pei <wangqingpei@gmail.com> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
-rw-r--r--chipset_enable.c1
-rw-r--r--sb600spi.c7
2 files changed, 6 insertions, 2 deletions
diff --git a/chipset_enable.c b/chipset_enable.c
index 687682a..3704160 100644
--- a/chipset_enable.c
+++ b/chipset_enable.c
@@ -1058,6 +1058,7 @@ const struct penable chipset_enables[] = {
{0x1022, 0x3000, OK, "AMD", "Elan SC520", get_flashbase_sc520},
{0x1022, 0x7440, OK, "AMD", "AMD-768", enable_flash_amd8111},
{0x1022, 0x7468, OK, "AMD", "AMD8111", enable_flash_amd8111},
+ {0x1022, 0x780e, OK, "AMD", "Hudson", enable_flash_sb600},
{0x1039, 0x0406, NT, "SiS", "501/5101/5501", enable_flash_sis501},
{0x1039, 0x0496, NT, "SiS", "85C496+497", enable_flash_sis85c496},
{0x1039, 0x0530, NT, "SiS", "530", enable_flash_sis530},
diff --git a/sb600spi.c b/sb600spi.c
index 5ad5782..9d82b47 100644
--- a/sb600spi.c
+++ b/sb600spi.c
@@ -259,8 +259,11 @@ int sb600_probe_spi(struct pci_dev *dev)
smbus_dev = pci_dev_find(0x1002, 0x4385);
if (!smbus_dev) {
- msg_perr("ERROR: SMBus device not found. Not enabling SPI.\n");
- return ERROR_NONFATAL;
+ smbus_dev = pci_dev_find(0x1022, 0x780b); /* AMD Hudson */
+ if (!smbus_dev) {
+ msg_perr("ERROR: SMBus device not found. Not enabling SPI.\n");
+ return ERROR_NONFATAL;
+ }
}
/* Note about the bit tests below: If a bit is zero, the GPIO is SPI. */
OpenPOWER on IntegriCloud