Fix sysmon POST problem: check I2C error codes

This fixes a problem of displaying bogus voltages when the voltages
are so low that the I2C devices start failing while the rest of the
system keeps running.
master
Wolfgang Denk 19 years ago
parent e82bc62c03
commit 15f36a5efd
  1. 5
      CHANGELOG
  2. 13
      post/sysmon.c

@ -2,6 +2,11 @@
Changes for U-Boot 1.1.3:
======================================================================
* Fix sysmon POST problem: check I2C error codes
This fixes a problem of displaying bogus voltages when the voltages
are so low that the I2C devices start failing while the rest of the
system keeps running.
* Patch by Cedric Vincent, 6 Jul 2005:
Fix CFG_CMD_SETGETDCR handling in "common/cmd_dcr.c"

@ -185,6 +185,10 @@ static char *sysmon_unit_value (sysmon_table_t *s, uint val)
char *p, sign;
int dec, frac;
if (val == -1) {
return "I/O ERROR";
}
if (unit_val < 0) {
sign = '-';
unit_val = -unit_val;
@ -297,8 +301,13 @@ int sysmon_post_test (int flags)
}
val = t->sysmon->read(t->sysmon, t->addr);
t->val_valid = val >= t->val_min && val <= t->val_max;
t->val_valid_alt = val >= t->val_min_alt && val <= t->val_max_alt;
if (val != -1) {
t->val_valid = val >= t->val_min && val <= t->val_max;
t->val_valid_alt = val >= t->val_min_alt && val <= t->val_max_alt;
} else {
t->val_valid = 0;
t->val_valid_alt = 0;
}
if (t->exec_after) {
t->exec_after(t);

Loading…
Cancel
Save