opnsense-src/sys/dev
Gerard Roudier 7a35ada03e Simplifications:
- Remove all the code intended to deal with experimental
  C1010 revisions. This code got useless due to commercial
  chip revisions having been fixed.
Fixes:
- Rewrite/rework the WSR condition handling.
  Previous drivers snooped on the BUS through the SBDL IO
  register and this has been discovered to trigger a spurious
  SCSI parity error when WSR had been set by chip and cleared
  by SCRIPTS prior to reading SBDL bit [0...7].
  On the other hand, the C1010 does not use the SWIDE register
  when synchronous data transfers are taking place and
  requires a CHMOV (1) WHEN DATA_IN to be performed in order
  to move to memory the residual byte when WSR is set and
  the residual byte is useful data.
  BTW, the new WSR handling by the driver is simpler.
- No longer attempt to read from SCRIPTS the SBDL register.
  This is intended to avoid to be victimized again by any other
  issue regarding the handling of this register by 8xx chips.
Miscellaneous:
- The driver is now able to handle the WSR + IGN RESIDUE
  condition at the end of a DATA IN I/O without need of a
  programmed interrupt. It is a minor? optimization.
- A few other minor cosmetic changes.

This driver version fixes notably a permanent SCSI parity
error condition at boot that can be triggerred due to recent
changes in cam_xpt.c between 1.79 and 1.80.
Changes in CAM/XPT are fine, but the new handling of the full
INQUIRY may trigger the driver problem when a target returned
an odd value in the `additionnal length' field of the INQUIRY
response.

The diff against previous driver version is large, but it
consists approximatively in:
- 350 lignes removed and not compiled in previous drivers
  (They addressed experimental C1010 revisions)
- 250 lignes added or changed, half being comments or empty
  lines.
So, in fact, the real changes are about 120 lines of source.
About 80 lines address SCRIPTS changes and about 40 lines
address C code changes.

Approved by: jkh

New WSR handling reviewed by Pamela Delaney <pam.delaney@lsil.com>
(For back-porting to Linux sym53c8xx driver 1.6x series)
2000-02-13 12:14:07 +00:00
..
advansys Fix indentation. 2000-02-04 14:25:24 +00:00
aha Fix plug and play support: 2000-01-24 07:08:40 +00:00
ahb Remove #include "eisa.h" and #if NEISA > 0 2000-01-29 18:22:33 +00:00
aic Add support to aic for pccard attachments. Reports from testers have 2000-01-14 23:42:36 +00:00
aic7xxx Kill the "unpause_always" argument to unpause_sequencer(). The reasons 2000-02-09 21:25:00 +00:00
amd The error status for a scsi status error is "CAM_SCSI_STATUS_ERROR", not 0. 2000-01-14 03:39:30 +00:00
amr Fix a printf format problem on the Alpha, where size_t == unsigned long, 1999-12-12 20:53:31 +00:00
an Fix an instance of rman_get_start() than should be rman_get_bushandle(). 2000-01-16 06:41:49 +00:00
ar Remove definition of the unimplemented "control" hook. 2000-01-21 01:39:40 +00:00
ata That "NO DRIVER" panic fix wasn't good enough... 2000-02-11 07:37:00 +00:00
atkbdc - Be slightly more cautious and try to make more sure the keyboard 2000-02-11 01:22:30 +00:00
bktr The Leadtek Winfast TV2000 has one of the FM capable Tuners. Don't 2000-02-12 08:49:21 +00:00
buslogic Remove #include "eisa.h" and #if NEISA > 0 - this is guaranteed by config. 2000-01-29 14:27:26 +00:00
cardbus Sync to latest cardbusdevs file 1999-11-18 07:22:59 +00:00
ccd Remove #if NCCD > 0 - it's guaranteed to be true by config if ccd.c is 2000-01-29 14:29:56 +00:00
cs Remove NBPF conditionality of bpf calls in most of our network drivers. 1999-09-25 12:06:01 +00:00
cy Clean up some more loose ends.. 2000-01-23 11:50:43 +00:00
dc Add support for DM9102A boards with Davicom DM9801 HomePNA PHYs. 2000-01-24 17:19:37 +00:00
de Remove NBPF conditionality of bpf calls in most of our network drivers. 1999-09-25 12:06:01 +00:00
dec Ho, ho, ho... this clock chip is not y2k compliant. Motorola 2000-01-04 03:22:04 +00:00
dgb Remove #if NDGB > 0 and #if NDGM > 0 2000-01-29 18:42:45 +00:00
dpt Remove #include "eisa.h" and #if NEISA > 0 as it's only ever compiled 2000-01-29 14:31:57 +00:00
ed Propagate MAC address in CIS tupple to dev/ed/ driver. 2000-01-21 03:08:46 +00:00
eisa Pre 4.0 tidy up. 2000-01-14 07:14:17 +00:00
en Remove #if NEN > 0 in the name of FreeBSD - it's not required as config 2000-01-29 14:38:04 +00:00
ep Fix a bug in the last commit. >> 4 instead of >> 8. *bap* 2000-01-23 08:46:21 +00:00
ex Pre 4.0 tidy up. 2000-01-14 07:14:17 +00:00
fb Remove #include "vga.h" and #if NVGA > 0 as it's implied by config. 2000-01-29 14:43:47 +00:00
fdc Futher cleanup.. "device_print_prettyname(); printf()" -> device_printf() 2000-01-08 09:33:09 +00:00
fe Make release is now falling over in if_fe.c due to Warner's pccard changes: 1999-10-25 17:04:17 +00:00
fxp Make the fxp driver work on alpha, rather than panic the machine on boot 1999-09-30 19:03:12 +00:00
hea Remove un-needed #include's. 2000-01-17 20:49:59 +00:00
hfa Ensure that DMA mappings are freed in error situations. 2000-01-15 21:01:04 +00:00
ic $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ida Revamp the devstat priority system. All disks now have the same priority. 1999-12-08 04:45:23 +00:00
ie Remove #if NIE > 0 test, it's guaranteed to be true by config. 2000-01-29 14:41:52 +00:00
iicbus Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
isp Add in 12160 (Ultra3) support. Redo things to use the newbus code. 2000-02-11 19:45:17 +00:00
joy Add ADS7182 as a known Joystick. 2000-01-18 08:38:35 +00:00
kbd - Be slightly more cautious and try to make more sure the keyboard 2000-02-11 01:22:30 +00:00
lnc Remove a bunch of unused (NO-OP) #if NFOO > 0 type includes and some 2000-01-29 16:17:36 +00:00
mc146818 Major changes to the generic device framework for FreeBSD/alpha: 1998-06-14 13:46:10 +00:00
mca Implement BUS_{GET,SET,DELETE}_RESOURCE methods. 2000-01-13 09:01:46 +00:00
mcd Remove a bunch of unused (NO-OP) #if NFOO > 0 type includes and some 2000-01-29 16:17:36 +00:00
md Initialize type correctly. 1999-12-01 10:20:21 +00:00
mii Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
mlx Fix the firmware build number output (again). 1999-12-25 01:45:22 +00:00
mse Remove a bunch of unused (NO-OP) #if NFOO > 0 type includes and some 2000-01-29 16:17:36 +00:00
pccard Propagate MAC address in CIS tupple to dev/ed/ driver. 2000-01-21 03:08:46 +00:00
pcf Port of ppbus standalone framework to the newbus system. 2000-01-14 00:18:06 +00:00
pci Spell "pci_delete_resource" correctly. 2000-02-01 18:02:12 +00:00
pcic Add some comments about things that have become bad as I've been 2000-01-10 06:17:27 +00:00
pdq Pre 4.0 tidy up. 2000-01-14 07:14:17 +00:00
ppbus Fix two warnings. 2000-02-13 03:03:31 +00:00
ppc Remove #include "ppc.h" and #if NPPC > 0 - this is always true as it is 2000-01-29 14:02:30 +00:00
rc Remove #if NFOO > 0 (it's not required in most cases) and also where it 2000-01-29 16:00:34 +00:00
rp Introduce ttyread() and ttywrite() which do the canonical thing. 1999-09-28 11:45:31 +00:00
scd Remove #if NFOO > 0 (it's not required in most cases) and also where it 2000-01-29 16:00:34 +00:00
sf Modify the Adaptec "starfire" driver to reset the PHY on the MII bus 1999-12-05 20:02:45 +00:00
si Always leave SP_DCEN on (monitor DCD). Otherwise the firmware *really* 2000-01-25 16:45:54 +00:00
sio "Completed" the previous fix. Return ENOMEM on memory allocation failure 2000-01-29 03:02:55 +00:00
sk Call sk_start() at the end of sk_intr() if there's packets in the 1999-09-25 04:50:27 +00:00
smbus Remove the 'ivars' arguement to device_add_child() and 1999-12-03 08:41:24 +00:00
sn Don't execute MAC address initialization for non-pccard sn devices. 2000-01-22 17:24:16 +00:00
snp Remove cdevsw_add() - the make_dev() calls are already there. 1999-11-18 06:39:47 +00:00
sound Tidy up stray or bogus #if NFOO > 0 and #include "foo.h". 2000-01-29 18:48:30 +00:00
speaker Remove #if NFOO > 0 (it's not required in most cases) and also where it 2000-01-29 16:00:34 +00:00
sr Remove definition of the unimplemented "control" hook. 2000-01-21 01:39:40 +00:00
streams Rename remove_dev() to destroy_dev(). 1999-11-08 07:44:01 +00:00
sym Simplifications: 2000-02-13 12:14:07 +00:00
syscons - Don't reset text colors when changing the video mode. 2000-02-11 01:20:34 +00:00
ti Update the Tigon driver to use the 12.3.18 firmware release from Alteon. 2000-02-10 00:37:48 +00:00
tx Change incorrect NULLs to 0s 1999-12-21 11:14:12 +00:00
usb Correctly handle the conversion from virtual to physical addresses. The 2000-02-10 18:50:19 +00:00
vinum Give vn_isdisk() a second argument where it can return a suitable errno. 2000-01-10 12:04:27 +00:00
vn Fix a panic when doing non-multiples of PAGE_SIZE or misaligned transfers 1999-12-28 07:32:34 +00:00
vr Change contigmalloc() lower memory bound from 1MB to 0 to improve 1999-09-25 17:29:02 +00:00
vx Remove #if NVX > 0 and #if NEISA > 0 (and #include "eisa.h") as it's not 2000-01-29 14:50:32 +00:00
wi Add support for WEP (encryption) for silver and gold WaveLAN/IEEE turbo cards. 2000-02-02 17:59:13 +00:00
wl Remove NBPF conditionality of bpf calls in most of our network drivers. 1999-09-25 12:06:01 +00:00
xe Remove #if 0'ed reference to isa_device->id_alive 2000-01-23 18:21:20 +00:00