diff options
| author | Andriy Gapon <avg@FreeBSD.org> | 2019-03-22 10:38:22 +0000 |
|---|---|---|
| committer | Andriy Gapon <avg@FreeBSD.org> | 2019-03-22 10:38:22 +0000 |
| commit | 4c2fb039548b4246a27463721ae2a37c5bcde7ab (patch) | |
| tree | 6f0fa7890182640d9bb59599aecb7cdac8baedc9 /sys/dev/intpm | |
| parent | c1581f4f4dfb307bdea683a4a8bdc94c5f7617a1 (diff) | |
Notes
Diffstat (limited to 'sys/dev/intpm')
| -rw-r--r-- | sys/dev/intpm/intpm.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/dev/intpm/intpm.c b/sys/dev/intpm/intpm.c index 15da5e861a07..5ab2249c6691 100644 --- a/sys/dev/intpm/intpm.c +++ b/sys/dev/intpm/intpm.c @@ -525,12 +525,19 @@ intsmb_error(device_t dev, int status) { int error = 0; + /* + * PIIX4_SMBHSTSTAT_ERR can mean either of + * - SMB_ENOACK ("Unclaimed cycle"), + * - SMB_ETIMEOUT ("Host device time-out"), + * - SMB_EINVAL ("Illegal command field"). + * SMB_ENOACK seems to be most typical. + */ if (status & PIIX4_SMBHSTSTAT_ERR) - error |= SMB_EBUSERR; + error |= SMB_ENOACK; if (status & PIIX4_SMBHSTSTAT_BUSC) error |= SMB_ECOLLI; if (status & PIIX4_SMBHSTSTAT_FAIL) - error |= SMB_ENOACK; + error |= SMB_EABORT; if (error != 0 && bootverbose) device_printf(dev, "error = %d, status = %#x\n", error, status); |
