Commit Graph

1491 Commits

Author SHA1 Message Date
thorpej c1e45dd1f7 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.

Add a real PCI front-end for PCnet-PCI Ethernet cards.

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_reset)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 02:03:02 +00:00
thorpej 2d1c62d1ed Regenerate; pcidevs changed. 1996-05-07 02:01:00 +00:00
thorpej 0ba5a212d0 Add ID for AMD PCnet-PCI Ethernet. 1996-05-07 01:59:45 +00:00
thorpej 15354e899c 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_reset)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 01:55:13 +00:00
thorpej 7b3f25271d 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.

Break up ISA LANCE driver into ISA and PCI front-ends.

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:50:04 +00:00
thorpej 300992c9ba 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:43:13 +00:00
thorpej 16e78eb3fb 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:38:35 +00:00
is 95f41d24cc Add "iy" driver for Ethernet ISA boards using the Intel i82595 chip, e.g.
(and only tested on) Intel Etherexpress PRO. Should work on any i82595 ISA
board which uses an EEPROM for config information; NETBLKID not yet supported.
TODO: change to BUS interface, add multicast support.
1996-05-06 21:36:51 +00:00
christos 0efbe64fb8 Cleanup the rest of the SCSIDEBUG printfs. From Bernd Ernesti. 1996-05-05 19:52:50 +00:00
christos d53d6cd545 Move comintr() prototype to comvar.h; needed by the multi-port cards. 1996-05-05 19:50:44 +00:00
christos d21e608c6b Make those compile again; they were missing a declaration for bc.
Also fix prototypes.
1996-05-05 19:49:51 +00:00
thorpej 49c5d29ee0 Fix bogus return value in ccdopen(); it failed to indicate an error
condition if:
	- ccd was not initialized
	- partition did not exist
1996-05-05 04:21:14 +00:00
mycroft 5b8d7c943e ahb -> sc 1996-05-05 03:12:47 +00:00
thorpej 0bc154b367 Fix a bug I introduced when converting the driver to <machine/bus.h>.
Use the i/o handle for the `delay port' exported from the parent
ISA bus, rather than the totally bogus combination of [ioh, 0x84].
Also, fix a bug apparently introduced when the -Wall changes were checked
in which, under most circumstances, would cause a 16-bit WD8013EP to
be mis-identified as an 8-bit WD8003EP.
1996-05-05 01:28:52 +00:00
thorpej 6fb58044fd Map port 0x84 (which is used to generate a 2.6us delay) in isaattach().
Since this port is needed by at least a few drivers, export its i/o handle
via isa_attach_args.
1996-05-05 01:14:07 +00:00
mycroft 0808320ac1 Fix a trivial typo. 1996-05-05 00:40:01 +00:00
jtk 0817b1b518 make it work with GUSPLAYDEBUG defined 1996-05-03 22:35:24 +00:00
christos 88c3808921 - SCSIDEBUG printf() fixes. 1996-05-03 19:48:20 +00:00
christos a16dd8b648 Move epstop prototype to the header file. 1996-05-03 19:08:47 +00:00
christos 6670b9fef5 - include <sys/systm.h>
- remove unused variables
1996-05-03 19:07:18 +00:00
christos 1a7708a2a2 - Fix random return value in the probe function.
- Add <sys/systm.h> to get prototypes
1996-05-03 19:06:25 +00:00
christos c3c1caa12a Remove unused err label; simplify the code in ed_probe_Novell 1996-05-03 19:05:30 +00:00
christos bd397af7ad - include <sys/systm.h>
- fix prototype of epmbuffill()
- fix typo of epxstat -> eptxstat
1996-05-03 17:44:59 +00:00
christos 5a4851d776 - fix printf format strings
- #ifdef out unused variables/functions
- parenthesize
1996-05-03 17:39:49 +00:00
christos 2d0606e988 remove unused variables 1996-05-03 17:33:49 +00:00
christos 021d3e082f Remove unused printf arguments 1996-05-03 17:32:20 +00:00
christos 05dbb85594 cleanup the memh mess:
- remove it from the Novell probe.
- cleanup the 3com probe.
1996-05-03 17:29:29 +00:00
neil c4b8477b78 Added another quirked SCSI device, re PR 2320 from Manuel Bouyer 1996-05-02 01:09:01 +00:00
thorpej 0b637e93a8 Convert the Etherlink III (ep) driver to use <machine/bus.h>. 1996-04-30 22:29:56 +00:00
thorpej 9d91d0f742 Convert the Etherlink III (ep) driver to use <machine/bus.h>.
For the ISA probe, implement a way to keep track of which ISA busses
have been through an ep_isa probe; the static variable that was used
before didn't scale.
1996-04-30 22:27:58 +00:00
thorpej d614ab5859 Update the 3c507 probe to the new interfaces used by elink_reset()
and elink_idseq().
XXX This is just a kludge until the entire driver is converted to use
<machine/bus.h>
1996-04-30 22:21:54 +00:00
thorpej 91b4a6d401 Adapt the elink_reset() and elink_idseq() routines for <machine/bus.h>.
In elink_reset(), since some machines may have more than one ISA bus,
implement a way of keeping track of which ISA bus has received an
elink_reset(); The static variable which was used previously didn't
scale.
1996-04-30 22:16:27 +00:00
christos a1609dc859 - Fix gcc -Wall warnings
- BUG: if (error = ...() == EWOULDBLOCK)
1996-04-29 20:30:48 +00:00
christos 1c86bef3bc Fix gcc -Wall warnings. 1996-04-29 20:28:40 +00:00
christos e8a8a6298c - prototype fixes 1996-04-29 20:02:32 +00:00
christos d0987b1ee9 - prototype fixes
- BUG: changed:
	   val &= CD_POL_MASK;
	   val |  CD_POL_BIT;  /* XXX if (pol) */
  to:
	   val &= CD_POL_MASK;
	   val |= CD_POL_BIT;  /* XXX if (pol) */
1996-04-29 20:00:39 +00:00
christos 27292adc4c - gcc -Wall fixes 1996-04-29 19:50:47 +00:00
christos c32e566f6c - missing argument in printf
- gcc -Wall fixes
1996-04-29 19:48:26 +00:00
christos f1dd12ed4e Prototype fixes 1996-04-29 19:45:32 +00:00
christos 3a77c25f3e Add prototypes. 1996-04-29 19:30:50 +00:00
christos 3f3082e5f5 Add a clean target to clean the assembler binary 1996-04-29 19:30:19 +00:00
cgd 48fca88c3a fix printf bogon (need : and space) 1996-04-29 16:06:38 +00:00
is 07beed1117 Fix an obvious typo (wrong sign of test). At the same time, make the early
probe printf prefix unambiguous.
1996-04-25 18:54:45 +00:00
thorpej aff40e2a72 Break up the ep driver into isa, eisa, and pci front-ends and a
bus-independent core driver.  Tested on all three bus types, including
an isa 3c509 masquerading as an eisa device (use ep* at eisa? slot ? in
your kernel config file to catch this one).
XXX Driver still needs to be converted to <machine/bus.h>
1996-04-25 02:15:42 +00:00
christos b57c554d06 Add a hardware dependent initialization function lehwinit() 1996-04-22 02:53:28 +00:00
christos b016bd441a Add a hardware dependent initialization function lehwinit() 1996-04-22 02:40:49 +00:00
christos ffd5576439 remove include of <sys/cpu.h> 1996-04-22 01:44:31 +00:00
christos cee6ac0ce3 remove sys/cpu.h 1996-04-22 01:26:39 +00:00
christos 3c0096ff79 gcc -Wall delinting: unused variables, assignments inside if's and missing
arguments in printf statements.
1996-04-19 00:02:29 +00:00
christos d7b610dca6 Fix 3c590 to use the new pci interface; the pci compat code changes were
slightly biffed.
1996-04-19 00:01:19 +00:00
cgd 720c148692 remove unnecessary header inclusion (machine/autoconf.h) and now-bogus comment.
also, trim spaces at ends of lines, etc.
1996-04-18 01:12:41 +00:00
cgd f8073d3675 restructure to take advantage of config's (relatively) new 'attach'
specifiers.  Many #ifdefs and much other nastiness removed.
1996-04-18 00:50:11 +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
cgd 17731baa0d fix copyrights 1996-04-17 22:22:32 +00:00
cgd 71c7924099 clean up clock handling: clock drivers are now seperate from the
chip-independent clock code.  'clock' has been renamed 'mcclock'  'clock'
has been renamed 'mcclock' (since it's a driver for that particular
clock, and since eventually there may be another clock chip driver),
and now attaches via seperate match/attach functions to both TC and ISA.
This removes a whole lot of #ifdefs...
1996-04-17 22:01:16 +00:00
cgd a610e9d471 include <sys/termios.h> to make comvar.h happy 1996-04-15 18:55:23 +00:00
cgd b6549d493d define and export the global variable "comconscflag", the default tty
'cflag' for the console.  Normally set to TTYDEF_CFLAG, may be
overridden by machine-dependent console attachment code, as necessary.
(Alpha uses it to set cs8 -parenb.)  Files including comvar.h now
need to include <sys/termios.h>, because comconscflag is of type
tcflag_t.
1996-04-15 18:54:31 +00:00
leo 7ff219ef0d Add some prototypes. 1996-04-12 08:30:09 +00:00
cgd 432b9ff657 add support for the alpha 1996-04-12 06:34:36 +00:00
cgd 51e85d07b9 update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
1996-04-11 22:27:59 +00:00
cgd e6456e7285 on non-i386 systems, include <machine/intr.h> (per charles's proposal on
tech-kern (?)), to get the IPL_* and IST_* types.  pass the machine-dependent
cookie given at attach time on to sub-devices, so they can use it to access
the interrupt functions properly.
1996-04-11 22:25:44 +00:00
cgd a391172983 include a machine-specific header from ARCH/isa/isa_machdep.h, to define
the isa_chipset_tag_t type, and to define or prototype:
	isa_attach_hook()
	isa_intr_establish()
	isa_intr_disestablish()
i.e. the machine-dependent functions to be used my MI ISA code.
Remove prototypes for the latter two functions from this file.
1996-04-11 22:20:50 +00:00
cgd 01c4e7fb64 include raster_op.c and raster_text.c if 'raster' is defined, as well
as if 'rasterconsole' is defined.  Alpha uses 'raster' to pull in the
raster text and operation code, but doesn't use this console emulator,
etc.
1996-04-11 21:54:38 +00:00
cgd 789a455ab4 if no DDB, define Debugger() to be a panic. 1996-04-10 23:01:13 +00:00
gwr 32d12d3be4 Make the ring size configurable in the tty driver.
Make the pseudo-interrupt functions return void.
Call the tty layer at spltty (to be safe).
1996-04-10 21:44:35 +00:00
mycroft 0609135a66 Add explicit return types. 1996-04-10 19:03:46 +00:00
cgd 4889b6bcc2 use the new interfaces for interrupt attachment, etc. 1996-04-09 22:47:00 +00:00
cgd d645bb042d make the EISA code look a bit more like the PCI code, in the way
the bus is configured, interrupts are handled, etc.  machine-dependent
header (machine/eisa/eisa_machdep.h) defines eisa_chipset_tag_t and
eisa_intr_handle_t types, and the following functions:
	eisa_attach_hook()
	eisa_maxslots()
	eisa_intr_map()
	eisa_intr_string()
	eisa_intr_establish()
	eisa_intr_disestablish()
Don't define the interrupt establish/disestablish functions directly
in terms of the ISA functions any more (on some wacked out systems,
there can be a difference).
1996-04-09 22:46:11 +00:00
jonathan 57fd0e266b Fixes for -Wall -Wmissing-prototypes:
include <sys/systm.h> to get a prototyped declaration of printf().
	include <machine/autoconf.h> for port-specific typedefs.
	Remove unused variables.
1996-04-09 20:50:06 +00:00
cgd f85f062d77 spaces vs. tabs 1996-04-09 20:07:16 +00:00
pk 696daec742 Make this compile if LEDEBUG id defined. 1996-04-09 15:21:59 +00:00
thorpej 43411d2e96 Convert to use <machine/bus.h>. 1996-04-09 00:46:15 +00:00
jonathan 282688d407 Fixes for -Wall -Wmissing-prototypes:
remove unused variable "xfer" from the copy{to,from}buf_gap2() functions.
1996-04-08 20:11:46 +00:00
jonathan 45b229da22 fixes for -Wall -Wmissing-prototypes:
prototype the forward declaration of lewritereg().
1996-04-08 20:09:56 +00:00
jonathan 8ae2ddf4ad fixes for -Wall -Wmissing-prototypes:
add "return (0);" to cnstop()'s emtpy body.
1996-04-08 19:57:30 +00:00
mycroft 740637ad71 If we dequeue a packet due to excessive collisions, make sure we check
to see if the queue length has dropped to 0.
1996-04-08 19:02:19 +00:00
ragge a24af7a7c2 Added prototypes to everything. Made all files compile with -Wall. 1996-04-08 18:32:26 +00:00
ragge 86c328d230 Drivers for DZ11/DZV11/DZQ11 serial cards.
Written (mostly) by Ken Wellsch.
1996-04-08 17:22:20 +00:00
cgd 80efcebba5 kill some pasted spaces. 1996-04-06 02:04:00 +00:00
mycroft 78746c0d27 Regen. 1996-04-04 21:47:52 +00:00
mycroft 691dea75ae Add some NCR chips. 1996-04-04 21:46:33 +00:00
cgd 402f77d443 remove tricky open-coded variants of config_found(), by using the
child device pointer now returned by config_found().  (previously,
the code played games to get that pointer; now they are unnecesary.)
1996-04-04 07:08:10 +00:00
mycroft 9c6e05d835 Minor optimization, and do a CLRCH after (re)selection just to be safe. 1996-04-03 15:58:13 +00:00
mycroft b82447e3e1 * Change message priorities so that ABORT comes after IDENTIFY.
* Add an ACB_RESET flag, so that a BUS DEVICE RESET can be queued within the
driver.
* If ACB_ABORT or ACB_RESET is set during reselection, schedule a message and
assert ATN.
* Optimize aic_datain_pio(), aic_dataout_pio() and aicintr() somewhat.
* Schedule a timeout only when we select the target, so that commands can't
time out prematurely.
1996-04-03 10:33:45 +00:00
mycroft 70f35ac052 Don't wait for a command complete interrupt when enabling mailbox out
interrupts.
1996-04-03 09:45:45 +00:00
mycroft f0d8cbb1cb Don't wait for the host adapter to be idle before enabling or disabling
mailbox out interrupts.
1996-04-03 08:48:46 +00:00
mycroft 5e078e5ec8 Implement ncr_print(). 1996-04-03 08:44:15 +00:00
thorpej 52fee18c6f New SCSI media changer driver, written from scratch by me. Some
influence from the old driver (written by Stefan Grefen) and from
an autochanger driver written by the Systems Programming Group at the
University of Utah Computer Science Department (currently residing
in src/sys/arch/hp300/dev/ac.c).
1996-04-03 00:25:21 +00:00
cgd babc8db2c1 fix inverted sense of tests in DE500 media select function. (Would
auto-detect as 100Mbps if 10Mbps, 10Mbps if 100Mbps.)
1996-04-01 19:37:54 +00:00
mycroft d0742ed3c5 Several things:
1) If we get an unexpected disconnect, issue a REQUEST SENSE, as recommended
by the SCSI-2 spec.  If the target created a contingent allegiance condition,
this will clear it.  Also, if it happened while sending a SDTR or WDTR message,
disable negotiation for that target.
2) Since some lame devices still don't deal correctly, make sure we deassert
ATN if our last message out is interrupted.  If we get a MESSAGE PARITY ERROR,
we'll reassert ATN anyway.  This should ensure that we never have to send a
MESSAGE NO OPERATION.
3) Set AIC_ABORTING only when actually sending a BUS DEVICE RESET or ABORT,
so we get better error detection.
4) Other internal reorganization of no consequence.
1996-04-01 07:24:37 +00:00
jtk 55960650f7 add include file for function prototypes 1996-03-31 22:50:11 +00:00
pk 2f3ec93250 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 22:38:29 +00:00
mycroft 004f5e8d39 Fix a slight biff with 16-bit DMA in last change. 1996-03-31 20:51:43 +00:00
christos b8e757d588 - remove unused variable
- add missing argument to printf statement
1996-03-30 23:08:29 +00:00
christos e1930da21b Remove dependencies to dev_conf.h and the file itself. 1996-03-30 23:05:46 +00:00
christos 1e2c047be7 - Don't use dev_conf.h
- Remove unnecessary prototypes
- Fix ioctl arguments
- Don't use kprintf(...TO_LOG...); directly. This does not set the log
  priority, and uses priority of the previous message. Use log() with %:
1996-03-30 22:51:23 +00:00
christos 94d26d3017 - Eliminate scsi_conf.h
- Fix prototypes
- Fix PR/2248 [Problems with HP scanjet...]
1996-03-30 21:47:00 +00:00
christos beec8ba94c Eliminate scsi_conf.h. 1996-03-30 21:44:50 +00:00
mycroft 778f21db6a Use `{in.out}b(iobase + ...' rather than including the base address in
the register definitions.
1996-03-30 16:13:24 +00:00
mycroft 72f4fb5692 Fix return type of wds_sense(). 1996-03-30 07:40:11 +00:00