Commit Graph

264 Commits

Author SHA1 Message Date
thorpej 0584bf86a8 Make the MI LANCE driver standalone, and use cfattach to resolve
naming conflicts between bus attachments on ports that can have
multiple instances of the LANCE.

Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 01:32:31 +00:00
gwr 035d12359e Remove some hacks that "went around" the linesw[] operations. 1996-04-26 18:36:54 +00:00
christos 78403e6c0c Add a hardware dependent initialization function lehwinit() 1996-04-22 02:25:54 +00:00
cgd d7d306aeb7 change LANCE copy & zero functions' names to start with amd7990_, and
remove their 'integrate' (usually defined to be 'static') keywords.
when lance drivers are split up by attachment, more than one file will
reference the copy/zero functions (i.e. not just the file that pulls in
am7990.c... and eventually inclusion of am7990.c should go away entirely).
1996-04-18 00:25:11 +00:00
gwr d1ca7d4c47 minor cleanup 1996-04-07 05:47:26 +00:00
cgd 83f9bdc359 update for the fact that config_found() and config_rootfound() now
return pointers.  (Check vs. NULL, rather than just boolean tests.)
1996-04-04 06:25:00 +00:00
gwr a77bcc1072 replaced by if_levar.h 1996-03-26 23:17:13 +00:00
gwr f8a1588bfc This was carved up and reincarnated as si* 1996-03-26 22:08:24 +00:00
gwr 96918eaac2 obsolete 1996-03-26 22:05:53 +00:00
gwr 2e7e6c537d Use the traditional names (*reg.h, *var.h) 1996-03-26 22:04:14 +00:00
gwr 92d7925a57 No longer used. 1996-03-26 15:23:35 +00:00
gwr fa59facc05 New autoconfig design that controls attach order. 1996-03-26 15:15:46 +00:00
gwr e4b4200e43 Take advantage of the new config attach stuff by
splitting out the obio and vme support code.
Also move it back to the traditional name (si).
1996-03-26 15:01:10 +00:00
gwr 3d58330322 No longer need rd_match_hook. 1996-03-26 14:58:47 +00:00
gwr fa2d8c6e76 New driver for handling the memory error interrupt. 1996-03-26 14:57:43 +00:00
gwr 5ea3281a61 Adapt to redesigned autoconfig scheme for obio, and
define a fast ETHER_CMP routine for dev/ic/am7990.c
1996-03-26 14:42:18 +00:00
gwr 8eb8bb83b4 Take advantage of the new config attach stuff by
splitting out the obio and vme support code.
1996-03-26 14:38:29 +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
mycroft 1a55d915ae Don't call dvma_kvtopa() with a null pointer. 1996-03-08 06:17:35 +00:00
leo 6da2ce259c Allow for a machine dependent match function - rd_match_hook() 1996-03-07 10:25:28 +00:00
chuck 9f330ed6e0 Fix two bugs reported by Don Koch <aardvark@poirot.krl.com> (PR#2168).
(the xd bugs also apply to the xy driver...)
 [1] check return value from malloc() for NULL before trying to bzero it.
 [2] use "=" rather than "|=" when writing to CSR (otherwise you may
        ACK something you don't mean to!).
1996-03-04 20:25:32 +00:00
chuck e4c86dc3f8 Fix two bugs reported by Don Koch <aardvark@poirot.krl.com> (PR#2168).
[1] check return value from malloc() for NULL before trying to bzero it.
 [2] use "=" rather than "|=" when writing to CSR (otherwise you may
        ACK something you don't mean to!).
1996-03-04 20:22:50 +00:00
thorpej 2d885d15e9 Fixup an RCS id. 1996-02-28 20:54:50 +00:00
gwr 51815fdcd6 Kill a mis-matched and unnecessary declaration. 1996-02-28 01:48:48 +00:00
thorpej a246f6c835 Fixup some RCS ids. 1996-02-22 06:50:49 +00:00
gwr 3700dbe324 Correct the DMA transfer count when the target disconnects before
the whole transfer is completed.  (Affects VME writes)
Reselect now works on the VME si board!
1996-02-22 03:22:52 +00:00
chuck f63dd5fef2 sync with sparc version:
minor clean up: revise locations of disk_busy/disk_unbusy calls to match xd.c
1996-02-21 03:40:39 +00:00
gwr c59b002704 Sync. with sparc version, and fix some cosmetic nits... 1996-02-16 20:36:11 +00:00
gwr 9433112204 Have <sys/param.h> so no need for <sys/types.h> 1996-02-16 20:33:27 +00:00
gwr bcfac202c8 No longer need delay2us(), just use delay(2) 1996-02-16 18:00:33 +00:00
gwr 89c2f6dc04 now in sys/dev 1996-02-13 17:29:15 +00:00
gwr 9e07977e11 no longer useful 1996-02-13 17:27:41 +00:00
gwr 2e06ee143c Avoid 3/50 H/W bug (I hope) 1996-02-12 05:19:09 +00:00
chuck 718ac5d246 [import changes from sparc port]
- moved disk_busy() call from xdstrategy() to xdc_startbuf()
        [prevents disk_unbusy panic when disk is loaded (if no
        free IOPBs, xdstrategy() would queue the buffer for pickup
        by xdcintr() but xdcintr() would never call disk_busy().
        xdc_startbuf() is a better place since all bufs are routed
        through here]   problem detected by girish@dworkin.wustl.edu,
        diagnosed and corrected by me.
- move disk_unbusy() call in xdc_remove_iorq() before the call to
        XDC_FREE() [don't want to access a data structure that was just put
        on a free list]
1996-02-08 04:42:57 +00:00
gwr f2e57c6dc8 Eliminate remaining direct references to the z8530 chip
to allow the MD access functions to do delays, etc.
1996-01-30 22:34:52 +00:00
gwr f261ae08c7 Update for the new z8530 driver 1996-01-24 22:39:48 +00:00
chuck 8f339409b7 sync with sparc:
- move disk_attach() to before reading the disk label as per Jason.
	otherwise we are reading into an unallocated buffer (oops!)
1996-01-13 03:50:05 +00:00
thorpej 5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
thorpej 7e01b868cc It's safe to use <dev/ic/ncr5380*.h> now. 1996-01-01 22:51:26 +00:00
mycroft 3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
mycroft 9ca6a401eb Use the MI LANCE code. 1995-12-10 08:46:05 +00:00
gwr 5d5c8d0d4b Latest, greatest version of the new NCR driver.
DMA works!  Interrupts work!  Disconnect/reselect works!
To be paranoid, leave that all disabled for now...
1995-11-17 23:27:41 +00:00
gwr 6b20139b41 Add copyright 1995-11-17 23:24:56 +00:00
gwr 3dcdca7c52 Allow unit != 0 1995-11-10 21:59:30 +00:00
gwr b3a6cbaeb0 New from Chuck Cranor: drivers for SMD disks!
xd: Xylogics 753/7053 SMD disk controller
xy: Xylogics 450/451 SMD disk controller
These now compile, but have not been tested.
1995-10-30 20:58:04 +00:00
gwr 93d0f65970 New SCSI driver for the NCR5380, by David Jones.
Does DMA with interrupts.  Much faster than our old
driver which did only PIO transfers. (Thanks David!)
Could be used on the amiga, and probably others...
1995-10-29 21:19:06 +00:00
gwr f966527839 Work around the LANCE Rev. C bug in a way that does not cause error
messages when BPF puts the interface in to promiscuous mode.
1995-10-27 15:53:39 +00:00
gwr df737690d7 Remove (again) things accidently revived by cvs tag... 1995-10-13 19:37:06 +00:00
gwr 09cbbafa0a Minor cleanup. 1995-10-08 23:42:58 +00:00
gwr f5bcca1fab Machine-dependent part of the new RAM-disk driver.
This module lets one build a stand-alone kernel.
1995-10-08 23:42:42 +00:00
gwr 1b6586b2bb Note that this should be merged with dev/ic/i82586reg.h 1995-10-08 23:41:36 +00:00
gwr 13fa3c4fe6 Temporary hack to restrict open to root or the
same UID as the session attached to /dev/kd
1995-10-08 23:40:42 +00:00
gwr 3c868e07f9 New DVMA interface, and various cleanup. 1995-09-26 04:01:53 +00:00
gwr 2666f17777 SCSI bus phase not valid until REQ is true (Fix from David Jones). 1995-08-14 20:00:00 +00:00
mycroft 80d7b0695a minphys() functions really should return void. 1995-08-12 20:30:45 +00:00
gwr c96c328a9d Use old-style function definitions (like the sparc driver). 1995-08-08 20:54:08 +00:00
gwr 2a3eef935e Improve handling of a device that "sits on" the bus (from Jason Thorpe) 1995-08-08 20:53:16 +00:00
cgd ffe4785a58 update SCSI minphys routines' definitions to match standard minphys()
definition and usage.
1995-07-24 07:33:32 +00:00
gwr c4746effe0 Correct !DDB console abort (thanks to David Brownlee) 1995-07-03 02:52:13 +00:00
cgd 2b71eae2c7 note that most of dev/ic's contents have changed names 1995-06-28 04:30:30 +00:00
gwr 3a59870c12 Leave modem control lines in correct state on interrupted open.
(From sparc/dev/zs.c)
1995-06-27 14:36:20 +00:00
gwr f872dedb62 Catch up with net/if.h changes 1995-06-27 14:34:32 +00:00
gwr 64543c95b6 Fix several missing (and REQUIRED) calls to ZS_DELAY() 1995-06-13 22:11:33 +00:00
gwr 9b910268e1 Better reset code, and reset the chip when it goes comatose. 1995-06-01 20:22:17 +00:00
gwr 6e6f7ede65 Improve probe (should reject "sc" board now) 1995-05-24 20:52:27 +00:00
gwr 51e2d10bd0 Sunc with sparc version (adds key repeat capability) 1995-05-24 20:51:31 +00:00
gwr 20f34f40d2 Turn off IFF_MULTICAST for now... 1995-05-24 20:49:38 +00:00
gwr 29e0f797d4 Fix missing return(0) - from Jason Thorpe - fixes PR 1049 1995-05-24 20:47:41 +00:00
gwr ac1a62db29 Add xxtty() 1995-04-26 23:20:15 +00:00
gwr 6d7bcdbd2a Add work-around for LANCE Rev. C bug.
Needs to be fixed for multicasts...
1995-04-26 23:19:16 +00:00
gwr ef7ca50d54 Make less noise about CRC/Framing errors (Sun3/50 gets lots of them). 1995-04-16 01:52:07 +00:00
gwr 06e64bc965 arpwhohas -> arp_ifinit etc. 1995-04-13 21:54:55 +00:00
gwr 6ab590ff6b fix typo 1995-04-13 21:51:34 +00:00
mycroft 369e66a776 Sync with the rest of the world. 1995-04-11 06:03:36 +00:00
mycroft 3b6535707e Use global 8530 defs. 1995-04-11 02:41:42 +00:00
gwr 89c2b367b3 Oops, sparc -> sun3 1995-04-10 22:11:22 +00:00
mycroft c126c9401f Add a dummy kdstop(). 1995-04-10 07:33:53 +00:00
mycroft 795010b56c map --> mmap 1995-04-10 07:04:18 +00:00
mycroft 63dcb06933 Add promstop(), adjust return types, make sure ttselect() doesn't panic, and
obey standard style conventions.
1995-04-10 06:14:57 +00:00
mycroft ca5caf005a map --> mmap 1995-04-10 05:45:26 +00:00
gwr f0dfc32ae9 Sync with net/if.h changes 1995-04-09 05:08:33 +00:00
gwr a1cc6d49c4 It works now. 1995-04-08 04:40:27 +00:00
gwr d0d1dc8a4e Fix that probe sequence right this time. 1995-04-07 05:19:24 +00:00
gwr 0af73b6fc3 Changed fb_attach() interface 1995-04-07 02:51:21 +00:00
gwr 19c01b5c67 Corrected fbtype->fb_size (which x11r6 is picky about...) 1995-04-07 02:47:40 +00:00
gwr 637b45dbf2 Changed fb_attach() interface, hack probe to avoid impossible matches.
Corrected fbtype->fb_size (which x11r6 is picky about...)
1995-04-07 02:43:25 +00:00
gwr d49502cfa2 Changed fb_attach() interface 1995-04-07 02:37:18 +00:00
gwr 1feb639a38 First cut at cgtwo driver. Not quite right yet. 1995-04-07 02:31:45 +00:00
gwr cd70d15138 Avoid passing non-ASCII chars to the PROM.
Call PROM at splsoftclock to avoid missing interrupts.
1995-03-28 16:09:41 +00:00
gwr 507979e02b Increase ZSSOFT_PRI from 2 -> 3 now that tty ipl is 4. 1995-03-27 01:25:20 +00:00
gwr e2d6f35c09 The splbio()/splx(s) is now appropriate even if SCSI_POLL is set. 1995-03-26 19:23:12 +00:00
gwr a1bc8a65f8 Cleanup, and deal with kd != console 1995-03-24 19:48:41 +00:00
gwr ee5c85f6a1 Synthesize KBD_L1|KBD_UP after return from zsabort.
Simplify PROM mapping stuff, use ee_console.
1995-03-10 02:15:03 +00:00
gwr 8119e6377d Add kdcnpollc so it can call fb_unblank 1995-03-10 02:09:35 +00:00
gwr 151da5e380 Provide ee_console for drivers. 1995-03-10 02:06:54 +00:00
gwr 376432783f Set speed on open (from Chuck Silvers). 1995-03-10 01:57:02 +00:00
gwr 63c3c68de4 New frame-buffer support from Chuck Silvers (plus some tweaks from me) 1995-03-10 01:50:28 +00:00
gwr 25590bff04 Oops, forgot to lock out interrupts while clearing zssoftpending. 1995-02-14 22:40:00 +00:00
gwr d75dab3a1b DVMA slave mapping support. 1995-02-13 22:23:55 +00:00
gwr 19eaeec924 Moved some functions here from sun3_startup.c 1995-02-11 20:57:11 +00:00
gwr 9b01d8f4d0 Updated ie driver based on i386 version 1.30 1995-01-26 23:23:34 +00:00
gwr 202a15ade7 Now works on VME as well (or as poorly) as on OBIO. 1995-01-24 05:55:48 +00:00
gwr b18b87854c Increase TX buf size to fix overrun bug. 1995-01-24 05:50:51 +00:00
gwr c148a69816 Cleanup 1995-01-11 20:38:23 +00:00
gwr 0a1967ac6d Enable VME configuration. 1995-01-11 20:32:08 +00:00
gwr fe2c68f0d3 Fixed to work with the new SCSI code (thanks to Phil Nelson). 1995-01-10 16:45:26 +00:00
gwr 0969e0306d New, improved "le" driver from Charles Hannum and Paul Richards. 1995-01-03 15:43:36 +00:00
gwr 12fae60ada Update for new SCSI. 1994-12-31 01:04:00 +00:00
gwr f76865d16d Fixes for the 110, 160, 260 (leave chip in "vector" mode). 1994-12-21 23:56:43 +00:00
gwr fdca66b8d1 Fix kd (keyboard/display) driver kdcngetc/kdcnputc functions. 1994-12-17 20:14:22 +00:00
gwr 0402f426b8 Fixes to make "ie" work (from Chuck Silvers -- Thanks!) 1994-12-15 21:08:06 +00:00
gwr 9b62fc5394 Set params in attach so BREAK works before first real open. 1994-12-15 04:34:06 +00:00
gwr 10e46730cf Support TIOCGFLAGS, TIOCSFLAGS (from Matthew Green via Theo). 1994-12-13 18:35:56 +00:00
gwr bfae9f3105 Have working bus_peek(), and drivers use it. 1994-12-13 18:26:39 +00:00
gwr fe52f9ae4f New autoconfig interface to support VME, etc. 1994-12-12 18:58:45 +00:00
gwr 2529298878 Export some headers that X will want, and minor clean-up. 1994-12-01 22:46:23 +00:00
gwr 49e502d8f9 New cd_match prototype. 1994-11-23 08:13:53 +00:00
gwr 59bf96aa56 Lots of changes. Fairly stable now. 1994-11-21 21:26:40 +00:00
cgd 20af809ca2 new RCS ID format. 1994-10-26 09:07:55 +00:00
gwr 2dba7bd973 New functions to handle writing EEPROM with correct delay.
Also provides ee_get_byte() for early use by other drivers.
1994-09-20 16:35:44 +00:00
gwr 1b53c4c36c Add obio_find_mapping() for use by devices that need mappings before
autoconfiguration is done.  It re-uses the PROM's mappings now.
1994-09-20 16:24:45 +00:00
gwr ca73a257a8 Correct some misinformation about recovery time. 1994-09-20 16:23:06 +00:00
gwr 51afe89406 Call obio_alloc with just two args (mappings always writable). 1994-09-20 16:21:44 +00:00
gwr 7b4643faf3 Add Theo's fix for "must be one" bits in tdr2. 1994-07-11 03:31:17 +00:00
gwr 6ea87b0150 Add a fix for slow devices from Phil Nelson. 1994-07-06 02:53:39 +00:00
gwr 8db19b31db Make initial tty mode the same as the PROM uses
(so you can read the console messages).
1994-06-28 21:42:32 +00:00
gwr 54fc06357a Fix initialization of keyboard port (works now). 1994-06-03 02:05:18 +00:00
glass 8c2bffa529 have typecast, will compile 1994-05-30 06:22:36 +00:00
gwr a4aa1b4b57 New version (from Theo (from 4.4)) - supports multicast. 1994-05-28 15:45:51 +00:00
gwr 0819c2c23a ...try again... 1994-05-28 15:43:49 +00:00
gwr aa157d3780 junk removal 1994-05-28 15:40:25 +00:00
gwr 882edcc1f3 Add TIOCSBRK/TIOCCBRK support. 1994-05-20 05:19:31 +00:00
gwr fa2c59089d Remove some cruft left over from debugging. 1994-05-16 23:11:42 +00:00
gwr e349dc8982 Add call to ether_ifattach() for Lite network code. 1994-05-16 16:45:25 +00:00
gwr 9456eaca13 SCSI driver works! 1994-05-13 15:01:39 +00:00
gwr 92e6bede68 Tracking 4.4 integration 1994-05-06 07:47:05 +00:00
gwr 3162c422e2 put in some cnputc fixes missed last night 1994-05-05 06:54:08 +00:00
gwr aa2348a426 cosmetic 1994-05-05 04:46:51 +00:00
gwr 2ae9ef44af changes to use generic dev/cons.c 1994-05-05 02:59:37 +00:00
gwr 93fa1563a6 Get initial mappings for console routines.
Use the kd device instead of tty rewiring mess
1994-05-04 05:34:14 +00:00
gwr 21e4034d51 Make ZS_DELAY() use the new delay2us() function. 1994-05-04 05:30:35 +00:00
gwr bfcbf0f513 Add zs0_va, zs1_va 1994-05-04 05:29:25 +00:00
gwr c224b41c38 This provides a tty device for dev/cons.c to point at. 1994-05-04 05:27:50 +00:00
glass 79e6634ac0 compiles again. also cleanup of development printfs. and trap stuff 1994-04-17 06:31:10 +00:00
glass 8db6d0d6fb do nothing obio_probe_byte() 1994-03-16 04:35:36 +00:00
glass 0ceda577d0 zs supposedly works 1994-03-15 07:40:32 +00:00
glass 7df1653c73 change receive freq 1994-03-06 04:38:55 +00:00
glass f7f69f9b04 canonicalize includes. cleanup. missing copyrights. 1994-03-01 08:07:12 +00:00
glass 8461eac15e boots, presents shell prompt, and doesn't crash immediately 1994-02-23 08:28:11 +00:00
glass 06932ce0f8 Now works with current tree, as opposed to the july 8th tree in which it was
written.
Requires magnum infrastructure now, particularly the clock stuff.
Fails to exec init because the /sbin/init binary
is a sunos binary.  Next step is to integrate sunos compatibility code
from /sys/compat/sunos, and the amiga port.
Does not yet implement MACHINE_NOCONTIG support.

[from glass Mon Nov 22 21:22:45 PST 1993  home tag: home2]
1993-11-23 05:28:35 +00:00