* 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
This commit is contained in:
Uwe Hermann
2007-10-04 15:23:38 +00:00
parent 573ff508ab
commit 8b8d03974e
8 changed files with 77 additions and 46 deletions

View File

@@ -133,6 +133,10 @@ static void probe_idregs_smsc_helper(uint16_t port, uint8_t idreg,
uint8_t revreg)
{
uint8_t id, rev;
const char *info = (idreg == 0x20) ? "(idregs=0x20/0x21) "
: "(idregs=0x0d/0x0e) ";
probing_for("SMSC", info, port);
enter_conf_mode_smsc(port);
@@ -140,12 +144,13 @@ static void probe_idregs_smsc_helper(uint16_t port, uint8_t idreg,
rev = regval(port, revreg);
if (superio_unknown(reg_table, id)) {
no_superio_found("SMSC", "", port);
if (verbose)
printf(NOTFOUND "id=0x%02x, rev=0x%02x\n", id, rev);
exit_conf_mode_smsc(port);
return;
}
printf("Found %s %s (id=0x%02x, rev=0x%02x) at port=0x%x\n",
printf("Found %s %s (id=0x%02x, rev=0x%02x) at 0x%x\n",
(id == 0x77 ? "ASUS" : "SMSC"), get_superio_name(reg_table, id),
id, rev, port);