Commit Graph

44 Commits

Author SHA1 Message Date
pk
2dd9317452 Remove reference to sense code "internals". 1996-03-23 21:09:04 +00:00
thorpej
3cd14f7597 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 02:00:30 +00:00
christos
fe4bb997c9 fix format in panic() 1996-03-16 23:28:30 +00:00
christos
03b701e393 Bring prototypes into scope and fix compiler warnings. 1996-03-14 19:44:30 +00:00
pk
90fb0cc9da Don't come down so hard on targets that ignore SDTR msgs. 1996-03-05 09:29:58 +00:00
pk
abd3cf4df2 Don't reset `xs->retries'. 1996-02-29 23:33:48 +00:00
pk
517988b940 Interims:
Comment out `STATINT' checking; this is apparently unreliable on some
ESP revisions.
Deal with target initiated synch re-negotiation.
1996-02-26 14:48:30 +00:00
mycroft
291267e40c Implement SDEV_AUTOSAVE. 1996-02-22 23:35:04 +00:00
pk
66fedbbe19 Correct format in a printf(). 1996-02-21 10:21:14 +00:00
pk
d5ddbf99ab Separate DMA and SCSI routines more. 1996-02-12 15:59:51 +00:00
pk
52c068d6e6 Be sure to reset the chip when relection fails to prevent corrupting data. 1996-02-06 02:03:46 +00:00
pk
644c68a706 Towards machine independency, per cgd: macros to access hardware registers. 1995-12-18 23:58:31 +00:00
pk
0d1981416d Adapt to changed mapiodev() interface. 1995-12-11 12:43:14 +00:00
pk
8a1606d530 Don't return `XS_DRIVER_STUFFUP' too easily; this can hose buffer cache
writes. Say XS_TIMEOUT in stead so the scsi code will retry.
1995-12-01 01:00:55 +00:00
pk
ce474272f1 Prevent synch negotiation on ESP100 chips 1995-11-28 22:49:31 +00:00
pk
9bf3251e46 Lots of major and minor bug fixes and changes.
- properly do MSG_IN handshaking, so we can actually receive multi-byte msgs.
- do synch negotiation (now that the above works).
- handle disconnects.
There are a few trial-and-error bits at points where the docs I have are
particularly ambiguous about the state of chip and/or SCSI bus.

Things to do:
- more cleanup
- deal with MSG_OUT phase better
- keep some "config reg 3" bits per target (ie. FASTCLK and FASTSCSI).
1995-11-28 20:49:12 +00:00
pk
996526aa02 Make error recovery actually work, i.e. don't hang on SCSI bus resets
and re-synchronize before re-scheduling pending operations.
Things seem to be a fair bit stabler now.
1995-11-03 16:47:43 +00:00
pk
a3f2bf19e4 Various:
- make esp_poll() approximate the given timeout value.
	- introduce esp_abort(), and use it for timed out commands; make		  targets and driver less confused.
	- make {free,ready,nexus}-list management somewhat more coherent.
	- make sure we only proceed down the state machine in espintr()
	  if there really is an interrupt pending.
1995-10-24 16:03:57 +00:00
pk
db43cabe32 Re-instate configuration print routines, following Chris' suggestion.
Only prints something if there's no scsi bus to attach.
1995-09-14 20:38:53 +00:00
pk
9d7c17bfcb We have no need for esp_print()'; the only child we expect is a scsibus',
and there's nothing to say if it isn't there. Returning -1 is an error
anyway as noted by Chuck Cranor.
1995-09-11 19:41:21 +00:00
pk
bac2393fb0 Probe config registers correctly. 1995-09-06 12:35:38 +00:00
pk
7b7773a0c5 Use bootpath_store() to set next boot component; used in dk_establish()
to match `sd' devices against the PROM's boot path.

Detect DMA "overshoots" when handling odd-sized transfer sizes (e.g., xfers
from/to raw partitions), by using the "Transfer Pad" command when the
transfer count reaches zero.
1995-08-18 10:43:46 +00:00
cgd
ffe4785a58 update SCSI minphys routines' definitions to match standard minphys()
definition and usage.
1995-07-24 07:33:32 +00:00
pk
cdbe7b1bc5 Have esp_minphys limit transfers to MAXPHYS bytes. 1995-07-13 12:45:22 +00:00
pk
4770e5e7c5 Try to recover from multi-byte messages sent by a target for which we
get an "Illegal command" (why is this?) when we try to pull it in.
On detection of this condition, we reset the SCSI bus and simply stop asking
this target for an identify messages, for now.
1995-06-02 13:43:30 +00:00
pk
c897fc5127 Better 4/100 support. 1995-03-01 21:09:19 +00:00
pk
f6cd1eeea7 Integrate changes from Chuck Cranor for the Sun 4/100.
Support for multiple register banks on SBUS devices (based on patches
from Francis Dupont).
Highlights:
	romaux defines an array of register spaces.
	pay attention to `vactype'.
	quirks handling 4/100 idiosyncracies.
1995-02-01 12:37:21 +00:00
mycroft
5a7fac721d Handle incoming messages longer than 1 byte correctly. 1995-02-01 09:50:18 +00:00
mycroft
81b3059a98 ESP_ID -> ESP_SELID 1995-01-07 05:17:59 +00:00
pk
2a22c853db Adapt to changed SCSI subsystem. 1995-01-02 20:21:01 +00:00
deraadt
941871d6ab XXmatch change (and a few __P() as well) 1994-11-23 07:02:02 +00:00
deraadt
d3408abf29 C error 1994-11-21 01:56:38 +00:00
deraadt
274a90762d copyright/Id cleanup 1994-11-20 20:51:32 +00:00
deraadt
4cd7c0f34e reset scsi bus at attach time 1994-11-05 09:35:54 +00:00
deraadt
2fb5b874a1 sbus_establish() is sun4c/sun4m specific 1994-10-15 08:57:20 +00:00
deraadt
3ae3c206d7 mapiodev takes a bustype argument now 1994-10-15 05:48:47 +00:00
deraadt
425833d1b0 sun4/300 support works 1994-10-02 21:59:56 +00:00
deraadt
1340faab13 Replacement esp (NCR 53C9X + LSI DMA) scsi driver from Peter Galbavy. 1994-09-17 23:48:32 +00:00
deraadt
bdf0a4caf3 fix for bug #403 from <grossman@informatik.tu-muenchen.de> 1994-08-13 08:53:38 +00:00
deraadt
f79d935940 new from torek; now multiple drives will work 1994-05-27 02:38:15 +00:00
deraadt
beab56ab90 new from torek:
add torek's comments to my DMA_DRAIN fix
1993-11-12 00:50:48 +00:00
deraadt
80a1356c75 DELAY(1) after a DMA_DRAIN, to let the esp chip have a chance to
recover from the DMA.. seems to let my ss1+ work with the cache enabled.
+ also esp reset code from Torek.
1993-11-05 12:41:54 +00:00
deraadt
e8c24a667b sys/dev/scsi -> sys/arch/sparc/scsi. 1993-10-27 18:14:16 +00:00
deraadt
4588caefaa Chris Torek's sparc port. Missing lots of things. 1993-10-02 10:22:00 +00:00