summaryrefslogtreecommitdiff
path: root/util/superiotool/ite.c
diff options
context:
space:
mode:
authorUwe Hermann <uwe@hermann-uwe.de>2007-10-04 15:23:38 +0000
committerUwe Hermann <uwe@hermann-uwe.de>2007-10-04 15:23:38 +0000
commit8b8d03974e11edbdbbd61c6b22d8013dca87be71 (patch)
tree2c7e18481a98fffb59960609f9c74b50d5d273a4 /util/superiotool/ite.c
parent573ff508ab3d61ede76cd3b68aaaf7f2bdcfa34a (diff)
downloadcoreboot-8b8d03974e11edbdbbd61c6b22d8013dca87be71.tar.xz
* Convert the NSC code to the common code structure all other Super I/Os use.
* Improve the --verbose output a bit more. Print the "Probing..." text for all Super I/Os and if a Super I/O is not known, show the data we were able to read from the chip (what data this is is very vendor/chip specific). * Thus the common no_superio_found() is dropped, it's not useful. The "read from 0x20" part was wrong for all Super I/Os other than the NSC ones anyway. * Winbond: For the 'olddevid' only use bits 3..0, mask away the others. * SMSC: Print which ID registers we try to read (in --verbose mode). * Minor cosmetic fixes. * Rename PC8374 to PC8374L (as per datasheet). * Rename probe_idregs_simple() to probe_idregs_nsc(). * Rename dump_readable_ns8374() to dump_readable_pc8374l(). Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2821 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/superiotool/ite.c')
-rw-r--r--util/superiotool/ite.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/util/superiotool/ite.c b/util/superiotool/ite.c
index e44460c065..4d3537f7d1 100644
--- a/util/superiotool/ite.c
+++ b/util/superiotool/ite.c
@@ -23,6 +23,7 @@
#define CHIP_ID_BYTE1_REG 0x20
#define CHIP_ID_BYTE2_REG 0x21
+
#define CHIP_VERSION_REG 0x22
/* Note: IT8726F has ID 0x8726 (datasheet wrongly says 0x8716). */
@@ -265,17 +266,20 @@ static void probe_idregs_ite_helper(const char *init, uint16_t port)
{
uint16_t id, chipver;
+ probing_for("ITE", init, port);
+
id = regval(port, CHIP_ID_BYTE1_REG) << 8;
id |= regval(port, CHIP_ID_BYTE2_REG);
chipver = regval(port, CHIP_VERSION_REG) & 0x0f; /* Only bits 3..0 */
if (superio_unknown(reg_table, id)) {
- no_superio_found("ITE", init, port);
+ if (verbose)
+ printf(NOTFOUND "id=0x%04x, rev=0x%01x\n", id, chipver);
exit_conf_mode_ite(port);
return;
}
- printf("Found ITE %s (id=0x%04x, rev=0x%01x) at port=0x%x\n",
+ printf("Found ITE %s (id=0x%04x, rev=0x%01x) at 0x%x\n",
get_superio_name(reg_table, id), id, chipver, port);
dump_superio("ITE", reg_table, port, id);