diff options
author | Urja Rannikko <urjaman@gmail.com> | 2008-10-18 13:54:30 +0000 |
---|---|---|
committer | Peter Stuge <peter@stuge.se> | 2008-10-18 13:54:30 +0000 |
commit | a88daa731de1612641a9a8df2a63f5529ac7a6b1 (patch) | |
tree | 0c806490d4be0f07f3468f55ed2e49104024251e | |
parent | 3af487d419f87fef25a976055a0656c446212e0e (diff) | |
download | flashrom-a88daa731de1612641a9a8df2a63f5529ac7a6b1.tar.gz flashrom-a88daa731de1612641a9a8df2a63f5529ac7a6b1.tar.bz2 flashrom-a88daa731de1612641a9a8df2a63f5529ac7a6b1.zip |
Allow the SiS 620 chipset to detect and read at least 256kb chips
Based on the 5595 datasheet and uniflash 1.40 sources, only looking for info
about SiS620.
Corresponding to flashrom svn r325 and coreboot v2 svn r3668.
Signed-off-by: Urja Rannikko <urjaman@gmail.com>
Acked-by: Peter Stuge <peter@stuge.se>
-rw-r--r-- | chipset_enable.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/chipset_enable.c b/chipset_enable.c index 22c40dff..3ad99cc7 100644 --- a/chipset_enable.c +++ b/chipset_enable.c @@ -540,6 +540,17 @@ static int enable_flash_sis5595(struct pci_dev *dev, const char *name) return -1; } + /* Extended BIOS enable = 1, Lower BIOS Enable = 1 */ + new = pci_read_byte(dev,0x40); + new &= 0xFB; + new |= 0x3; + pci_write_byte(dev,0x40,new); + newer = pci_read_byte(dev,0x40); + if (newer != new) { + printf("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x40, new, name); + printf("Stuck at 0x%x\n", newer); + return -1; + } return 0; } |