summaryrefslogtreecommitdiff
path: root/util/superiotool/superiotool.c
diff options
context:
space:
mode:
authorUwe Hermann <uwe@hermann-uwe.de>2007-09-19 15:52:23 +0000
committerUwe Hermann <uwe@hermann-uwe.de>2007-09-19 15:52:23 +0000
commit7e7e9ac6078efb61ce7b531b084a410cb73e1b92 (patch)
treefc10993ca7fe651634576e800501f529e001bac0 /util/superiotool/superiotool.c
parent3acf31e4eaa0f143cd8af10f5ce99523ddc53a03 (diff)
downloadcoreboot-7e7e9ac6078efb61ce7b531b084a410cb73e1b92.tar.xz
Add support for the Winbond W83697HF/F and W83627EHF/EF/EHG/EG.
Various minor fixes and improvements (trivial). Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2789 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/superiotool/superiotool.c')
-rw-r--r--util/superiotool/superiotool.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/util/superiotool/superiotool.c b/util/superiotool/superiotool.c
index de512486e6..2ff56fb5c0 100644
--- a/util/superiotool/superiotool.c
+++ b/util/superiotool/superiotool.c
@@ -37,6 +37,11 @@ void regwrite(uint16_t port, uint8_t reg, uint8_t val)
outb(val, port + 1);
}
+int superio_unknown(const struct superio_registers reg_table[], uint16_t id)
+{
+ return !strncmp(get_superio_name(reg_table, id), "<unknown>", 9);
+}
+
const char *get_superio_name(const struct superio_registers reg_table[],
uint16_t id)
{
@@ -61,6 +66,9 @@ void dump_superio(const char *vendor, const struct superio_registers reg_table[]
int i, j, k, nodump;
int *idx;
+ if (!dump)
+ return;
+
for (i = 0; /* Nothing */; i++) {
if (reg_table[i].superio_id == EOT)
break;
@@ -107,6 +115,8 @@ void dump_superio(const char *vendor, const struct superio_registers reg_table[]
printf("NA ");
else if (idx[k] == RSVD)
printf("RR ");
+ else if (idx[k] == MISC) /* TODO */
+ printf("MM ");
else
printf("%02x ", idx[k]);
}
@@ -166,6 +176,7 @@ int main(int argc, char *argv[])
if (iopl(3) < 0) {
perror("iopl");
+ printf("Superiotool must be run as root.\n");
exit(1);
}