diff options
author | groudier <groudier@FreeBSD.org> | 2001-01-28 19:58:21 +0000 |
---|---|---|
committer | groudier <groudier@FreeBSD.org> | 2001-01-28 19:58:21 +0000 |
commit | 0fe2e6bab6a799f6d65f25589cd3741c463a7af5 (patch) | |
tree | 3c51e9a285ffa3d15bc7f770a20d1622de7c9155 /sys/dev | |
parent | 1167a32a1deff1a2dcf502eb2440f8571777a82a (diff) | |
download | FreeBSD-src-0fe2e6bab6a799f6d65f25589cd3741c463a7af5.zip FreeBSD-src-0fe2e6bab6a799f6d65f25589cd3741c463a7af5.tar.gz |
A couple of chip errata work-arounds refined:
- When used on a 33MHz PCI BUS, the 53C1010-66 revision 0
requires extra clocks to be inserted in data out phase.
Revision 1 is fixed.
- The 53C1010-33 revision 1 requires internal cycles to be
disabled due to possible contentions on IO registers.
Revision 2 is fixed.
Fix:
- The probing of HVD from GPIO3 bit by the driver was reversed.
The driver could misprobe the bus mode of a 825 or 875 chip
that was not previously initialized (no BIOS for example).
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/sym/sym_hipd.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/sym/sym_hipd.c b/sys/dev/sym/sym_hipd.c index fb71359..bd9d9db 100644 --- a/sys/dev/sym/sym_hipd.c +++ b/sys/dev/sym/sym_hipd.c @@ -2071,7 +2071,7 @@ sym_fw2_patch(hcb_p np) * they are not desirable. See `sym_fw2.h' for more details. */ if (!(np->device_id == PCI_ID_LSI53C1010_2 && - /* np->revision_id < 0xff */ 1 && + np->revision_id < 0x1 && np->pciclk_khz < 60000)) { scripta0->datao_phase[0] = cpu_to_scr(SCR_NO_OP); scripta0->datao_phase[1] = cpu_to_scr(0); @@ -2802,7 +2802,7 @@ static int sym_prepare_setting(hcb_p np, struct sym_nvram *nvram) * are used. Disable internal cycles. */ if (np->device_id == PCI_ID_LSI53C1010 && - /* np->revision_id < 0xff */ 1) + np->revision_id < 0x2) np->rv_ccntl0 |= DILS; /* @@ -2902,7 +2902,7 @@ static int sym_prepare_setting(hcb_p np, struct sym_nvram *nvram) np->scsi_mode = SMODE_HVD; } else if (nvram->type == SYM_SYMBIOS_NVRAM) { - if (INB(nc_gpreg) & 0x08) + if (!(INB(nc_gpreg) & 0x08)) np->scsi_mode = SMODE_HVD; } } |