Commit Graph

476 Commits

Author SHA1 Message Date
Archie Cobbs
807a5caa14 Add ng_mppc(8) netgraph node as a KLD module.
Obtained from:  Whistle source tree
2000-04-09 21:07:39 +00:00
Boris Popov
8fc40832d5 Uncomment ETHER_II frame and remove BPF related variable. 2000-04-06 03:09:56 +00:00
Peter Wemm
ad88c63413 Move linprocfs to the i386-only section so the Alpha buildworld has a
chance at finishing..
2000-03-30 08:04:01 +00:00
Nick Hibma
1cd27266f4 Remove some cruft 2000-03-28 19:07:37 +00:00
Philippe Charnier
46a32e616a Remove duplicate word 2000-03-26 15:24:53 +00:00
Dag-Erling Smørgrav
8deca17b79 Linux /proc filesystem.
Submitted by:	pb
2000-03-25 13:23:02 +00:00
Warner Losh
2d268ca4c3 Make pcic module compile again for NEWCARD (not for old pccard). 2000-03-25 03:16:19 +00:00
KATO Takenori
c892ec24d8 Define PC98 when MACHINE == pc98, because msdos_vfsops.c contains
`#ifdef PC98'.
2000-03-19 15:06:18 +00:00
Nick Hibma
e2dbd15f2e Please welcome the URio driver. Written by
Iwasa Kazmi <kzmi\@ca2.so-net.ne.jp>
2000-03-16 09:16:14 +00:00
Archie Cobbs
a7dc837919 - Document updates in iface netgraph node type functionality
- Remove makefile hacks for opt_inet.h, etc: the KLD now supports
  whatever address families your kernel was compiled with automagically
2000-03-13 19:19:48 +00:00
Archie Cobbs
ef02c1e500 Fix typo.
Reported by:	Robert Swindells <swindellsr@genrad.co.uk>
2000-03-13 18:29:58 +00:00
Archie Cobbs
8081ce2ea7 Correct man page title. 2000-03-10 20:38:24 +00:00
Sheldon Hearn
7a4cd69f7a Disconnect pcfclock from the build until it works on the Alpha. 2000-03-01 07:42:09 +00:00
Bill Fumerola
958b92d24d Add a little more history of when netgraph appeared in FreeBSD.
Reviewed by:	asmodai
2000-02-29 18:32:26 +00:00
Sheldon Hearn
cb166ce422 Enable pcfclock as a kernel loadable module.
PR:		16804
Submitted by:	sascha@schumann.cx
Approved by:	jkh (release engineer)
2000-02-29 10:57:42 +00:00
Peter Wemm
8f8e587948 Use config's conditional compilation rather than using #ifdefs that make
modular compilation harder.  I'm doing this because people seem to like
cut/pasting examples of bad practices in existing code.
2000-01-29 15:08:56 +00:00
Brian Somers
8728a7f4a5 Restore to version 1.14. Only opt_inet.h is required again. 2000-01-29 01:11:03 +00:00
Bruce Evans
9e4be63dd6 Add ${DEBUG_FLAGS} to CFLAGS in bsd.kmod.mk, not in scattered module
makefiles.  Bad examples in fxp/Makefile keep getting copied to new
makefiles.
2000-01-28 11:26:46 +00:00
Peter Wemm
fca569ab4f Move if_tun back to the common section now that it works on the Alpha.
Tested by:	make world
2000-01-27 13:42:42 +00:00
Peter Wemm
13ba9040aa Re-add vpo. I've just re-tested this in a 'make world' on a December
vintage system, well before the ppbus changes.  When I called it an
"example" module, I meant as an example for the rest of the ppbus client
drivers, not that it was worthless.  I'll mail my 5.8MB world.log to
anybody who doesn't believe me.

Wrongly accused by:	obrien
2000-01-26 15:15:50 +00:00
David E. O'Brien
2fff585062 Remove `vpo' with a vengeance -- "EXAMPLE" modules have *NO* business
being hooked up to the build system, *COMPILABLE WORKING* modules do.

Not `make' tested by:	Peter
2000-01-26 02:05:16 +00:00
Brian Somers
f54537c6c0 Don't use ATM on the alpha - it #errors out.
Pointed out by: jdp
2000-01-26 01:08:03 +00:00
David E. O'Brien
2e3fb30989 if_tun is out of here -- it can come back with it stops breaking the
Alpha build.
2000-01-26 00:47:45 +00:00
Brian Somers
367d34f853 Move the *intrq variables into net/intrq.c and unconditionally
include this in all kernels.  Declare some const *intrq_present
variables that can be checked by a module prior to using *intrq
to queue data.

Make the if_tun module capable of processing atm, ip, ip6, ipx,
natm and netatalk packets when TUNSIFHEAD is ioctl()d on.

Review not required by: freebsd-hackers
2000-01-24 20:39:02 +00:00
Peter Wemm
5331081645 Add an example vpo module. I don't have a zip drive to test it, but it
behaves the normal way when loaded at runtime versus being statically
compiled.  (normal == print garbage on the printer :-).
2000-01-23 15:26:15 +00:00
Nick Hibma
0c4407576d Get rid of some debugging cruft. 2000-01-23 13:56:58 +00:00
Brian Somers
3bd82a552f Hmm, don't compile in INET6, IPX or NETATALK support for the
moment :-(  I think we need some sort of stub variable and a
``is this queue available'' flag.
2000-01-23 10:41:48 +00:00
Boris Popov
5d94d71cd9 Allow if_ef driver to be compiled into kernel. 2000-01-23 03:35:11 +00:00
Brian Somers
971cfa82fe Support INET6, NETATALK and IPX as well as INET. 2000-01-23 01:47:59 +00:00
Kazutaka YOKOTA
98a62914d8 Do not explicitly create empty option files; they are taken
care of by bsd.kmod.mk.

Pointed out by: bde
2000-01-20 13:25:18 +00:00
Archie Cobbs
010c5481fd Work around aparent bug in the .Dv macro by eliminating some spaces.
The closing curly-brace in this line was being omitted somehow.
2000-01-17 20:10:39 +00:00
Kazutaka YOKOTA
2b944ee2b9 This is the 3rd stage of syscons code reorganization.
- Split terminal emulation code from the main part of the driver so
that we can have alternative terminal emulator modules if we like in
the future.  (We are not quite there yet, though.)

- Put sysmouse related code in a separate file, thus, simplifying the
main part of the driver.

As some files are added to the source tree, you need to run config(8)
before you compile a new kernel next time.

You shouldn't see any functional change by this commit; this is only
internal code reorganization.
2000-01-15 15:25:43 +00:00
Bill Paul
1e152b85f6 Grrr. Really add the module makefile for the Aironet driver. 2000-01-14 23:46:05 +00:00
Bill Paul
261b9b3066 Add driver support for the Aironet 4500/4800 series wireless 802.11
NICs. (Finally!) The PCMCIA, ISA and PCI varieties are all supported,
though only the ISA and PCI ones will work on the alpha for now.
PCCARD, ISA and PCI attachments are all provided. Also provided an
ancontrol(8) utility for configuring the NIC, man pages, and updated
pccard.conf.sample. ISA cards are supported in both ISA PnP and hard-wired
mode, although you must configure the kernel explicitly to support the
hardwired mode since you have to know the I/O address and port ahead
of time.

Special thanks to Doug Ambrisko for doing the initial newbus hackery
and getting it to work in infrastructure mode.
2000-01-14 20:41:03 +00:00
Bill Paul
0177987224 Add device driver support for USB ethernet adapters based on the CATC
USB-EL1202A chipset. Between this and the other two drivers, we should
have support for pretty much every USB ethernet adapter on the market.
The only other USB chip that I know of is the SMC USB97C196, and right
now I don't know of any adapters that use it (including the ones made
by SMC :/ ).

Note that the CATC chip supports a nifty feature: read and write combining.
This allows multiple ethernet packets to be transfered in a single USB
bulk in/out transaction. However I'm again having trouble with large
bulk in transfers like I did with the ADMtek chip, which leads me to
believe that our USB stack needs some work before we can really make
use of this feature. When/if things improve, I intend to revisit the
aue and cue drivers. For now, I've lost enough sanity points.
2000-01-14 03:14:49 +00:00
Kazutaka YOKOTA
def6f6178c Add opt_ukbd.h. 2000-01-12 00:46:08 +00:00
Bill Paul
a0067d7b89 Attempt to fix a problem with receiving packets on USB ethernet interfaces.
Packets are received inside USB bulk transfer callbacks, which run at
splusb() (actually splbio()). The packet input queues are meant to be
manipulated at splimp(). However the locking apparently breaks down under
certain circumstances and the input queues can get trampled.

There's a similar problem with if_ppp, which is driven by hardware/tty
interrupts from the serial driver, but which must also manipulate the
packet input queues at splimp(). The fix there is to use a netisr, and
that's the fix I used here. (I can hear you groaning back there. Hush up.)

The usb_ethersubr module maintains a single queue of its own. When a
packet is received in the USB callback routine, it's placed on this
queue with usb_ether_input(). This routine also schedules a soft net
interrupt with schednetisr(). The ISR routine then runs later, at
splnet, outside of the USB callback/interrupt context, and passes the
packet to ether_input(), hopefully in a safe manner.

The reason this is implemented as a separate module is that there are
a limited number of NETISRs that we can use, and snarfing one up for
each driver that needs it is wasteful (there will be three once I get
the CATC driver done). It also reduces code duplication to a certain
small extent. Unfortunately, it also needs to be linked in with the
usb.ko module in order for the USB ethernet drivers to share it.

Also removed some uneeded includes from if_aue.c and if_kue.c

Fix suggested by: peter
Not rejected as a hairbrained idea by: n_hibma
2000-01-10 23:12:54 +00:00
Alexey Zelkin
fc76d115ae . add manpage for svr4(8)
. s/freebsd/FreeBSD
2000-01-10 08:48:11 +00:00
Bruce Evans
646d8bb900 Cleaned up options handling:
- don't generate unusable headers or #defines.
- removed duplicate opt_svr4.h in CLEANFILES.
- removed bogus dependency of svr4.h on options headers.
2000-01-09 13:11:19 +00:00
Bruce Evans
1c510a288b Compile svr4_genassym.c with ordinary ${CFLAGS}. The (small) need for
-U_KERNEL became negative when all all the genassym.c's were converted
to be cross-built.

Use "genassym ... > ${.TARGET}", not "genassym -o $@ ...", so that
genassym(1) doesn't need to support -o.

Removed duplicate -D_KERNEL from CFLAGS.

Removed triplicate -D_KERNEL from flags for compiling svr4_locore.s.
2000-01-09 10:16:12 +00:00
Bruce Evans
27e2d53c58 Compile linux_genassym.c with ordinary ${CFLAGS}. The (small) need for
-U_KERNEL became negative when all all the genassym.c's were converted
to be cross-built.

Use "genassym ... > ${.TARGET}", not "genassym -o $@ ...", so that
genassym(1) doesn't need to support -o.

Removed duplicate -D_KERNEL from flags for compiling linux_locore.s.
2000-01-09 10:04:53 +00:00
Bill Paul
dfd1e98eac Add device driver support for USB ethernet adapters based on the
Kawasaki LSI KL5KUSB101B chip, including the LinkSys USB10T, the
Entrega NET-USB-E45, the Peracom USB Ethernet Adapter, the 3Com
3c19250 and the ADS Technologies USB-10BT. This device is 10mbs
half-duplex only, so there's miibus or ifmedia support. This device
also requires firmware to be loaded into it, however KLSI allows
redistribution of the firmware images (I specifically asked about
this; they said it was ok).

Special thanks to Annelise Anderson for getting me in touch with
KLSI (eventually) and thanks to KLSI for providing the necessary
programming info.

Highlights:
- Add driver files to /sys/dev/usb
- update usbdevs and regenerate attendate files
- update usb_quirks.c
- Update HARDWARE.TXT and RELNOTES.TXT for i386 and alpha
- Update LINT, GENERIC and others for i386, alpha and pc98
- Add man page
- Add module
- Update sysinstall and userconfig.c
2000-01-05 04:27:24 +00:00
Greg Lehey
1780425711 Remove non-functional 'all:' target.
Remove unused 'state.h' and 'maketabs' targets.
Fix white space style bugs.

Submitted-by:	bde

Sort module names in SRCS.

Suggested-by:	bde

Correct breakage committed in revision 1.16.
2000-01-04 23:46:41 +00:00
Archie Cobbs
0f9183be1b Fix typos per PR 15649. Also did some rewording for clarity.
PR:		docs/15649
Submitted by:	Kazuo Horikawa <horikawa@jp.FreeBSD.org>
2000-01-03 18:36:42 +00:00
Marcel Moolenaar
c292cf660e Remove -g compiler flag. 2000-01-03 12:01:30 +00:00
Marcel Moolenaar
ed4674a8a8 o Add build-tools target for maketabs although it doesn't seem to
be used. I therefore won't add it to Makefile.inc1.
o  Remove -g compilation flags.
2000-01-03 11:57:14 +00:00
Peter Wemm
c447342094 Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot).  This is consistant with the other
BSD's who made this change quite some time ago.  More commits to come.
1999-12-29 05:07:58 +00:00
Bill Paul
ed63a7aaef This commit adds device driver support for the ADMtek AN986 Pegasus
USB ethernet chip. Adapters that use this chip include the LinkSys
USB100TX. There are a few others, but I'm not certain of their
availability in the U.S. I used an ADMtek eval board for development.
Note that while the ADMtek chip is a 100Mbps device, you can't really
get 100Mbps speeds over USB. Regardless, this driver uses miibus to
allow speed and duplex mode selection as well as autonegotiation.
Building and kldloading the driver as a module is also supported.

Note that in order to make this driver work, I had to make what some
may consider an ugly hack to sys/dev/usb/usbdi.c. The usbd_transfer()
function will use tsleep() for synchronous transfers that don't complete
right away. This is a problem since there are times when we need to
do sync transfers from an interrupt context (i.e. when reading registers
from the MAC via the control endpoint), where tsleep() us a no-no.
My hack allows the driver to have the code poll for transfer completion
subject to the xfer->timeout timeout rather that calling tsleep().
This hack is controlled by a quirk entry and is only enabled for the
ADMtek device.

Now, I'm sure there are a few of you out there ready to jump on me
and suggest some other approach that doesn't involve a busy wait. The
only solution that might work is to handle the interrupts in a kernel
thread, where you may have something resembling a process context that
makes it okay to tsleep(). This is lovely, except we don't have any
mechanism like that now, and I'm not about to implement such a thing
myself since it's beyond the scope of driver development. (Translation:
I'll be damned if I know how to do it.) If FreeBSD ever aquires such
a mechanism, I'll be glad to revisit the driver to take advantage of
it. In the meantime, I settled for what I perceived to be the solution
that involved the least amount of code changes. In general, the hit
is pretty light.

Also note that my only USB test box has a UHCI controller: I haven't
I don't have a machine with an OHCI controller available.

Highlights:

- Updated usb_quirks.* to add UQ_NO_TSLEEP quirk for ADMtek part.
- Updated usbdevs and regenerated generated files
- Updated HARDWARE.TXT and RELNOTES.TXT files
- Updated sysinstall/device.c and userconfig.c
- Updated kernel configs -- device aue0 is commented out by default
- Updated /sys/conf/files
- Added new kld module directory
1999-12-28 02:01:18 +00:00
Marcel Moolenaar
7ce77f279b Use genassym(1) and <sys/assym.h> to generate assembler symbols. 1999-12-23 21:19:32 +00:00
Marcel Moolenaar
00d6d49adc Use genassym(1) and <sys/assym.h> to generate assembler symbols. 1999-12-23 19:59:47 +00:00