summaryrefslogtreecommitdiff
path: root/util/superiotool/winbond.c
diff options
context:
space:
mode:
authorFrank Rysanek <Frantisek.Rysanek@post.cz>2013-04-05 10:44:10 +0200
committerAnton Kochkov <anton.kochkov@gmail.com>2013-04-22 17:07:13 +0200
commitc0c620e74ab4578ac8bd8ca80c7265fc4c62a37c (patch)
treed60bd52d1e280888f5d2cbacfd05e10f2ecee0a1 /util/superiotool/winbond.c
parent69743962617b9de1a0263dc372bd9116671b5025 (diff)
downloadcoreboot-c0c620e74ab4578ac8bd8ca80c7265fc4c62a37c.tar.xz
superiotool: add CR dump for W83627UHG = NCT6627UD
This commit adds "register dump capability" to superiotool for a specific chip by Winbond/Nuvoton: the W83627UHG AKA NCT6627UD (same chip, different package). In other words, it fills in the "CR map" definitions in winbond.c, which so far have been void for this chip. - superiotool r4.0-3976-g190011e Found Winbond W83627UHG = NCT6627UD (id=0xa2, rev=0x32) at 0x2e Register dump: idx 02 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f val ff a2 32 ff f0 44 00 00 ff 00 00 00 00 03 00 00 ff def 00 a2 NA ff f0 MM 00 MM RR 00 00 00 00 02 00 00 00 LDN 0x00 (Floppy) idx 30 60 61 70 74 f0 f1 f2 f4 f5 val 00 00 00 00 02 8e 00 ff 00 00 def 01 03 f0 06 02 8e 00 ff 00 00 LDN 0x01 (Parallel port) idx 30 60 61 70 74 f0 val 00 03 78 0c 04 3f def 01 03 78 07 04 3f LDN 0x02 (UART A) idx 30 60 61 70 f0 val 01 03 f8 04 00 def 01 03 f8 04 00 LDN 0x03 (UART B) idx 30 60 61 70 f0 f1 val 01 02 f8 03 00 44 def 01 02 f8 03 00 00 LDN 0x05 (Keyboard) idx 30 60 61 62 63 70 72 f0 val 01 00 60 00 64 01 0c 82 def 01 00 60 00 64 01 0c 83 LDN 0x06 (UART C) idx 30 60 61 70 f0 val 01 03 e8 05 80 def 01 03 e0 04 00 LDN 0x07 (GPIO 3, GPIO 4) idx 30 e0 e1 e2 e3 e4 e5 e6 e7 val 04 ff ff ff ff ff ff ff ff def 00 ff 00 00 00 ff 00 00 00 LDN 0x08 (WDTO#, PLED, GPIO 5,6 & GPIO Base Address) idx 30 60 61 e0 e1 e2 e3 e4 e5 e6 e7 f5 f6 f7 val 01 00 00 ff ff ff ff ff ff ff ff 02 00 00 def 02 00 00 ff 00 00 00 ff 1f 00 00 00 00 00 LDN 0x09 (GPIO 1, GPIO 2 and SUSLED) idx 30 e0 e1 e2 e3 e4 e5 e6 e7 f3 val 02 ff ff ff ff 00 ff 00 00 00 def 00 ff 00 00 00 ff 00 00 00 00 LDN 0x0a (ACPI) idx 30 70 e0 e1 e2 e3 e4 e5 e6 e7 e8 e9 f2 f3 f4 f6 f7 fe val 01 00 01 00 0a 00 00 00 0c 00 09 00 01 00 00 00 00 00 def 00 00 01 00 ff 08 00 00 1c 00 RR RR 3e 00 00 00 00 00 LDN 0x0b (Hardware monitor) idx 30 60 61 70 f0 f1 f2 val 01 02 48 00 81 ff 81 def 00 00 00 00 RR RR 00 LDN 0x0c (PECI, SST) idx e0 e1 e2 e3 e4 e5 e6 e7 e8 f1 f2 f3 fe ff val 00 48 48 48 48 00 00 00 00 4c 50 10 23 5a def 00 48 48 48 48 00 RR RR 00 48 50 10 23 5a LDN 0x0d (UART D) idx 30 60 61 70 f0 val 00 00 00 00 00 def 00 02 e0 03 00 LDN 0x0e (UART E) idx 30 60 61 70 f0 val 00 00 00 00 80 def 00 03 e8 04 00 LDN 0x0f (UART F) idx 30 60 61 70 f0 val 01 02 38 0a 00 def 00 02 e8 03 00 Change-Id: I834f8767b29f3148f353004edb22cfd7db5ddd56 Signed-off-by: Frank Rysanek <Frantisek.Rysanek@post.cz> Reviewed-on: http://review.coreboot.org/3027 Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Tested-by: build bot (Jenkins) Reviewed-by: Anton Kochkov <anton.kochkov@gmail.com>
Diffstat (limited to 'util/superiotool/winbond.c')
-rw-r--r--util/superiotool/winbond.c66
1 files changed, 65 insertions, 1 deletions
diff --git a/util/superiotool/winbond.c b/util/superiotool/winbond.c
index 96b082e090..03985f0a74 100644
--- a/util/superiotool/winbond.c
+++ b/util/superiotool/winbond.c
@@ -233,7 +233,71 @@ static const struct superio_registers reg_table[] = {
{0x00,0x48,0x48,0x48,0x48,0x00,0x00,0x48,0x00,0x00,
EOT}},
{EOT}}},
- {0xa23, "W83627UHG", {/* TODO: Not yet in sensors-detect */
+ {0xa23, "W83627UHG = NCT6627UD", { /* TODO: Not yet in sensors-detect */
+ {NOLDN, NULL, /* CR2B (485) is only valid for chip rev.E */
+ {0x02,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,
+ 0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,EOT},
+ {0x00,0xa2,NANA,0xff,0xF0,MISC,0x00,MISC,RSVD,0x00,
+ 0x00,0x00,0x00,0x02,0x00,0x00,0x00,EOT}},
+ {0x0, "Floppy",
+ {0x30,0x60,0x61,0x70,0x74,0xf0,0xf1,0xf2,0xf4,0xf5,
+ EOT},
+ {0x01,0x03,0xf0,0x06,0x02,0x8e,0x00,0xff,0x00,0x00,
+ EOT}},
+ {0x1, "Parallel port",
+ {0x30,0x60,0x61,0x70,0x74,0xf0,EOT},
+ {0x01,0x03,0x78,0x07,0x04,0x3f,EOT}},
+ {0x2, "UART A",
+ {0x30,0x60,0x61,0x70,0xf0,EOT},
+ {0x01,0x03,0xf8,0x04,0x00,EOT}},
+ {0x3, "UART B",
+ {0x30,0x60,0x61,0x70,0xf0,0xf1,EOT},
+ {0x01,0x02,0xf8,0x03,0x00,0x00,EOT}},
+ {0x5, "Keyboard",
+ {0x30,0x60,0x61,0x62,0x63,0x70,0x72,0xf0,EOT},
+ {0x01,0x00,0x60,0x00,0x64,0x01,0x0c,0x83,EOT}},
+ {0x6, "UART C",
+ {0x30,0x60,0x61,0x70,0xf0,EOT},
+ {0x01,0x03,0xE0,0x04,0x00,EOT}},
+ {0x7, "GPIO 3, GPIO 4",
+ {0x30,0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,EOT},
+ {0x00,0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,EOT}},
+ {0x8, "WDTO#, PLED, GPIO 5,6 & GPIO Base Address",
+ {0x30,0x60,0x61,
+ 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
+ 0xF5,0xF6,0xF7,EOT},
+ {0x02,0x00,0x00,
+ 0xFF,0x00,0x00,0x00,0xFF,0x1F,0x00,0x00,
+ 0x00,0x00,0x00,EOT}},
+ {0x9, "GPIO 1, GPIO 2 and SUSLED",
+ {0x30,
+ 0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,
+ 0xF3,EOT},
+ {0x00,
+ 0xff,0x00,0x00,0x00,0xff,0x00,0x00,0x00,
+ 0x00,EOT}},
+ {0xa, "ACPI",
+ {0x30,0x70,0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,
+ 0xe8,0xe9,0xf2,0xf3,0xf4,0xf6,0xf7,0xfe,EOT},
+ {0x00,0x00,0x01,0x00,0xff,0x08,0x00,0x00,0x1c,0x00,
+ RSVD,RSVD,0x3e,0x00,0x00,0x00,0x00,0x00,EOT}},
+ {0xb, "Hardware monitor",
+ {0x30,0x60,0x61,0x70,0xf0,0xf1,0xf2,EOT},
+ {0x00,0x00,0x00,0x00,RSVD,RSVD,0x00,EOT}},
+ {0xc, "PECI, SST",
+ {0xe0,0xe1,0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,0xe8,
+ 0xf1,0xf2,0xf3,0xfe,0xff,EOT},
+ {0x00,0x48,0x48,0x48,0x48,0x00,RSVD,RSVD,0x00,
+ 0x48,0x50,0x10,0x23,0x5A,EOT}},
+ {0xD, "UART D",
+ {0x30,0x60,0x61,0x70,0xf0,EOT},
+ {0x00,0x02,0xe0,0x03,0x00,EOT}},
+ {0xE, "UART E",
+ {0x30,0x60,0x61,0x70,0xf0,EOT},
+ {0x00,0x03,0xe8,0x04,0x00,EOT}},
+ {0xF, "UART F",
+ {0x30,0x60,0x61,0x70,0xf0,EOT},
+ {0x00,0x02,0xe8,0x03,0x00,EOT}},
{EOT}}},
{0xa51, "W83667HG", {
/* See also: http://lists.lm-sensors.org/pipermail/lm-sensors/2008-July/023683.html */