Commit Graph

193 Commits

Author SHA1 Message Date
pk
7987c7fce9 Use def_width' and def_height' as default values when getting rom properties. 1995-12-10 22:55:32 +00:00
mycroft
494a9b9eb9 Use the MI LANCE code. 1995-12-10 10:15:06 +00:00
pk
480398f38e dvma_malloc => malloc/dvma_mapin. (not the most elegant solution, but it'll
have to do for now).
1995-12-06 22:40:22 +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
ee08e9085b Extend the size of the "soft" FIFOs which reportedly reduces the number
of FIFO overflows on high baud rates.
However, doing so on all 4 ports would cost a whopping 64KB (at 4096 entries
per FIFO) of kernel memory. So, the FIFOs are now allocated at attach time
allowing the size for the keyboard and mouse ports to be reduced (to 128)
which should be adequate for the 1200 baud they use.
1995-11-29 23:41:31 +00:00
pk
12bfe2e68e Must change u_long' to u_int32_t' as Jason pointed out. 1995-11-29 22:03:53 +00:00
pk
e9a919b88f Code from Jason to better configure /dev/fb. 1995-11-29 01:45:36 +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
def161af38 Careful with signed chars (caddr_t *!).
Merge in 1.1 changes.
1995-11-28 20:26:59 +00:00
pk
c7d1d39b3e dk_device => device in controller structure (noted by Jason Thorpe). 1995-11-11 21:12:50 +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
bbdb422873 Stop DMA before resetting 1995-11-03 16:34:12 +00:00
pk
c0a156c9fd Map pixels in VME32 space 1995-10-28 23:15:16 +00:00
pk
e4fcc8ab5a Move DMA chip draining to dmaintr() and drain when a (possibly partial)
transfer ends in stead of doing it before starting a new transfer.
Use a different CSR bit to wait for "chip not busy" (may be necessary to
make this conditional on chip revision).
1995-10-24 16:26:54 +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
7a9ddaff33 On-board bwtwo diddles a system enable register bit for video, per Jason
Thorpe (PR#1672).
1995-10-23 23:35:03 +00:00
pk
c4dc969b09 Point `bootdv' at the disk device instead of the controller (from Jason Thorpe). 1995-10-09 22:33:07 +00:00
pk
53eb8f8175 RASTERCONS now works on sun4's too. 1995-10-09 15:39:34 +00:00
pk
1ad1d128e3 Fill in `ascent' values correctly. 1995-10-08 19:31:44 +00:00
pk
87a0c55d23 Patch from Jason to factor out a common framebuffer size determination
routine from the individual drivers.
1995-10-08 01:39:13 +00:00
pk
aea329df61 rcons: rc_maxcol and rc_maxrow were swapped. 1995-10-05 13:16:57 +00:00
pk
c8f10b184c Do not set `ra_len' in bwtwomatch(); we only need the pixels for CONSOLE,
but if so, we need the lot.
1995-10-05 00:33:23 +00:00
pk
b79dc038d5 Machine dependent RASTERCONSOLE font definition to be passed to rcons_init(). 1995-10-05 00:02:54 +00:00
pk
d19cacbb03 RCONSOLE => RASTERCONSOLE. 1995-10-04 23:35:13 +00:00
pk
32c023995c Bring reset logic into interrupt state machine. 1995-10-03 17:32:12 +00:00
pk
fcc53878ca Make fbrcons_init() resistant against SUN4s. 1995-10-02 21:48:21 +00:00
pk
cfbe993b9b Update to use <machine/cgtworeg.h> 1995-10-02 21:44:51 +00:00
pk
38d1101ad3 Silly me.. there's already a <machine/cgtworeg.h> 1995-10-02 21:44:22 +00:00
pk
fb58a99a8f Fix some bogus calls to {read/write}disklabel(). 1995-10-02 21:04:45 +00:00
pk
82434458cc Get some of the bugs out. Thanks to David Gilbert for testing. 1995-10-02 09:07:03 +00:00
chuck
b47de9fb69 new "xy" disk device driver from me.
the "xy" driver runs Xylogics 450/451 SMD disk controllers.
1995-09-25 20:35:14 +00:00
chuck
1779adf6be minor cleanups:
- don't let pcyl go unassigned if we have a non-sunos disklabel.
		if nothing else, guess pcyl = ncyl + acyl.
	- don't use bogus disklabel data if disk label is invalid
		(xdgetdisklabel() now returns if label was ok or not).
	- move xddriver decl. before start of actual code (cleanup).
1995-09-25 20:12:44 +00:00
chuck
2aff99a206 bug fix: xddummystrat() was clearing all but B_BUSY when it should
have been clearing just B_BUSY (s/B_BUSY/~B_BUSY/).    this
	fixes hard hang when reading disklabel when booting system.
minor clean up: added a few prototypes and only fool with bootpath
	if booting the system (in xdattach).
1995-09-25 16:02:09 +00:00
chuck
4408ec71bf init bad144 table before we actually try and read anything from the
disk, rather than init'ing after reading block 0 [in case we get an
error reading block zero].
1995-09-24 00:27:59 +00:00
pk
4025edc861 Make this compile again by calling readdisklabel() with a dummy strategy routine.
XXX - need some reorganization to this from xdopen().
1995-09-18 23:26:39 +00:00
pk
c5bc107461 cgtwo framebuffer, cloned from cgthree.c and sun3's cg2.c.
Note: untested, shall be considered a framework to get things started..
1995-09-17 20:53:43 +00:00
pk
c92d076f5b Change interface to th `fb' pseudo device to not need the major device
number (a la sun3).
Put in new glue for rcons.
1995-09-17 20:43:39 +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
0a5ab32e3d We have no need for si_print()'; the only child we expect is a scsibus',
and there's nothing to say if it isn't there.
1995-09-11 19:35:06 +00:00
pk
bac2393fb0 Probe config registers correctly. 1995-09-06 12:35:38 +00:00
pk
003751356c Patches from Jason Thorpe to deal with 4/110 scsi (PR#1422). Also includes
bootpath glue (PR#1414) (this needs finishing off in disksubr.c).
1995-09-03 22:21:27 +00:00
pk
a4e214aef0 If we're the console, say so in attach message. 1995-08-29 22:26:37 +00:00
pk
a159e45699 Support for sun4 (from Jason Thorpe). 1995-08-29 22:20:01 +00:00
pk
15c28bc39a Sun4s must set baud rate on the mouse port (from Jason Thorpe). 1995-08-29 22:15:35 +00:00
pk
4bdcdaa4e3 define reserved bits in cfg2 & cfg3 registers correctly. 1995-08-29 20:05:22 +00:00
pk
a3bb091c9e Do bootpath matching. 1995-08-18 22:03:59 +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
pk
ffbae23b6e Set `bootdv' if booted from the floppy drive. 1995-08-18 10:30:16 +00:00