Commit Graph

364 Commits

Author SHA1 Message Date
paul
fe29acdc6d Build lnc driver from /sys/dev from now on. 2000-05-14 18:24:41 +00:00
darrenr
9ac7504de0 bring in net/pfil.c for pfil_hooks or ipfilter 2000-05-10 13:43:49 +00:00
n_hibma
4e44509025 The USB double bulk pipe driver (Host to host cables). Currently there
are two supported chips, the NetChip 1080 (only prototypes available)
and the EzLink cable. Any other cable should be supported however as they
are all very much alike (there is a difference between them wrt
performance).

It uses Netgraph.

This driver was mostly written by Doug Ambrisko and Julian Elischer and
I would like to thank Whistle for yet another contribution. And my
aplogies to them for me sitting on the driver for so long (2 months).

Also, many thanks to Reid Augustin from NetChip for providing me with a
prototype of their 1080 chip.

Be aware of the fact that this driver is very immature and has only been
tested very lightly. If someone feels like learning about Netgraph however
this is an excellent driver to start playing with.
2000-05-01 22:48:23 +00:00
mdodd
2df7565f8c Split out the ISA bus front end code into its own file. PCCARD attachment
coming later this week.  Mitsuru IWASAKI provided a patch to -mobile which
I used to make sure I was doing the right thing but only a small part of
the actual patch was used.
2000-05-01 09:05:19 +00:00
phk
834ace9f10 Driver for DEC "Tulip" based WAN cards from LanMedia Corporation.
This driver should support both the SSI (V.35 etc) E1/T1 unchannelized,
DS3 and HSSI cards.  Only tested on the SSI card.

More info at: http://www.lanmedia.com

Thanks to LanMedia for donating two LMC1000P cards.

if_de.c driver modified by:     LanMedia
NetGraphification by:   	Stephen Kiernan <sk-ports@vegamuse.org>
2000-04-26 20:16:56 +00:00
obrien
8826f4fb4d Add linker_if.m to the mix. 2000-04-24 23:08:23 +00:00
obrien
59a15e97aa * Use sys/sys/random.h rather than a i386 specific one.
* There was nothing that should be machine dependant about
  i386/isa/random_machdep.c, so it is now sys/kern/kern_random.c.
2000-04-24 17:30:08 +00:00
wpaul
4b7d28e192 Reoganize/update the SysKonnect driver:
- Break out the support for the XMAC II's PHY into an miibus driver.

- Reorganize the probe/attach stuff using newbus. Each XMAC is now
  attached to the parent GEnesis controller using newbus. This is
  necessary since each XMAC must also have an attached miibus, and
  the miibus read/write register routines need to be able to get
  at the softc struct for each XMAC, not the one for the parent
  controller. This allows me to get rid of the grotty code I added
  for selecting the unit numbers for the ifnet interfaces: the unit
  numbers are now derived from the newbus-assigned unit numbers,
  which should track with the ifnet interface numbers. I think.
  At the very least, there should never be any collisions.

- Add support for the SK-9821 and SK-9822 1000baseTX adapters. Special
  thanks to SysKonnect for loaning me two adapters for testing.
2000-04-22 02:16:41 +00:00
imp
2203652820 card_if.m used by oldcard now too 2000-04-20 07:55:56 +00:00
imp
d09aea49c4 Add kern_event.c 2000-04-17 03:06:27 +00:00
imp
603af983cc Forgot to commit this to add card_if.m.
Pointed out by: iwasaki-san.
2000-04-17 02:54:05 +00:00
rwatson
60d30a3b82 Introduce extended attribute support for FFS, allowing arbitrary
(name, value) pairs to be associated with inodes.  This support is
used for ACLs, MAC labels, and Capabilities in the TrustedBSD
security extensions, which are currently under development.

In this implementation, attributes are backed to data vnodes in the
style of the quota support in FFS.  Support for FFS extended
attributes may be enabled using the FFS_EXTATTR kernel option
(disabled by default).  Userland utilities and man pages will be
committed in the next batch.  VFS interfaces and man pages have
been in the repo since 4.0-RELEASE and are unchanged.

o ufs/ufs/extattr.h: UFS-specific extattr defines
o ufs/ufs/ufs_extattr.c: bulk of support routines
o ufs/{ufs,ffs,mfs}/*.[ch]: hooks and extattr.h includes
o contrib/softupdates/ffs_softdep.c: extattr.h includes
o conf/options, conf/files, i386/conf/LINT: added FFS_EXTATTR

o coda/coda_vfsops.c: XXX required extattr.h due to ufsmount.h
(This should not be the case, and will be fixed in a future commit)

Currently attributes are not supported in MFS.  This will be fixed.

Reviewed by:	adrian, bp, freebsd-fs, other unthanked souls
Obtained from:	TrustedBSD Project
2000-04-15 03:34:27 +00:00
archie
0f96da3140 Add new options NETGRAPH_MPPC_COMPRESSION and NETGRAPH_MPPC_ENCRYPTION.
(Note: NETGRAPH_MPPC_COMPRESSION is disabled until we find a non-proprietary
implementation of the MPPC compression algorithm.)
2000-04-09 21:15:23 +00:00
dfr
b7a308e562 * Factor out the object system from new-bus so that it can be used by
non-device code.
* Re-implement the method dispatch to improve efficiency. The new system
  takes about 40ns for a method dispatch on a 300Mhz PII which is only
  10ns slower than a direct function call on the same hardware.

This changes the new-bus ABI slightly so make sure you re-compile any
driver modules which you use.
2000-04-08 14:17:18 +00:00
nyan
bb6003db9e Newbusify adv driver.
Reviewed by:	imp
2000-04-07 11:32:42 +00:00
imp
47bdc9d12d Awi driver, ported from NetBSD from Atsushi Once-san.
From the README:
	Any IEEE 802.11 cards use AMD Am79C930 and Harris (Intersil) Chipset
	with PCnetMobile firmware by AMD.
	   BayStack 650   1Mbps Frequency Hopping PCCARD adapter
	   BayStack 660   2Mbps Direct Sequence PCCARD adapter
	   Icom SL-200    2Mbps Direct Sequence PCCARD adapter
	   Melco WLI-PCM  2Mbps Direct Sequence PCCARD adapter
	   NEL SSMagic    2Mbps Direct Sequence PCCARD adapter
	   Netwave AirSurfer Plus
			  1Mbps Frequency Hopping PCCARD adapter
	   Netwave AirSurfer Pro
			  2Mbps Direct Sequence PCCARD adapter

Known Problems:
	WEP is not supported.
	Does not create IBSS itself.
	Cannot configure the following on FreeBSD:
		selection of infrastructure/adhoc mode
		ESSID
		...

Submitted by: Atsushi Onoe <onoe@sm.sony.co.jp>
2000-04-06 02:48:48 +00:00
dfr
db8eaf349b Make it possible to include a device interface description by a single
line in files or files.${arch} instead of 13 lines of code.

This is a small chance that this will break the alpha kernel build - I'll
fix it this evening if it does.
2000-04-05 10:33:55 +00:00
cg
3d8f1c9641 enable emu10k1 (sblive) driver, though still playback only 2000-04-04 02:34:45 +00:00
imp
8edbcf2a7c NewBus the cs driver.
Submitted by: max@rsu.ru
2000-03-30 05:16:16 +00:00
nyan
1750096e92 - Added PC-98 Cbus frontend.
- Move dev/aic/aic_isa.c entry from conf/files to conf/files.MACHINE
   because PC-98 uses different file.

Submitted by:	nyan and IMAI Takeshi <take-i@ceres.dti.ne.jp>
2000-03-29 14:32:34 +00:00
cg
152d5e4aac split up ess and sb code
rewrite ess mixer to use native registers
rewrite play/rec code to use more accurate timer when available
add code to use audio2 for playback, but disable it as no irqs are generated
2000-03-28 18:31:01 +00:00
bde
5b592ff060 Fixed most disordering (almost all except for i4b and targets with
complicated rules).
2000-03-23 19:08:49 +00:00
phk
c3ac11dc23 Isolate the Timecounter internals in their own two files.
Make the public interface more systematically named.

Remove the alternate method, it doesn't do any good, only ruins performance.

Add counters to profile the usage of the 8 access functions.

Apply the beer-ware to my code.

The weird +/- counts are caused by two repocopies behind the scenes:
	kern/kern_clock.c -> kern/kern_tc.c
	sys/time.h -> sys/timetc.h
(thanks peter!)
2000-03-20 14:09:06 +00:00
n_hibma
667f00286a Please welcome the URio driver. Written by
Iwasa Kazmi <kzmi\@ca2.so-net.ne.jp>
2000-03-16 09:16:14 +00:00
jlemon
4a12d6a9a2 Changes for IDA driver 2000-03-08 16:17:06 +00:00
mdodd
2b68b47e1e Complete the repo-copy of ida_pci.c to sys/dev/ida/
Implicit Approval by:	 jkh
2000-02-09 04:17:10 +00:00
mdodd
997f85727e if_fpa is included when 'device fpa' is present, not 'device fea'.
Approved by:	jkh
2000-02-01 16:47:34 +00:00
shin
3317fde672 Fix kernel build breakage.
ip6_fw.c also needs ipv6firewall options. Sorry for the problem.

Submitted by: Jim Bloom <bloom@acm.org>
2000-01-30 03:52:28 +00:00
peter
06e7daa235 Use config's tools rather than #if's. 2000-01-29 18:54:12 +00:00
peter
614e4b61da Still allow sbc/gusc/csa to perform as bridge devices (eg: to newmidi)
without pcm being present.
2000-01-29 17:48:28 +00:00
peter
3b5f0828a4 Allow the pnp and pci cards to be attached with just a 'device pcm' in
the user's config file.  Based on an idea/suggestion from Cameron (cg).

Change LINT to build newpcm instead of the old Voxware derived stuff.
That's much more useful in the longer term.
2000-01-29 17:28:48 +00:00
peter
38b8f7bee1 Move the (duplicated exactly!) portable ISA pcm drivers to files and
tighten up the logic a little.
2000-01-29 17:15:03 +00:00
peter
b58543702d Remove kern/tty_tb.c. 2000-01-29 16:36:22 +00:00
shin
f1bf15ce6f Add ip6fw.
Yes it is almost code freeze, but as the result of many thought, now I
think this should be added before 4.0...

make world check, kernel build check is done.

Reviewed by: green
Obtained from: KAME project
2000-01-29 13:54:44 +00:00
shin
927a0a3d01 IPv6 multicast routing.
kernel IPv6 multicast routing support.
  pim6 dense mode daemon
  pim6 sparse mode daemon
  netstat support of IPv6 multicast routing statistics

  Merging to the current and testing with other existing multicast routers
  is done by Tatsuya Jinmei <jinmei@kame.net>, who writes and maintainances
  the base code in KAME distribution.

  Make world check and kernel build check was also successful.
2000-01-28 05:10:56 +00:00
archie
4e800ef1de Include ddb/db_sysctl.c when compiling with 'options DDB'. 2000-01-27 22:29:19 +00:00
brian
44d675d635 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
11008d3e1e Activate the newbusified version of si. 2000-01-24 08:12:40 +00:00
bp
166b3be9e3 Allow if_ef driver to be compiled into kernel. 2000-01-23 03:35:11 +00:00
jkh
ebc6f798e6 Import simple driver for a parallel port radio clock which receives
the German legal time (commonly available in Europe).

Submitted by:	Sascha Schumann <sascha@schumann.cx>
2000-01-19 18:17:25 +00:00
mjacob
01422beaca add file collateral for SES/SAF-TE driver 2000-01-15 07:11:36 +00:00
imp
62fae634a9 Add pccard aic attachment. 2000-01-14 23:44:32 +00:00
wpaul
ef88b7c3be 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
mdodd
fc446003ab Oops! We need an entry for if_ie still. Change a few nits
while I'm here.
2000-01-14 18:50:40 +00:00
peter
fa1c8882f9 Pre 4.0 tidy up.
Collect together the components of several drivers and export eisa from
the i386-only area (It's not, it's on some alphas too).  The code hasn't
been updated to work on the Alpha yet, but that can come later.

Repository copies were done a while ago.
Moving these now keeps them in consistant place across the 4.x series
as the newbusification progresses.

Submitted by:   mdodd
2000-01-14 07:14:17 +00:00
wpaul
17317c9fef 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
nsouch
6713174846 Port of ppbus standalone framework to the newbus system.
Note1: the correct interrupt level is invoked correctly for each driver.
       For this purpose, drivers request the bus before being able to
       call BUS_SETUP_INTR and BUS_TEARDOWN_INTR call is forced by the ppbus
       core when drivers release it. Thus, when BUS_SETUP_INTR is called
       at ppbus driver level, ppbus checks that the caller owns the
       bus and stores the interrupt handler cookie (in order to unregister
       it later).

       Printing is impossible while plip link is up is still TRUE.
       vpo (ZIP driver) and lpt are make in such a way that
       using the ZIP and printing concurrently is permitted is also TRUE.

Note2: specific chipset detection is not done by default. PPC_PROBE_CHIPSET
       is now needed to force chipset detection. If set, the flags 0x40
       still avoid detection at boot.

Port of the pcf(4) driver to the newbus system (was previously directly
connected to the rootbus and attached by a bogus pcf_isa_probe function).
2000-01-14 00:18:06 +00:00
peter
f6d42e4c89 Aiee! I committed the wrong conf/files. Replace the changes for newppbus
with the intended changes.
Drop db_aout.c from files, let db_kld.c do the work.

Noticed by:	bde
2000-01-11 14:54:09 +00:00
peter
19f2e05b31 Fix a typo in the db_kld.c file - it's kld support not raw a.out support.
Always use db_kld.c for symbol table support as the base kernel maintains
this information.
2000-01-11 13:25:12 +00:00
wpaul
dbd332b25b 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