Commit Graph

6159 Commits

Author SHA1 Message Date
Poul-Henning Kamp
4e2f199e0c This commit should be a extensive NO-OP:
Reformat and initialize correctly all "struct cdevsw".

        Initialize the d_maj and d_bmaj fields.

        The d_reset field was not removed, although it is never used.

I used a program to do most of this, so all the files now use the
same consistent format.  Please keep it that way.

Vinum and i4b not modified, patches emailed to respective authors.
1999-05-30 16:53:49 +00:00
Doug Rabson
f7f2df54bb No support for pnp yet. 1999-05-30 11:12:30 +00:00
Doug Rabson
d384956496 No support for pnp devices yet. 1999-05-30 11:10:10 +00:00
Doug Rabson
8b05278ca1 Allow up to 8 ports, 4 memory regions and two irqs and drqs. 1999-05-30 11:05:39 +00:00
Doug Rabson
4c5088e255 * Use ISA_DELETE_RESOURCE to cancel memory resource if driver clears maddr.
* Don't allow new-style isapnp devices through the compat interfaces.
1999-05-30 11:04:31 +00:00
Doug Rabson
d5b5f7a7ac Don't include isa_dma.h if we have already seen isavar.h 1999-05-30 11:03:10 +00:00
Doug Rabson
319e3d3049 Activate/deactivate resources by calling the method, not through the
resource manager automatic handling of RF_ACTIVE.
1999-05-30 10:50:57 +00:00
Poul-Henning Kamp
6deb5a62cc Stop the TSC from being used as timecounter on K5/step0 machines. 1999-05-29 06:57:55 +00:00
Bruce Evans
b50641ef9c Fixed glitches (jumps) of about 1/HZ seconds for the i8254 timecounter.
The old version only worked right when the time was read strictly
more often than every 1/HZ seconds, but we only guarantee reading
it every (1/HZ + epsilon) seconds.  Part of rev.1.126-1.127 attempted
to fix this but didn't succeed.  Detect counter rollover using the
heuristic from the old version of microtime() with additional
complications for supporting calls from fast interrupt handlers.
This works provided i8254 interrupts are not delayed by more than
1/(2*HZ) seconds.

This needs more comments, and cleanups for the SMP case, and more
testing of the SMP case before it is merged into RELENG_3.

Tested by:		jhay
1999-05-28 14:08:59 +00:00
Bruce Evans
4011dfccd2 Don't call disable_intr() when interrupts are already disabled, since
disable_intr() does non-recursive locking in the SMP case.  This should
fix cy-driver-related panics when SMP is configured.

Broken in:	rev.1.73 (3.1 and -current)
1999-05-28 13:23:21 +00:00
Roger Hardiman
1c2b593997 Add new Bt848/Bt878 driver options.
(Eventually I expect to move these into the man page)
1999-05-28 10:27:22 +00:00
Alan Cox
72e51821d7 pmap_object_init_pt:
The size of vm_object::memq is vm_object::resident_page_count,
	not vm_object::size.
1999-05-28 05:38:56 +00:00
Roger Hardiman
229cf3c335 Add support for ASound Gold card using the ALS120
chipset (a vibra 16x clone)
Identified automatically by its PnP ID

Approved by: Luigi
1999-05-27 06:12:40 +00:00
Julian Elischer
f7831602d5 Compaq "Intelligent Disk Array" driver.
Mark Dawson holds teh copyright on this and has releases from
Compaq to allow him to do so..

Not functional in 4.0 yet but being checked in to allow the functional
3.x version to be branched at this point.
1999-05-25 19:45:17 +00:00
Brian Somers
63e13c80ea Back the last change out.
It upsets the calculations in sys.c (switch(maj)).
1999-05-25 10:30:52 +00:00
Brian Somers
cd956c3bc1 Allow booting from "ad"
Reviewed by: Søren
1999-05-25 09:32:00 +00:00
Doug Rabson
1522abdd5e Don't try to allocate memory resource unless address is non-zero. 1999-05-24 18:50:41 +00:00
Peter Wemm
578de0426e Fix a [start,end] vs [start,count] botch that corrupted the resource
manager and prevented IOPort allocation beyond the first EISA slot from
working.  subr_rman.c should have trapped this on the way into the system
rather than tripping over the wreckage.

Head banged into wall repeatedly by:  "Matthew N. Dodd" <winter@jurai.net>
1999-05-24 03:08:46 +00:00
John Birrell
4d562a18fc - Make setroot() conditional on FFS etc, to avoid a compiler warning
on systems with no FFS.
- Remove all references to mfs from cpu_rootconf(). mfs_init is
  called prior to cpu_rootconf(), so it can set mountrootfsname to mfs
  and (more imporantly) set rootdev using the (bogus in Bruce's opinion)
  special major number of 255.
1999-05-24 00:30:49 +00:00
Peter Wemm
a0ca55077a Don't reference non-existant ATAPI option..
PR:		11814
Submitted by:	Sheldon Hearn <sheldonh@uunet.co.za>
1999-05-23 11:11:31 +00:00
Bill Paul
33b3ee3898 - Fix up some comments in if_wi.c (no code changes)
- Mention that the 6Mbps turbo adapters are supported in HARDWARE.TXT
  and RELNOTES.TXT and the wi.4 man page
- Mention turbo adapters in the wicontrol.8 man page and provide a
  complete table of available transmit speed settings
1999-05-22 16:12:54 +00:00
Doug Rabson
f78030e22d Don't use BUS_WRITE_IVAR to manipulate resources. 1999-05-22 15:45:47 +00:00
Doug Rabson
a3be63b3ce * Factor out the common code between the isa bus drivers for i386 and alpha.
* Re-work the resource allocation code to use helper functions in subr_bus.c.
* Add simple isa interface for manipulating the resource ranges which can be
  allocated and remove the code from isa_write_ivar() which was previously
  used for this purpose.
1999-05-22 15:18:28 +00:00
Peter Wemm
2b5be3fad4 Recover from removing the last (unshared) interrupt handler.
PR:		11806
Submitted by:	Assar Westerlund <assar@sics.se>
1999-05-22 09:39:31 +00:00
Bruce Evans
bb86f61a79 Fixed style bugs in previous commit. 1999-05-22 08:36:55 +00:00
Bill Paul
ab431312b4 This commit adds driver support for PCI fast ethernet cards based on the
ADMtek AL981 "Comet" chipset. The AL981 is yet another DEC tulip clone,
except with simpler receive filter options. The AL981 has a built-in
transceiver, power management support, wake on LAN and flow control.
This chip performs extremely well; it's on par with the ASIX chipset
in terms of speed, which is pretty good (it can do 11.5MB/sec with TCP
easily).

I would have committed this driver sooner, except I ran into one problem
with the AL981 that required a workaround. When the chip is transmitting
at full speed, it will sometimes wedge if you queue a series of packets
that wrap from the end of the transmit descriptor list back to the
beginning. I can't explain why this happens, and none of the other tulip
clones behave this way. The workaround this is to just watch for the end
of the transmit ring and make sure that al_start() breaks out of its
packet queuing loop and waiting until the current batch of transmissions
completes before wrapping back to the start of the ring. Fortunately, this
does not significantly impact transmit performance.

This is one of those things that takes weeks of analysis just to come
up with two or three lines of code changes.
1999-05-21 04:37:48 +00:00
Andrey A. Chernov
80a290844b Set CHAR_{MIN,MAX} according to -funsigned-char flag given or not
PR: 11627
Submitted by: Petr Lampa <lampa@fee.vutbr.cz>
1999-05-20 23:33:35 +00:00
Nick Hibma
f26c33d249 usbdi.h:
Implement priorities.
GENERIC, LINT, files:
        Remove remarks about ordering of device names.
GENERIC, LINT:
        Sort the devices alphabetically in LINT and GENERIC.
1999-05-20 20:02:37 +00:00
Hellmuth Michaelis
80037d6e9e upgrade isdn4bsd from version 0.71 to the just released version 0.81 1999-05-20 10:14:57 +00:00
Peter Wemm
ab25d374b2 Don't detect an EISA bus unless we see a "card" there somewhere. An EISA
motherboard will have a card for the "motherboard" on slot 0.
 eisa0: <EISA bus> on motherboard
 mainboard0: <ASU5101 (System Board)> at slot 0 on eisa0
This should stop the probe "detecting" an EISA bus everywhere that has
a 'controller eisa0' line regardless of whether it's really there.
1999-05-18 21:03:30 +00:00
Peter Wemm
8dc26439da Move pcibus (host -> pci bus) probe/attach routines from nexus
to pcibus.c.  pci_cfgopen() becomes static and there are no more
bus #ifdef's in nexus.c.
1999-05-18 20:48:43 +00:00
Roger Hardiman
c558c5795a Added device major 125 for the Advantech PCI-1750 Digital IO card.
A very nice i/o board with 16 open collector outputs (capable of driving 5-40v)
and 16 inputs
Also has 2 16 bit cascadable counters (10Mhz clock) capable of
generating interrupts.

It is a PCI card, and emulates the Intel 8254 timer.
It uses the PLX PCI-9050 PCI bus interface to map the
8254 style hardware and the i/o registers into the IO space.

Developed by Jennifer Clark <jen@vulture.dmem.strath.ac.uk>
Strathclyde University Transparent Telepresence Research Group
1999-05-18 16:18:42 +00:00
Roger Hardiman
0f3563b68a Update text on using the smbus, iibus, iicbb controllers
with the bktr device.
1999-05-18 12:55:11 +00:00
Roger Hardiman
ec2a37ea3c Bt848 driver release 1.65
Updated with australian channel set

Submitted by:	Ivan Brawley <brawley@internode.com.au>
1999-05-18 12:14:39 +00:00
Alan Cox
88b67a96af pmap_qremove:
Eliminate unnecessary TLB shootdowns.
1999-05-18 06:01:49 +00:00
Justin T. Gibbs
493950f6d9 Correct the comment for the last commit.
Clean up the handling of failure modes in our attach so we don't free
resources twice.  ahc_free() will do all of the work for us (as would
be required by an unload event) so we only need to handle resources that
the softc has not taken ownership of.
1999-05-17 21:56:00 +00:00
Justin T. Gibbs
f240c08e4a Fix whitespace. Correct a comment. 1999-05-17 21:51:41 +00:00
David E. O'Brien
77492b54df Add `xe', the Xircom PC Card Ethernet driver. 1999-05-15 18:20:19 +00:00
Peter Wemm
2f2ffb8d2c Don't hardcode IRQ 13 for NPX. It's as good as hardwired in the hardware
though, on systems (386 mostly) that still have a seperate fpu, but it
might be possible to find systems where the FPU coprocessor is wired to
a different IRQ pin.
1999-05-15 17:58:58 +00:00
Justin T. Gibbs
600829cdfc Nuke ucmpdi2.c from i386/libkern to serve as a reminder that switch
statements on 64bit values generate poor code.

Requested by: bde
1999-05-14 17:39:54 +00:00
Doug Rabson
6c2e3dde8c * Define a new static method DEVICE_IDENTIFY which is called to add device
instances to a parent bus.
* Define a new method BUS_ADD_CHILD which can be called from DEVICE_IDENTIFY
  to add new instances.
* Add a generic implementation of DEVICE_PROBE which calls DEVICE_IDENTIFY
  for each driver attached to the parent's devclass.
* Move the hint-based isa probe from the isa driver to a new isahint driver
  which can be shared between i386 and alpha.
1999-05-14 11:22:47 +00:00
Joseph Koshy
a6e1e3ab4b Correct comment to refer to kget(8). 1999-05-14 05:25:44 +00:00
Justin T. Gibbs
007c45c2e7 Add ucmpdi2.c to the i386 libkern build. 1999-05-14 05:10:15 +00:00
David E. O'Brien
282462f969 Add the `xe' Xircom PC Card driver. 1999-05-14 03:57:25 +00:00
Bruce Evans
c151de316a Fixed 10 out of 40 lines of -Wcast-qual warnings/errors. 3 lines were
for old confusion of `volatile char *' with `volatile caddr_t'.  7 lines
were for not being careful about aligning pointers to volatiles.
1999-05-13 12:21:41 +00:00
Bruce Evans
4daefb91bf Renamed the private copies of strlen and strcpy to gdb_strlen and
gdb_strcpy, respectively.  This saves fixing the wrong return type
of the private strlen and makes the addresses of strlen and strcpy
unambiguous.
1999-05-13 07:34:25 +00:00
Luoqi Chen
0f0fe5a4c5 Unbreak VESA on SMP. 1999-05-12 21:39:07 +00:00
Luoqi Chen
2ee16532b6 VM86_FRAMESIZE is now the size of vm86 frame, not the number of 4-byte words.
Requested by:	Bruce
1999-05-12 21:30:51 +00:00
Peter Wemm
c7b52b866e Fix dev_t/minor problems 1999-05-12 19:01:30 +00:00
Poul-Henning Kamp
02342b0cfe Fix dumpon. It passes a udev_t from userland to kernel, that needs a
udev2dev() before we use it.

It really should pass a name like swapon does.
1999-05-12 07:40:50 +00:00