Commit Graph

2834 Commits

Author SHA1 Message Date
Matthew Dillon
cd906fe3de Optimize two cases in the MP locking code. First, it is not necessary
to use a locked cmpexg when unlocking a lock that we already hold, since
    nobody else can touch the lock while we hold it.  Second, it is not
    necessary to use a locked cmpexg when locking a lock that we already
    hold, for the same reason.  These changes will allow MP locks to be used
    recursively without impacting performance.

    Modify two procedures that are called only by assembly and are already
    NOPROF entries to pass a critical argument in %edx instead of on the
    stack, removing a significant amount of code from the critical path
    as a consequence.

Reviewed by:	Alfred Perlstein <bright@wintelcom.net>, Peter Wemm <peter@netplex.com.au>
1999-11-19 16:49:30 +00:00
Julian Elischer
2045179917 fix braino.. line misplaced. 1999-11-19 09:19:44 +00:00
Julian Elischer
6822ccd6e7 protect some more operations with splimp() under Netgraph. 1999-11-19 05:37:37 +00:00
Peter Wemm
cde35e1a3d If we have found pci devices via pci_cfgopen(), but don't find a
host->pci bridge specifically, then add a pcib0 device on the motherboard
for the pci bus to hang off.

Requested by:  Anders Andersson <anders@sanyusan.se>
Obtained from: dfr
1999-11-18 08:58:37 +00:00
Peter Wemm
4e250a4b87 Fix some -Wunused warnings 1999-11-18 08:43:58 +00:00
Peter Wemm
394c467708 Fix some warnings. 1999-11-18 08:41:53 +00:00
Peter Wemm
4a6eb2cc6c Fix a warning. 1999-11-18 08:39:02 +00:00
Peter Wemm
f14f25d086 Touch up the make_dev() usage to hopefully make it work and fix warnings. 1999-11-18 08:36:42 +00:00
Peter Wemm
609d21b734 Fix some warnings. 1999-11-18 08:32:02 +00:00
Yoshihiro Takahashi
89875c851f Fixed to compile bs driver with gcc 2.95.2. 1999-11-16 12:28:28 +00:00
David E. O'Brien
fe3f39d6d5 Removed the asm version of conv(). This is should be faster in its new
C form.  See src/sys/i386/isa/sound/audio.c rev.1.23

Submitted by:	bde
1999-11-15 23:27:40 +00:00
David E. O'Brien
15cc94620c Fix __asm__ clobber list abuses. 1999-11-15 23:20:56 +00:00
Poul-Henning Kamp
5b664c7c13 Move isfoo() and friends to the newly created sys/ctype.h.
Urged by:       bde
1999-11-03 17:54:26 +00:00
Matthew N. Dodd
5178bd8bde Fix bus_setup_intr(); I changed exintr() to take a pointer to ex_softc
but didn't change bus_setup_intr() to pass the softc in.

Submitted by:	Warner Losh <imp@village.org>
1999-11-03 15:45:14 +00:00
Archie Cobbs
44b4dd855d Consolidate some of the various ctype(3) macros in one location. 1999-11-02 22:50:34 +00:00
Archie Cobbs
da5e3849b2 Fix typo in previous commit. 1999-11-02 22:24:41 +00:00
Julian Elischer
17f3711323 User netgraph typedefs for methods 1999-11-01 10:09:34 +00:00
Jonathan M. Bresler
cbb89e6622 rearrange order of tests for NE1000, NE2000, and Linksys
cards.   previous order caused computers with NE2000 cards
	to hang during boot.
1999-11-01 00:53:12 +00:00
Mitsuru IWASAKI
29803c2003 i8254_restore is called from apm_default_resume() to reload
the countdown register.
this should not be necessary but there are broken laptops that
do not restore the countdown register on resume.
when it happnes, it messes up the hardclock interval and system clock,
which leads to the infamous "calcru: negative time" problem.

Submitted by:	kjc, iwasaki
Reviewed by:	Steve O'Hara-Smith <steveo@eircom.net> and committers.
Obtained from:	PAO3
1999-10-30 14:56:01 +00:00
Poul-Henning Kamp
923502ff91 useracc() the prequel:
Merge the contents (less some trivial bordering the silly comments)
of <vm/vm_prot.h> and <vm/vm_inherit.h> into <vm/vm.h>.  This puts
the #defines for the vm_inherit_t and vm_prot_t types next to their
typedefs.

This paves the road for the commit to follow shortly: change
useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE}
as argument.
1999-10-29 18:09:36 +00:00
Warner Losh
e653ecce87 Disable old PCCARD_MODULE code.
This should fix LINT.

Prompted by: phk's explicit message about LINT breakage
1999-10-29 17:28:09 +00:00
Matthew N. Dodd
d4e95b7b2f It seems I forgot to remove the bits from isa_compat.h.
Note to self; when converting a driver to newbus, the foodriver bits
must be removed from sys/i386/isa/isa_compat.h

Reminded gently by: Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>
1999-10-27 17:04:18 +00:00
Yoshihiro Takahashi
ad940a43b0 Fix potential panic by illegal increment of wfdnlun.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
Reviewed by:	Junichi Satoh <junichi@astec.co.jp> (the original author)
1999-10-27 12:40:20 +00:00
Jonathan M. Bresler
6d193c9936 add support for LinkSys 10/100 cards
new code is conditionalized by the vendor's ethernet OUI

Obtained from:	PAO Project
1999-10-26 23:03:45 +00:00
Julian Elischer
3bfb36efc0 Make it compile inthe NETGRAPH case. 1999-10-25 23:14:04 +00:00
Bill Paul
b7da85ec26 Make release is now falling over in if_fe.c due to Warner's pccard changes:
if_fe.c uses PCCARD_MODULE() and is part of GENERIC. I've #ifdef'ed out
the #include of "card.h" to hopefully disable pccard support in this
driver until it can be converted. I'm not positive this will fix make
release, but it can't possibly make it any worse than it is now.

I hope this stuff settles down soon.
1999-10-25 17:04:17 +00:00
Alan Cox
eab7cc95c4 Add text for the AMD-751 host-to-PCI and PCI-to-PCI (AGP) bridges. 1999-10-25 06:28:04 +00:00
Julian Elischer
4cf49a4355 Whistle's Netgraph link-layer (sometimes more) networking infrastructure.
Been in production for 3 years now. Gives Instant Frame relay to if_sr
and if_ar drivers, and PPPOE support soon. See:
ftp://ftp.whistle.com/pub/archie/netgraph/index.html
for on-line manual pages.

Reviewed by: Doug Rabson (dfr@freebsd.org)
Obtained from:  Whistle CVS tree
1999-10-21 09:06:11 +00:00
John Hay
9c21293f55 Add support for the PCI version of the Digi SYNC/570i cards. 1999-10-17 09:40:04 +00:00
Matthew N. Dodd
9f69cadf84 - Convert this driver to newbus.
- Generally clean things up.
- PnP now supported.

Will convert to bus_space, ifmedia and add a DEVICE_IDENTIFY() method
for autodetection.  As it stands

device ex0 at isa0

should find a card if one is present.

I feel less dirty now.
1999-10-16 06:26:44 +00:00
Doug Rabson
25afb89b1c * Add struct resource_list* argument to resource_list_alloc and
resource_list_release. This removes the dependancy on the
  layout of ivars.

* Move set_resource, get_resource and delete_resource from
  isa_if.m to bus_if.m.

* Simplify driver code by providing wrappers to those methods:

     bus_set_resource(dev, type, rid, start, count);
     bus_get_resource(dev, type, rid, startp, countp);
     bus_get_resource_start(dev, type, rid);
     bus_get_resource_count(dev, type, rid);
     bus_delete_resource(dev, type, rid);

* Delete isa_get_rsrc and use bus_get_resource_start instead.

* Fix a stupid typo in isa_alloc_resource reported by Takahashi
  Yoshihiro <nyan@FreeBSD.org>.

* Print a diagnostic message if we can't assign resources to a PnP
  device.

* Change device_print_prettyname() so that it doesn't print
  "(no driver assigned)-1" for anonymous devices.
1999-10-12 21:35:51 +00:00
Poul-Henning Kamp
889fb68f34 remove unused #includes 1999-10-11 19:18:43 +00:00
Warner Losh
4ec8d172a9 Hid silly unknown board types message behind if (bootverbose). This
appears to have been lost sometime since joerge made this same fix in
1.47.
1999-10-11 18:53:59 +00:00
Peter Wemm
e6daa4d087 Oh foo. I got carried away. :-( "joy.h" is used to size an array.
(Incidently, there is no bounds checking...)
1999-10-11 16:09:00 +00:00
Peter Wemm
3b8f07bbc3 Trim some unused #includes
Submitted by:	phk
1999-10-11 15:00:09 +00:00
Peter Wemm
90c7f2d6a2 Zap unneeded #include (found by phk)
Remove useless #include "joy.h"; #if NJOY > 0 - this is always true
if it's being compiled. config arranges this.
1999-10-11 14:53:46 +00:00
Peter Wemm
90fce79ecd Zap cdevsw_add() - the make_dev's take care of it and don't use
the cdevsw[] array.
1999-10-08 18:27:20 +00:00
Kazutaka YOKOTA
afa239de67 - Remove cdevsw_add(). 1999-10-06 13:03:09 +00:00
Kazutaka YOKOTA
5d5198c72f - Remove cdevsw_add().
- Call ttyregister() and make_dev() to register virtual terminals.
- Set nottystop to tp->t_stop.
1999-10-06 13:01:12 +00:00
Poul-Henning Kamp
07d6a0622c Add $FreeBSD$.
Remove some minphys related cruft.
1999-10-06 07:26:48 +00:00
Nick Hibma
3e2c6ca3b9 Removal of sys/device.h
- Move intrhook stuff into kernel.h
- Remove all occurrences of #device <device.h>
- Add kernel.h were necessary (nowhere)
- delete device.h

This file contained the structures for cfdata (old style config) and is no
longer used. It was included by most drivers.

It confuses the remote debugger as the definition of 'struct device' in
device.h is found before the one in bus_private.h.
1999-10-05 21:19:41 +00:00
Poul-Henning Kamp
fd1976ec67 Remove unused B_FORMAT #define 1999-10-04 07:40:23 +00:00
Bruce Evans
036a60b7b9 Removed redefinitions of CDRIOCBLANK and CDRIOCNEXTWRITEABLEADDR. 1999-10-03 04:12:07 +00:00
Matthew N. Dodd
0f25802642 Back out an unintended commit. This wasn't supposed to be
in my work directory on freefall.
1999-10-01 05:31:27 +00:00
Matthew N. Dodd
6a025a98a6 Turn off and remove the 'old' if_ep ISA/EISA/PCCARD driver.
Turn on the 'new' if_ep driver which supports:

	ISA		3c509
	MCA		3c529
	EISA		3c579
	PCCARD		3c589

I think all we're missing is support for the VME bus and S-100 bus
Etherlink III cards.

The new code has been tested by a number of people and all the important
bits work.  I've not been able to test the EISA code but will do so once
my hardware arrives.  Since I've changed nothing in the EISA code I suspect
it will perform the same manner as before.

Future changes involve whacking the ISA and PCCARD front ends to use
newbus and to convert the driver to bus_space and make it use ifmedia.

This is the first working network driver that supports MCA bus devices btw.

Enjoy.
1999-10-01 05:24:27 +00:00
Poul-Henning Kamp
1ab305ef60 Introduce ttyread() and ttywrite() which do the canonical thing.
Use them in many tty drivers.

Reviewed by: julian, bde
1999-09-28 11:45:31 +00:00
Warner Losh
896f49b096 Newbusification of aha. dfr sent me the first cut, and I made it
work.  Be more verbose when one cannot allocate IRQ, et al since this
is a common configuration problem.  The cards have the IRQ soft wired
into their BIOS and do not try to do collision detection.  This can
cause problems when this IRQ is the same as another card/device.

The PNP hasn't been tested.  My PNP board is in a deployed system.
I'll sneak in testing of it sometime later.  I've been able to mount
the 3.3R cdrom that arrived today and access files off it.

Submitted by: dfr
1999-09-28 02:39:45 +00:00
KATO Takenori
ac1bacc959 Removed pc98 code. 1999-09-27 03:37:36 +00:00
Peter Wemm
903d01a38a Seperate pcaudio from isa/snd and isa/sound - it's not worth this breaking
each time there is a change.
1999-09-27 01:52:37 +00:00
Warner Losh
a78b40a525 Move aha driver to dev/aha like the other drivers.
Code relocation only, no code changes.
1999-09-27 01:51:18 +00:00