Commit Graph

748 Commits

Author SHA1 Message Date
uwe
c38dba996a lint target depends on ${LINTSTUBS}, not on (nonexistent) ${KERNLINTSTUBS}. 2002-05-07 02:00:17 +00:00
thorpej
cd3aa5df12 Revert revision 1.525. 2002-05-03 17:58:28 +00:00
eeh
be9ab3e5db Provide _LP64 definition if we are generating LP64 binaries. 2002-05-03 00:06:55 +00:00
thorpej
7a49fee765 Add some experimental page-loaning for writes on sockets. It is disabled
by default, and can be enabled by adding the SOSEND_LOAN option to your
kernel config.  The SOSEND_COUNTERS option can be used to provide some
instrumentation.

Use of this option, combined with an application that does large enough
writes, gets us zero-copy on the TCP and UDP transmit path.
2002-05-02 17:55:48 +00:00
ad
77e08f053a Add a driver for Adaptec FSA RAID controllers, as often found in Dell
servers. Based on the FreeBSD/OpenBSD versions.
2002-04-26 02:05:07 +00:00
manu
c7dcec33a1 Added IRIX /dev/usema and dev/usemaclone (void driver for now, will be
filled later)
2002-04-23 06:48:46 +00:00
ad
9a09578e25 Add a driver for ICP-Vortex GDT and Intel Storage RAID controllers. Parts
taken from OpenBSD. Test hardware kindly provided by Intel. This still needs
management bits, and doesn't support older controllers, but that shouldn't
be hard to fix.
2002-04-22 21:05:19 +00:00
augustss
a3343212c3 Add spic. 2002-04-22 13:03:06 +00:00
augustss
7f7ab48604 Rename the audio "bus" attribute audiobus to avoid confusion with audio
device.
2002-04-22 09:41:19 +00:00
bouyer
8cfc41f9ed First cut at a esiop driver (enhanced siop). Doesn't implement tagged queuing
yet.
If is restricted to SIOP which implement the load/store instruction, and
has 10 scratch registers (basically, 825 and newer, possibly 770).
It implements a different interface between host and script, using a real
ring for command starts, and improved support for reconnect which will allow
256 tag per device. It uses interrupt on the fly to signal complete command,
which allows several commands to be serviced per interrupt and doesn't require
the script to stop to signal command completion.
2002-04-21 22:52:05 +00:00
bouyer
1d7af0f55e defflag SIOP_SYMLED. 2002-04-18 12:04:05 +00:00
thorpej
37dc008ca3 Cleanup how file system configuration information is declared, grouping
related information together, with the file system code itself.

This is just low-hanging fruit -- more to come.
2002-04-16 23:14:05 +00:00
thorpej
4762adb809 Move ALTQ configuration definitions into altq/files.altq 2002-04-16 21:27:13 +00:00
thorpej
20ddfbf4c1 Move sysmon configuration definitions to dev/sysmon/files.sysmon. 2002-04-16 21:00:27 +00:00
thorpej
eedd94475c * Move the mii_bitbang attribute into dev/mii/files.mii
* Pull in dev/mii/files.mii from conf/files, rather than playing
  the magic "files include order" dance in N machine-dependent
  configuration definitions.
2002-04-16 20:50:16 +00:00
thorpej
bbb03955e8 Centralize the RAIDframe config definitions. 2002-04-16 20:33:00 +00:00
martin
47cf1728ea No need to explicitly list vlan or ppppoe for if_ethersubr.c, both already
use attribute "ether" which will be enough to pull in if_ethersubr.c
2002-04-07 06:54:35 +00:00
jmc
ec75756238 Provide a definition for sbp2 2002-04-02 10:11:50 +00:00
lukem
d213d804f7 Rename MEMORY_DISK_SIZE (formerly MINIROOTSIZE) to MEMORY_DISK_ROOT_SIZE,
which was suggested by Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> as
being more consistent with what it's controlling...
2002-04-02 05:30:34 +00:00
uwe
4e7d1a999f Add (unfinished) igsfb driver.
While here g/c stale cprofb entry, it's not in the tree and I plan to
support CyberPro cards with igsfb driver eventually (where is my netwinder?)
2002-03-30 20:21:21 +00:00
pk
fb4a06019d `mk48txx' no longer needs a flag. 2002-03-28 11:56:32 +00:00
martin
0db68b667b Now that we have all pieces in place (and enough granularity to specify
B-channel and D-channel drivers separately) split the Fritz!PCI card
driver out of the isic driver.

The new device is called "ifpci" and uses the same D-channel driver as the
isic devices, but has it's own B-channel driver.
2002-03-25 16:39:52 +00:00
martin
0bc69b6498 Now that we have all the pieces of the puzzle available start to unriddle
and move them in their proper places.

Move the BRI registry from layer 2 (duh!) to layer 4, so active cards
(which don't have layer 3 or layer 2 in their driver). Remove all remaining
hard coded controller and driver types. Remove any arbitrary hard coded
limits, at least those that show up in the internal API.

This fixes PR 15950.
2002-03-24 20:35:43 +00:00
manu
3f4cce33b9 Aded missing irix_keme pseudodevice declaration 2002-03-24 17:09:26 +00:00
jdolecek
083f26646d rename EXEC_ELF_CATCHALL to EXEC_ELF_NOTELESS 2002-03-23 09:40:55 +00:00
tv
90f4347de8 Make sure USETOOLS value is propagated (for USETOOLS?=no case in each
kernel Makefile).  Perhaps we should .include this file earlier....
2002-03-18 15:20:08 +00:00
atatat
26500cdfcd Bump kernel version -- ERESTART has been moved and EPASSTHROUGH has
been introduced.
2002-03-17 19:43:07 +00:00
martin
94881fb123 Rename ISDN devices, per discussion on tech-kern. The network devices
become ippp (ISDN ppp) and irip (ISDN raw IP). The character device now
are called: /dev/isdn (isdnd <-> kernel communication), /dev/isdnctl (dialing
and other control), /dev/isdntrc* (tracing), /dev/isdnbchan* (raw B channel
access, i.e. for user land PPP) and /dev/isdntel* (telephone devices, i.e.
for answering machines).
2002-03-16 16:55:51 +00:00
lukem
cd19d52695 * rename MINIROOTSIZE to MEMORY_DISK_SIZE, so that all md(4) options
are now consistently named
* fold opt_mdsize.h into opt_md.h
2002-03-10 19:56:37 +00:00
kent
492504a717 Add aurateconv attribute. 2002-03-09 21:21:57 +00:00
thorpej
24cd6c510c Bump version to 1.5ZB -- The pool(9) API/ABI changed. 2002-03-09 01:42:13 +00:00
sommerfeld
3406f0a3dd The "gif*" tunnelling interface does everything ipip does.
Move usage example from ipip.4 to gif.4
Excise ipip and stitch up the scars.
2002-03-04 13:24:06 +00:00
jmc
cc7dba0633 Add definition for ieee1212/p1212 2002-02-27 05:03:24 +00:00
christos
61924161d3 Add mm.c 2002-02-27 01:16:30 +00:00
mjacob
11ab217af1 Add ISP_FW_CRASH_DUMP option for isp. 2002-02-21 22:23:33 +00:00
jdolecek
5798a9a710 Switch default for pipes to the faster John S. Dyson's implementation.
Old, socketpair-based ones are available with option PIPE_SOCKETPAIR.
2002-02-11 18:11:41 +00:00
jdolecek
c095cf0006 use opt_pipe.h for PIPE_SOCKETPAIR, add PIPE_NODIRECT there too 2002-02-11 18:03:00 +00:00
mrg
20f36f0387 make .s and .S files depend on assym.h 2002-02-11 03:43:53 +00:00
jdolecek
f32b3f4f89 Reduce the massive code duplication regarding joy(4). Split it into
MI and MD parts, and make ISA/ISAPNP/PCI joy(4) attachments MI.
2002-02-02 18:37:38 +00:00
jdolecek
6faa3a8ff2 add defflag PIPE_SOCKETPAIR 2002-01-27 10:28:20 +00:00
lukem
ba6ca94b23 order dev/clockctl.c appropriately 2002-01-15 12:10:50 +00:00
deberg
f2811d153f add smbfs files 2002-01-09 18:01:38 +00:00
drochner
db154a4d20 "attach radio at radio":
using one word as both attribute and device doesn't work well,
radio.c is pulled in even with no such device in the configuration,
and the kernel doesn't link due to missing "radio_cd".
So call the attribute "radiodev" to avoid confusion.
2002-01-07 17:44:42 +00:00
deberg
14615bb443 netsmb 2002-01-04 02:42:23 +00:00
augustss
1c06f6a40f Add support for radio cards. Written by Maxim Tsyplakov and Vladimir Popov
for OpenBSD, from where it was imported.
2002-01-01 21:51:38 +00:00
thorpej
d7536e1e95 Add -ffreestanding to kernel builds. It's not always safe to
use GCC's built-ins.
2001-12-23 22:45:07 +00:00
jdolecek
0f36df0693 Bump version to 1.5ZA - struct file change
Only three version bumps left to beat previous release :)
2001-12-18 22:34:37 +00:00
atatat
5ba4387372 Provide hooks to include the config file(s) in the kernel binary. 2001-12-17 15:40:43 +00:00
soren
dafad2c49b Obsoleted by @@@'s kernel makefile work. 2001-12-16 14:02:46 +00:00
bjh21
7f32875295 if_media support for the DP83905 AT/LANTIC (a souped-up DP8390). 2001-12-16 00:22:43 +00:00
bjh21
c72d5d40dd Add code to support the bugged Macronix MX98905 chip, as used in several
podulebus Ethernet cards.  This replaces the NE2000 memory-access routines
with ones that don't try to transfer more than 255 bytes at a time.

This code should perhaps be merged into ne2000.c, but presumably most NE2000
clones won't need it.
2001-12-15 17:47:34 +00:00
uwe
75b646134f mk48txx needs-flag to allow sparc's clock.c to be compiled without
mostek support that pulls in a lot of other stuff too.
2001-12-10 22:36:21 +00:00
chs
8eafa995c7 don't strip any symbols from profiling kernels,
that makes it harder to figure out what's going on.
2001-12-10 05:24:17 +00:00
thorpej
91c4b48914 Build core_elf32.c if EXEC_ELF32. Build core_elf64.c if EXEC_ELF64. 2001-12-09 23:18:09 +00:00
atatat
6dce2e2bec Make the kernel depend on vers.o' instead of newvers'. This
eliminates the need to unconditionally rebuild vers.o and subsequently
to relink the kernel every time you type make, even if you just
finished one.
2001-12-09 16:04:03 +00:00
atatat
756e7c6c1f Add the rest of the infrastructure needed to support the rest of the
ports.  This includes cleaning out DBG, cleaning up the `clean'
target, and tweaking the warnings flags (cesfic, amigappc, and the arm
ports are a little less warning resistant).

Oh, and let's `install' the kernel into ${DESTDIR} if someone says
`make install'.  We have to think about cross-compilers here.
2001-12-08 15:01:41 +00:00
thorpej
205c159f0e Make the coredump routine exec-format/emulation specific. Split
out traditional NetBSD coredump routines into core_netbsd.c and
netbsd32_core.c (for COMPAT_NETBSD32).
2001-12-08 00:35:25 +00:00
augustss
8c2cf4c7d8 Break out SIR framing to its own file. 2001-12-05 14:50:13 +00:00
augustss
efade85d8e Make the right defaults for kbdmux and mux locators. 2001-12-05 04:05:37 +00:00
augustss
6bf6da1895 Add irframetty pseudo device for IrDA frames over tty. 2001-12-03 23:28:20 +00:00
augustss
ceb54d1040 Add irbus (IrDA) and cir (Consumer Ir) and related file directives. 2001-12-02 10:41:52 +00:00
christos
2c06265fb5 welcome to 1.5Z [struct ucred changes] 2001-11-29 21:24:02 +00:00
christos
ac3540cd92 and it is TCP_COMPAT_42 not CP_COMPAT_42, I am sharpening my bricks. 2001-11-28 17:40:57 +00:00
christos
87953c1f1d it is MROUTING, not ROUTING... 2001-11-28 17:39:22 +00:00
lukem
ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
atatat
9fb85484bc Misplaced colon. 2001-11-28 03:58:25 +00:00
lukem
f69269330e add some empty comment lines to make this more readable (IMHO) 2001-11-28 01:13:21 +00:00
atatat
df7d7405f8 Alter the way that LINKTEXT and LINKDATA (and LINKENTRY) are set so
that empty values for TEXTADDR and DATAADDR (and ENTRYPOINT) will not
screw things up.  Add support for SYSTEM_LD_TAIL_EXTRA which some
ports (not yet converted) are using.  Add support for GENASSYM_EXTRAS
which has just been added to (some of) the arm ports.
2001-11-27 23:28:42 +00:00
thorpej
5cdf707d06 defopt COMPAT_IRIX 2001-11-27 00:50:46 +00:00
yamt
dbaca00330 move dev/isa/cs89x0{.c,{var,reg}.h} into dev/ic
and split isadma parts into /dev/isa/cs89x0isa*.
2001-11-26 19:17:05 +00:00
atatat
155e541aa2 Instead of checking for previous usage, just append to some make
variables.  Tweak some variables to provide for more uniform defaults.
Minor adaption to makefiles for already converted ports.
2001-11-23 05:18:59 +00:00
lukem
0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem
99bccc3cab - pull in opt_kgdb.h where necessary
- replace opt_kgdb_machdep.h with opt_kgdb.h
- defparam opt_kgdb.h:
	KGDB_DEV KGDB_DEVNAME KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
- move from opt_ddbparam.h to opt_ddb.h:
	DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE DDB_BREAK_CHAR SYMTAB_SPACE
- replace KGDBDEV with KGDB_DEV
- replace KGDBADDR with KGDB_DEVADDR
- replace KGDBMODE with KGDB_DEVMODE
- replace KGDBRATE with KGDB_DEVRATE
- use `9600' instead of `0x2580' for 9600 baud rate
- use correct quotes for  options KGDB_DEVNAME="\"com\""
- use correct quotes for  options KGDB_DEV="17*256+0"
- remove unnecessary dependancy on Makefile for kgdb_stub.o
- minor whitespace cleanup
2001-11-20 08:43:19 +00:00
atatat
bbd661c23d The four tools mkdep, strip, objcopy, and objdump are not part of the
defined toolchain if we're not using the new toolchain.  We need them,
so we add our own definitions here.
2001-11-16 16:15:08 +00:00
atatat
5386330b34 Add a MKDEP?=mkdep line so that depend targets will work again. 2001-11-16 13:14:10 +00:00
atatat
d5de3c2fb2 Abstract out a large chunk of the kernel build machinery so that new
build features (such as ross's DEBUGLIST) can easily be applied to all
ports.  This should reduce the complexity of each port's kernel
Makefile considerably.  Line counts:

     227 arch/i386/conf/Makefile.i386.orig
      98 arch/i386/conf/Makefile.i386
     227 arch/alpha/conf/Makefile.alpha.orig
      99 arch/alpha/conf/Makefile.alpha
     219 arch/sparc/conf/Makefile.sparc.orig
     102 arch/sparc/conf/Makefile.sparc
     215 arch/vax/conf/Makefile.vax.orig
     102 arch/vax/conf/Makefile.vax
     253 conf/Makefile.kern.inc

Roll i386, alpha, sparc, and vax over to the new build machinery.
2001-11-16 00:23:02 +00:00
lukem
27cc5a5d37 add RCSID 2001-11-08 05:59:31 +00:00
atatat
6568927550 The cloning devices only needs-flag, not needs-count 2001-11-02 18:39:06 +00:00
augustss
e557cebfce Add kbdmux locator to wsdisplays. 2001-10-13 13:32:20 +00:00
eeh
37b272cd02 Add kern/subr_prop.c. 2001-10-04 19:05:32 +00:00
mrg
5d4f3fa900 add a backend serial driver for the cirrus logic CL-CD180/1864/1865
8 port chip.  this is used in several sbus (sparc) serial boards, as
well as an 8 port isa card from riscom.  sio16 (sbus) frontend coming
shortly.

this is heavily based on the com and zs drivers.
2001-10-03 04:25:29 +00:00
thorpej
fb46595216 Define an "acpibus" attribute, to which "acpi" can attach. 2001-09-28 02:06:17 +00:00
onoe
6a617566bc Move IEEE 802.11 MAC management functions from awi driver to
if_ieee80211subr.c, which can be shared between any IEEE 802.11
drivers.
However, most of current working IEEE 802.11b wireless LAN cards
have rich firmware and we cannot have a control to management frames
for such cards.

IBSS creation is now supported for the awi driver.
2001-09-18 09:09:57 +00:00
manu
dbf45befa3 Added the clockctl pseudodevice driver 2001-09-16 07:33:31 +00:00
eeh
345c4a7b0d Driver for Sun GEM gigabit ethernet, Sun ERI 10/100, and Apple GMAC. 2001-09-16 00:11:41 +00:00
chs
02464e8394 bump to 1.5Y: vfs_reinit, massive UVM/UBC/filesystem changes. 2001-09-15 20:48:27 +00:00
chs
64c6d1d2dc a whole bunch of changes to improve performance and robustness under load:
- remove special treatment of pager_map mappings in pmaps.  this is
   required now, since I've removed the globals that expose the address range.
   pager_map now uses pmap_kenter_pa() instead of pmap_enter(), so there's
   no longer any need to special-case it.
 - eliminate struct uvm_vnode by moving its fields into struct vnode.
 - rewrite the pageout path.  the pager is now responsible for handling the
   high-level requests instead of only getting control after a bunch of work
   has already been done on its behalf.  this will allow us to UBCify LFS,
   which needs tighter control over its pages than other filesystems do.
   writing a page to disk no longer requires making it read-only, which
   allows us to write wired pages without causing all kinds of havoc.
 - use a new PG_PAGEOUT flag to indicate that a page should be freed
   on behalf of the pagedaemon when it's unlocked.  this flag is very similar
   to PG_RELEASED, but unlike PG_RELEASED, PG_PAGEOUT can be cleared if the
   pageout fails due to eg. an indirect-block buffer being locked.
   this allows us to remove the "version" field from struct vm_page,
   and together with shrinking "loan_count" from 32 bits to 16,
   struct vm_page is now 4 bytes smaller.
 - no longer use PG_RELEASED for swap-backed pages.  if the page is busy
   because it's being paged out, we can't release the swap slot to be
   reallocated until that write is complete, but unlike with vnodes we
   don't keep a count of in-progress writes so there's no good way to
   know when the write is done.  instead, when we need to free a busy
   swap-backed page, just sleep until we can get it busy ourselves.
 - implement a fast-path for extending writes which allows us to avoid
   zeroing new pages.  this substantially reduces cpu usage.
 - encapsulate the data used by the genfs code in a struct genfs_node,
   which must be the first element of the filesystem-specific vnode data
   for filesystems which use genfs_{get,put}pages().
 - eliminate many of the UVM pagerops, since they aren't needed anymore
   now that the pager "put" operation is a higher-level operation.
 - enhance the genfs code to allow NFS to use the genfs_{get,put}pages
   instead of a modified copy.
 - clean up struct vnode by removing all the fields that used to be used by
   the vfs_cluster.c code (which we don't use anymore with UBC).
 - remove kmem_object and mb_object since they were useless.
   instead of allocating pages to these objects, we now just allocate
   pages with no object.  such pages are mapped in the kernel until they
   are freed, so we can use the mapping to find the page to free it.
   this allows us to remove splvm() protection in several places.

The sum of all these changes improves write throughput on my
decstation 5000/200 to within 1% of the rate of NetBSD 1.5
and reduces the elapsed time for "make release" of a NetBSD 1.5
source tree on my 128MB pc to 10% less than a 1.5 kernel took.
2001-09-15 20:36:31 +00:00
enami
163c9dd7c1 Defopt CALLWHEEL_STATS. 2001-09-13 05:22:16 +00:00
enami
c98d856a2f Wrap long lines. 2001-09-13 05:19:53 +00:00
bjh21
52b3d56b11 Add MI Econet support. This is lacking any interfaces to higher-layer
protocols, and lacking any timeouts, but it basically works, doing four-way
handshakes in both directions and incoming Machine Peek operations.

Oh, and Econet is Acorn's ancient, proprietary 500kbit/s networking
technology.
2001-09-10 23:11:05 +00:00
tls
3d4146e21f Add asm versions of blowfish and des transforms for i386.
This also involved updating the in-kernel DES functions to correspond
to the versions in our in-tree OpenSSL, because the des_SPtrans table
has changed; the asm code will not work with the old permutation table!

C and i386 asm code for the DES, 3DES, and Blowfish CBC modes is also
included; it is not currently built as the ESP processing in esp_core.c
splits the CBC operation and the cipher transform apart.  Hopefully that
will be fixed as there is a substantial performance improvement to be had
from doing so.  It will remain necessary to use the C version of the
Blowfish CBC function on some i386 machines, however, as the asm version
uses bswapl, which ony 486 and later processors have.  The DES CBC code
doesn't have this problem.

Finally, change esp_core.c to use the ecb3_encrypt function instead of
calling ecb_encrypt three times; this improves performance a bit, in
particular in the asm case.
2001-09-09 11:00:59 +00:00
thorpej
1cbbd5c37c Disable all of the RF_ASSERT()s by default, enabling them if the
RAID_DIAGNOSTIC option is specified in the kernel configuration
file.
2001-09-01 23:50:43 +00:00
mrg
b734a361cf allow SHMMAX, SHMMIN, SHMMNI and SHMSEG to be specified in the kernel config file. 2001-08-20 04:51:17 +00:00
thorpej
bbd3d01db5 Artur Grabowski's simple brute-force malloc debugger, which uses
guard pages.  Can only debug one malloc type at a time, and nothing
larger than 1 page.  But can be useful for debugging certain types
of "data modified on freelist" type problems.

Modified from code in OpenBSD.
2001-08-17 00:48:29 +00:00
enami
97ceb61316 MII access routines for ASIX AX88190. 2001-08-04 11:38:57 +00:00
assar
a292e4c661 update to 1.5X: removed WILLRELE from vop_mknod and vop_symlink 2001-07-24 15:40:15 +00:00
christos
1d3422cb55 add macho glue 2001-07-14 02:05:54 +00:00
abs
03aaf3d8b4 Rename TCPDEBUG to TCP_DEBUG, defopt TCP_DEBUG and TCP_NDEBUG, and
make all usage of tcp_trace dependent on TCP_DEBUG - resulting in
a 31K saving on an INET enabled i386 kernel.
2001-07-08 16:18:56 +00:00
uch
fd2c055c01 add MEMORY_DISK_DYNAMIC option. if enable MEMORY_DISK_DYNAMIC, file
system image's address and size are setted by md_root_setconf().
2001-07-02 17:17:23 +00:00
gmcgarry
d6182a9e77 In-kernel device configuration manager - allows modification
of device locators at run-time.

Written by Mats O Jansson <moj@stacken.kth.se>.  Reworked by
Jun-ichiro itojun Hagino <itojun@netbsd.org>.
2001-07-01 02:56:20 +00:00