Commit Graph

334 Commits

Author SHA1 Message Date
jeremy 4502541573 When turning off the drive motor, de-select the drive so the busy light
extinguishes.
1997-05-30 03:23:11 +00:00
jeremy fc60f1979e Prevent RAM disk hooks from compiling until sun3 md_root.c can support
ram disk images that are read in from the outside.
Sync with some old local changes.
1997-05-24 00:09:49 +00:00
gwr 589bdf49d5 si_intr: if our CSR indicates an interrupt, return 1. 1997-04-28 22:10:41 +00:00
gwr df35245ac0 Fix a bug where OBIO locators were not presented to the children.
Rename obio_alloc to obio_mapin; add comments, etc.  (like sun3x)
1997-04-28 22:02:43 +00:00
gwr 388bf0e0e0 Rename obio_alloc/obio_mapin and check for obio in match functions
for attachments that will use obio_mapin.
1997-04-28 21:59:19 +00:00
gwr a5efc65699 Sync. up with the sun3x version. 1997-04-28 21:55:59 +00:00
gwr 479d3fa66d No longer needs an early init call (just normal autoconfig). 1997-04-28 21:51:49 +00:00
gwr e2ca51d2a1 Fixed OBIO locators bug, so this can do the normal thing now.
Also improved handling of spurious interrupts, and sync up with
the sparc version.
1997-04-25 18:55:05 +00:00
jeremy fa9f5b2448 Constants for the p4 register. 1997-04-09 04:50:43 +00:00
jeremy 3c962bb544 First working version. 1997-04-09 04:49:09 +00:00
gwr c3f299a527 Now using dev/ic/ncr53c9x.c 1997-03-20 16:01:36 +00:00
gwr 9f13c3afe5 Read the EEPROM once at attach time, then do user I/O on the copy.
Make /dev/eeprom support normal "read to EOF" behaviour.
Removed ee_console, ee_get_byte (dead code).
1997-03-18 23:31:59 +00:00
thorpej 1d987a161b #include <net/if_media.h> 1997-03-17 03:17:34 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
gwr 4756c63625 Call isr_soft_request() at most once per zshard interrupt.
In the softintr, raise to spltty before calling tty code.
1997-03-11 21:54:35 +00:00
gwr d0a45ab470 Use the macros sc_if, sc_addr to avoid lots of references to sc_arpcom. 1997-03-10 21:45:01 +00:00
gwr 403bdb83fa Add xxc_print functions to pass to config_found() instead of NULL.
(Thanks to Chris Demetriou suggesting the improvement.)
1997-02-28 21:23:06 +00:00
gwr 1354ca2916 Get rid of some printf noise. 1997-02-28 17:17:22 +00:00
gwr 07b4e45308 Allow per-target control over disconnect/reselect. 1997-02-26 22:26:00 +00:00
gwr ae70fb71ec No need for dma_cd, so move it into the #if 0 section too. 1997-02-24 15:02:23 +00:00
jeremy ad9700fa62 Initial import from SPARC port. 1997-02-24 01:45:13 +00:00
gwr 7e74608bf9 Get the screen size right on the 3/260 (Fixes PR#2402) 1997-02-19 00:22:40 +00:00
gwr 443faad4e1 Reorganize/simplify the way the memory layout is done.
Update to the latest sys/dev/isa/if_ie.c (new ieget).
1997-02-13 20:48:36 +00:00
gwr 5997a69a3e Tune MXFRAMES and MXFRAMES down a little.
Reorganize the softc for convenience in ddb.
1997-02-13 20:43:18 +00:00
gwr 6a83772a4e Replace caddr_t with u_int in device structs.
Reduce MAXMCAST by a few to be safe.
1997-02-13 20:40:11 +00:00
gwr a4b09086fe Actually works now! 1997-02-12 01:07:56 +00:00
gwr f55c7652b7 Export zs_get_chan_addr() for zs_kgdb.c
Print the "console on ..." in cninit(), and
avoid reference to kbd/kd drivers if NKBD==0
1997-02-10 23:29:52 +00:00
gwr 196f91101a Make some more things static, and cosmetic stuff. 1997-02-10 23:26:21 +00:00
gwr 9f9e8281e0 Add zs_get_chan_addr(), zs_kgdb_init() 1997-02-10 23:24:18 +00:00
gwr a5b114c665 Forgot to initialize cn->cn_dev, cn->cn_pri 1997-02-10 19:11:12 +00:00
gwr d9267b93fd Forgot to initialize cs->cs_rr0_dcd and fiends in attach. 1997-01-31 00:07:06 +00:00
gwr 46cb437677 Nuke sunmon.h, add machdep.h 1997-01-27 21:57:44 +00:00
gwr ca8e9852d2 Use sunmon_abort() instead of mon_panic(), etc. 1997-01-27 20:50:36 +00:00
gwr 9b52402303 Use sunmon_abort() instead of mon_panic()
Let idprom_init() have void return.
1997-01-27 20:35:58 +00:00
gwr f8d04bcffb Update comment about si_obio_options 1997-01-27 19:54:06 +00:00
gwr 340699a2b1 Fix copyrights (/s/REGENTS/FOUNDATION/) 1997-01-27 19:40:46 +00:00
gwr dff67a76a8 Map regs using sizeof(struct lereg1) instead of OBIO_AMD_ETHER_SIZE.
Also fix copyright (s/REGENTS/FOUNDATION/)
1997-01-27 16:57:12 +00:00
gwr 090dfd13c2 Now that interrupts are enabled AFTER autoconfiguration, put in the
cute little trick where the zs interrupts are enabled as soon as the
zs driver has done its attachments.   That allows a console break to
enter the debugger during the rest of autoconfiguration.
1997-01-18 19:49:01 +00:00
gwr 84bd1d6f2c Use the same names (OBIO_ZS_*) as the sun3x port... 1997-01-18 19:17:28 +00:00
gwr 8ea480525d Use the same names (OBIO_ZS_*) as the sun3x port so we can share zs. 1997-01-18 17:19:52 +00:00
pk 3bbf01bfb7 rename: ramdisk => md 1996-12-28 23:53:10 +00:00
gwr 3cc81b9726 Add a diagnostic to panic when obio config data has a
default address, which is no longer supported on obio.
1996-12-17 21:21:13 +00:00
gwr 0c5e3e4955 Make this compile with -Werror -Wall -Wstrict-prototypes
(finally! yea!)  Also get rid of __BROKEN_INDIRECT_CONFIG
1996-12-17 21:10:35 +00:00
gwr 1169ecb0a2 Adapt to the new definition of struct zsc_softc
(the zsc_cs[2] members are now POINTERS!)
Also fix warnings...
1996-12-17 20:46:11 +00:00
gwr 31a2dbff56 No longer used. 1996-12-14 15:51:31 +00:00
gwr 5eaee56ccf Increase MAXMCAST from 50 to 250 (to match dev/ic/i82586.h). 1996-12-13 19:54:08 +00:00
gwr 5736d8f544 Kill some dead code. 1996-12-13 19:50:10 +00:00
gwr 0332502588 Most files that were copyright Adam Glass and/or Gordon W. Ross
are now copyright The NetBSD Foundation (rights assigned).
1996-11-20 18:56:49 +00:00
gwr 576fa146ac kill some outdated stuff 1996-11-19 20:58:32 +00:00
thorpej a0dffcafc2 Use bitmask_snprintf(). 1996-11-13 07:00:30 +00:00
gwr f9d54194d5 Allow the config line "flags" to set bits in si_options.
Thanks to Jason Thorpe for the fix! (PR#1929)
1996-10-30 00:31:39 +00:00
gwr 769fe0dfca Get rid of some cruft in the match function. 1996-10-30 00:24:32 +00:00
gwr aac9e275ac Add a "submatch" function to the obio bus driver so the children
of this driver can get rid of the cruft in their match functions.
1996-10-30 00:20:01 +00:00
gwr d6dfd783d9 Checkpoint new version of this driver with support for the "Type A"
variant of the CG4 (the one with the AMD colormap DACs).  This has
been tested only on the "Type B" H/W at this point (Brooktree DACs).
Thanks to Ezra Story and Scott Ellis for the "Type A" support.
1996-10-29 19:54:19 +00:00
gwr cb78378201 Fix typo (fbattach => fb_attach) 1996-10-29 19:27:37 +00:00
christos a087bfeb5c backout previous kprintf change 1996-10-13 03:47:25 +00:00
christos 19d8368f2f printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:44:42 +00:00
thorpej 401d011da6 Merge netbsd-1-2 branch back into mainline. 1996-10-09 00:14:32 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
chuck c0bae2d189 sync with sparc version:
repair XDC_HWAIT macro to handle the fact that waithead is now
unsigned.   should fix xdc watchdog timeouts noted in port-sparc
by nathanw@mit.edu.
1996-08-12 20:28:54 +00:00
gwr bf7ab63c97 Move some of the DMA engine initialization from the "start" routine
to the "setup" routine.  Doing the initialization earlier prevents
nasty race conditions where the 5380 prefetch changes the counter.
1996-06-17 23:21:29 +00:00
gwr dc066b6a10 KGDB support 1996-06-17 15:40:36 +00:00
gwr 3274834c18 Use the PROM->input_source setting instead of EEPROM to determine
where the console is, because that is correct if, for example, you
boot with the diag/norm switch set for diagnostics and the EEPROM
is set for keyboard/display.
1996-06-17 15:17:06 +00:00
gwr 8ef4845dec merge 1.2 changes 1996-06-15 14:58:02 +00:00
gwr a0d3ad800b Add the version line. 1996-05-17 19:39:30 +00:00
gwr 50ecbc1c84 Rename cs_pclk_div16 to cs_brg_clk to clarify the fact that the
Baud Rate Generator (BRG) clock is not necessarily PCLK/16.
1996-05-17 19:32:06 +00:00
thorpej dedd4cceab Fix typo, noticed by Curt Sampson <curt@portal.ca>. 1996-05-09 21:15:47 +00:00
thorpej 69351e2be6 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:35:48 +00:00
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