Commit Graph

1225 Commits

Author SHA1 Message Date
petrov 1b730a5d79 Correct NKMEMPAGES_MIN option name. 2005-01-13 20:16:02 +00:00
kent 23b5d91433 merge kent-audio1 branch, which introduces audio filter pipeline to the MI
audio framework


Summary of changes:

* struct audio_params
  - remove sw_code, factor, factor_denom, hw_sample_rate,
hw_encoding ,hw_precision, and hw_channels.  Conversion information
is conveyed by stream_filter_list_t.
  - change the type of sample_rate: u_long -> u_int
  - add `validbits,' which represents the valid data size in
precision bits.  It is required in order to distinguish 24/32bit
from 24/24bit or 32/32bit.

* audio_hw_if
 - add two parameters to set_params()
	stream_filter_list_t *pfil, stream_filter_list *rfil
   A HW driver should set filter recipes for requested formats
 - constify audio_params parameters of trigger_output() and
trigger_input().  They represent audio formats for the hardware.
 - make open() and close() optional
 - add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters
 to round_blocksize()

* sw_code is replaced with stream_filter_t.
  stream_filer_t converts audio data in an input buffer and writes
into another output buffer unlike sw_code, which converts data in
single buffer.
  converters in dev/auconv.c, dev/mulaw.c, dev/aurateconv.c,
dev/tc/bba.c, dev/ic/msm6258.c, and arch/arm/iomd/vidcaudio.c are
reimplemented as stream_filter_t

* MI audio
 - audiosetinfo() builds filter pipelines from stream_filter_list_t
filled by audio_hw_if::set_params()
 - audiosetinfo() returns with EINVAL if mmapped and set_params()
requests filters
 - audio_write(), audio_pint(), and audio_rint() invoke a filter
pipeline.
 - ioctl() for FIONREAD, AUDIO_WSEEK, AUDIO_GETIOFFS,
AUDIO_GETOOFFS, and audio_prinfo::{seek,samples} for
AUDIO_GETINFO handle values for a buffer nearest to userland.

* add `struct device *' parameter to ac97_attach()

* all of audio HW drivers follow audio_hw_if and ac97 changes
2005-01-10 22:01:36 +00:00
cube 0615d0207e Addition of tap(4).
NAME
     tap - virtual Ethernet device

SYNOPSIS
     pseudo-device tap

DESCRIPTION
     The tap driver allows the creation and use of virtual Ethernet devices.
     Those interfaces appear just as any real Ethernet NIC to the kernel, but
     can also be accessed by userland through a character device node in order
     to read frames being sent by the system or to inject frames.

     In that respect it is very similar to what tun(4) provides, but the added
     Ethernet layer allows easy integration with machine emulators or virtual
     Ethernet networks through the use of bridge(4) with tunneling.

``Qui tacet consentire videtur.''
2005-01-08 22:27:54 +00:00
joff 8d1a86c97d add tscs 2005-01-08 02:56:35 +00:00
mycroft 39cdc11f28 Welcome to 2005.
Don't forget to update copyright notices when you add new code.
2005-01-01 00:00:01 +00:00
fvdl cdbba9f326 defparam USB_MEM_RESERVE 2004-12-21 16:36:53 +00:00
heas d7dac6089c Adjust the cscope target so that each source file on a separate line to avoid
overrunning cscope's read buffer and prefix files within lib/{kern,compat}
with the appropriate path.
2004-12-16 00:35:48 +00:00
christos f08ea58021 clonify strip and sl. 2004-12-05 05:43:04 +00:00
peter 396b87b8c2 Convert lo(4) to a clonable device.
This also removes the loif array and changes all code to use the new
lo0ifp pointer which points to the lo0 ifnet structure.

Approved by christos.
2004-12-04 16:10:25 +00:00
christos 0146482549 Clonify bpf. I am not changing /dev/bpfX -> /dev/bpf until all userland
programs have been fixed.
2004-11-30 04:28:43 +00:00
yamt 5dac1f19cb revert unintended changes in the previous. pointed by matthew green. 2004-11-25 06:52:14 +00:00
yamt eb54e7db24 lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
kent 6fd5928d22 add `needs-flag' to the file line for mulaw.
move the file line for aurateconv.
2004-11-13 07:58:14 +00:00
jdolecek 407f95a9b4 ptyfs moved from miscfs/ to fs/
sort file system includes
2004-11-11 19:21:46 +00:00
christos 65f9eaa0a7 Add ptyfs; from Geoff Wing. 2004-11-11 03:32:05 +00:00
christos bb687f7735 Update to the split pty driver. 2004-11-10 17:26:16 +00:00
thorpej dfc3ead10a MBR partition table support for wedges, enabled by the DKWEDGE_METHOD_MBR
option.
2004-10-23 17:25:14 +00:00
yamt 1c2a2dcad3 move i/o schedulers to their own files.
namely, from kern/subr_disk.c to kern/bufq_{fcfs,disksort,readprio,priocscan}.c.
2004-10-14 05:12:28 +00:00
thorpej 563a66a36f Add a parsing module for 4.4BSD/NetBSD disklabels. This module supports
disklabels nested inside an MBR "NetBSD" or "386BSD" partition (first
one found is considered authoritative for the disk), or in one of several
known locations for various NetBSD platforms.  It can read native or other-
endian disklabels (code is there, but not tested).

If you want to play with this, exercise caution; you can't currently
mountroot on a wedge (setroot() needs some work).  Enabled by the
DKWEDGE_METHOD_BSDLABEL kernel option.
2004-10-04 01:16:39 +00:00
thorpej 40f14b0328 Remove something mistakenly committed in last. 2004-10-04 01:07:57 +00:00
thorpej 3cb291f243 Move wedge code to a subdirectory, as suggested by Christos. 2004-10-04 01:07:25 +00:00
thorpej 27f0170634 Break out the wedge discovery methods into true modules, and add some
infrastructure that allows new ones to be added.  The discovery methods
are prioritized, and only one can exist at a given priority.

The DKWEDGE_METHOD_GPT option causes GPT support to be included.  GPT is
at priority 0; we prefer GPT above all others.
2004-10-01 05:16:04 +00:00
christos d7f20abdc1 Disable autonicetime. As discusses in tech-kern. 2004-09-27 14:08:13 +00:00
dyoung f5fc723f2b Add rtw(4). 2004-09-26 03:03:17 +00:00
thorpej baefaf4422 Work-in-progress implementation of "wedges", a new way to represent
partitions in the NetBSD kernel.  See discussion on tech-kern for details.
2004-09-25 03:30:44 +00:00
thorpej 11afd11faa Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*()
calls to ensure that the vnode lock state is as expected when the VOP
call is made.  Modify vnode_if.src to set the expected state according
to the documenting lock table for each VOP.  Modify vnode_if.sh to emit
the checks.

Notes:
- The checks are only performed if the vnode has the VLOCKSWORK bit
  set.  Some file systems (e.g. specfs) don't even bother with vnode
  locks, so of course the checks will fail.
- We can't actually run with VNODE_LOCKDEBUG because there are so many
  vnode locking problems, not the least of which is the "use SHARED for
  VOP_READ()" issue, which screws things up for the entire call chain.

Inspired by similar changes in OpenBSD, but implemented differently.
2004-09-21 03:10:35 +00:00
jdolecek 120bb37404 remove COMPAT_AOUT 2004-09-14 16:57:31 +00:00
simonb 553aeff41f Remove the remains of an old comment that doesn't apply any more. 2004-09-14 15:19:35 +00:00
chs cbc396ce30 work around a binutils bug where converting ELF kernels to a.out with objcopy
produces corrupted binaries when the link_set_* sections extend into another
page after the end of the .text section by using a generated an ldscript that
puts all the link_set_* data into the .text section in the first place.
2004-09-13 09:39:40 +00:00
jkunz 1035c6af08 Import STI wscons(4) driver from OpenBSD and add new driver for PS/2
keyboard / mouse pots of LASI.
2004-08-26 16:48:06 +00:00
itohy 1d4f1abb08 Workbit NinjaSCSI-32 PCI/CardBus SCSI driver (njs) 2004-08-26 14:13:46 +00:00
drochner 4157766364 add a "drvctl" pseudo-device as userland interface to the autoconf
rescan() and detach() functions
2004-08-18 12:19:29 +00:00
thorpej 77cc762658 Don't assume wdc-specific ATA / ATAPI code should be brought in if atabus
or atapibus are configured; use a separate wdc_common attribute to indicate
that the shared wdc code is also present.
2004-08-12 04:23:02 +00:00
bouyer 011181ac3e Implement an atabus control device, and define some ATA bus control
IOCTLS. Implement ATABUSIORESET, which will reset the given ATA bus.
2004-08-01 21:40:41 +00:00
lukem 66ff0c053c Rename LIBCOMPAT* -> SYSLIBCOMPAT*, now that <bsd.own.mk> provides LIBCOMPAT.
Fixes kernel link problem noted by Sebastien Erard.
2004-07-31 00:55:51 +00:00
atatat 1ce3b064a0 Make uudecode into a tool that can be used to build a kernel and redo
the athhal-elf.o handling to take advantage of it.  This means that
bsd.files.mk is no longer included by Makefile.i386 so CFLAGS won't be
duplicated.
2004-07-15 03:35:20 +00:00
uebayasi 2909021c43 Narrow a sed(1) RE handling a file/directory name so that build under a
directory named like 'xxx.cxxx/' succeeds.
2004-07-13 09:07:54 +00:00
mycroft 0230f9fefd Move spc into the MI area. 2004-07-07 08:41:34 +00:00
yamt 34ed9bd392 avoid divide-by-zero in adjtime1() in the case of HZ > 6000. 2004-07-01 12:57:37 +00:00
yamt 3998262d5e defparam HZ. 2004-07-01 12:44:26 +00:00
itojun bfcdaa5766 PF from openbsd 3.5. missing features:
- pfsync (due to protocol # assignment issues)
- carp (not really a PF portion, but thought important to mention)
- PF and ALTQ are mutually-exclusive.  this will be sorted out when
  kjc@csl.sony.co.jp updates ALTQ and PF (and API inbetween)

reviewed by matt, christos, perry

torture-test is very welcomed.
2004-06-22 14:17:07 +00:00
christos c22e4ed8cd ptm is now mandatory, depends on pty, and can be disabled with -DNO_DEV_PTM 2004-06-18 15:02:29 +00:00
sekiya dabf5a69e2 Link rtl81x9.c when re* is defined (hi, Toshi!) 2004-05-29 12:12:28 +00:00
thorpej f2da431235 Add common routines for SATA controllers. Right now, we have sata_speed(),
which reports the speed encoded in the SStatus register.
2004-05-28 23:26:27 +00:00
toshii 4ee3a39f89 Add re(4) RealTek 8139C+/8169/8169S/8110S PCI ethernet adapter driver,
from FreeBSD.
I haven't tested this code very well, but it seems to work fairly well
for me.
2004-05-28 15:35:41 +00:00
christos 917cdbbd9e Unix 98 pty multiplexor device; original code from OpenBSD. 2004-05-27 02:56:38 +00:00
christos 983359fdd3 put back the notyet around the note section; the bfd fix is non-trivial. 2004-05-23 21:11:01 +00:00
christos 28fc1ac65d Enable notes section now that we added header space on the i386. Other
platforms might want to do the same.
2004-05-22 22:07:33 +00:00
petrov 1ac4411c10 Revert default uvm counters, rename UVMMAP_COUNTERS to UVMMAP_NOCOUNTERS. 2004-05-03 20:10:35 +00:00
petrov 5f4709f782 Replace uvm counters with evcnt, initialize them through __link_set (from Matt Thomas),
disable counters by default and add configuration option UVMMAP_COUNTERS.
2004-05-01 19:40:39 +00:00
thorpej c3d8434559 defflag COM_PXA2X0. 2004-05-01 19:06:24 +00:00
thorpej cdac01064e Rename the COM16650 option to COM_16650, for consistency with other
com variant options.
2004-05-01 19:03:59 +00:00
matt 08381af38e -fno-zero-initialized-in-bss only to gcc3, not gcc2.95 2004-04-25 04:24:06 +00:00
pk 3c83ebd4ab Force zero-initialised variables into the .data segment. 2004-04-24 22:07:15 +00:00
drochner 3874dc0ca9 defopt COMPAT_20 2004-04-21 12:44:13 +00:00
cl 9a39f88e1e add block device driver 2004-04-17 12:56:26 +00:00
atatat ce5e5c045e s/SYSCTL_USE_DESCR/SYSCTL_INCLUDE_DESCR/g since the latter name seems
more popular.  Or at least, less unpopular.
2004-04-09 19:01:38 +00:00
atatat 9b2972c08e Invert the meaning of SYSCTL_NO_DESCR by calling it SYSCTL_USE_DESCR
instead.  This makes it an option to include the descriptions, as
opposed to an option to *exclude* them.
2004-04-09 18:13:36 +00:00
atatat 1e239fdec9 Create opt_sysctl.h which will hold sysctl related options. I suspect
most of these won't be used (well, the description related one will
be), but it's good to formalize things.
2004-04-08 03:43:38 +00:00
matt b173c9d332 Make kernel continuations optional for now. 2004-03-28 22:43:56 +00:00
jonathan 8e3ebdd449 Pull in sys/kern_kcont. Size is 1.4k, hardly worth making an option
(though it could be made so, if something breaks on platforms without
generic soft-ints).
2004-03-20 03:12:47 +00:00
bjh21 e972d70350 pckbc_machdep_cnattach has been replaced by pckbport_machdep_cnattach, so the
former attribute can be removed.
2004-03-14 13:52:12 +00:00
bjh21 95cdc0362c Add pckbport attribute, and apply it to pckbc. Somehow I missed this file
in the main commit of pckbport.  *blush*
2004-03-13 22:45:23 +00:00
jkunz 17e4dce36a Import MI part of new Intel i82596 Ethernet driver. 2004-03-12 11:37:17 +00:00
rtr 8845b1e975 split off the evcnt code (which is unrelated to autoconfiguration)
into a separate file

approved by simonb@
2004-02-17 05:03:15 +00:00
junyoung 4d4de5b780 device<tab>
attach<tab>
file<tab>
2004-02-14 16:35:58 +00:00
bjh21 5aca86918f Add a new MI attribute, pckbc_machdep_cnattach, and change pckbc_cnattach()
to only call pckbc_machdep_cnattach() if this is present.  This allows
pckbc_machdep_cnattach() to be omitted entirely on most ports, where it only
returns ENXIO anyway.

The devices with this attribute at the moment are pc(4) on i386 and bebox, and
pckbc on sparc, where pckbc_machdep_cnattach() mysteriously returns 0 rather
than ENXIO.
2004-02-14 14:33:28 +00:00
wiz f5b32c1e69 RealTek -> Realtek. 2004-02-13 10:00:54 +00:00
tsarna df3466a71d an(4) needs wlan support 2004-02-03 19:46:18 +00:00
tsarna 72489e1ea0 uuidgen(2) syscall. Originally from FreeBSD, ported by John Franklin in
PR#23470, with minor updates by me. This is only the syscall support
from that PR, for now.

Changes: port over fix from FreeBSD for multicast address generation.
Changed bcopy to memcpy.  For now, #ifdef notyet the portions of
kern_uuid.c that are meant to be used by (currently nonexistent) other
things in the kernel.  Added syscall to COMPAT_FREEBSD as well, though
that's currently not useful, as any program new enough to use this call
also uses other syscalls we don't (yet) emulate.
2004-01-29 02:00:02 +00:00
drochner df39e51fa9 add pps device 2004-01-28 17:27:57 +00:00
jdolecek 6c14651ea0 cleanup old lpt(4) attachment, and glue ppbus in so that they can coexist:
* lpt device is defined in MI place (dev/ppbus/files.ppbus), dev/ic/lpt.c
  is included there too; dev/ic/lpt.c is not included if ppbus is
  configured or if there is alternative platform lpt (like for pc532)
* g/c MD lpt definitions and custom puc/upc attachments,
  glue moved to conf/files and dev/pci/files.pci respectively; remove
  device lpt definition from dev/isa/files.isa
* add ppbus parport attribute, atppc device attachments, adjust plip and lpt
  glue
2004-01-20 19:58:00 +00:00
bjh21 9556e4209d Simple code to provide a console bell through a generic audio device, for
systems that don't have a dedicated feeper.  It's up to MD code to enable
this by having the "audiobell" attribute and calling audiobell() at the
appropriate moment.

Code for making noise in the kernel from Richard Earnshaw.  Simple synthesizer
design from the RISC OS Programmer's Reference manual.
2004-01-17 20:55:59 +00:00
lukem 7bb9d6c875 Store the copyright text in conf/copyright, and use conf/newvers.sh
to generate the appropriate  const char copyright[] = "...";
statement instead of hard coding it into kern/init_main.c.
Idea from Simon Burge.
2004-01-05 03:33:06 +00:00
jonathan 01c51dab61 Split opencrypto configuration into an attribute, usable by inkernel
clients, and a pseudo-device for userspace access.

The attribute is named `opencrypto'. The pseudo-device is renamed to
"crypto", which has a dependency on "opencrypto". The sys/conf/majors
entry and pseudo-device attach entrypoint are updated to match the
new pseudo-device name.

Fast IPsec (sys/netipsec/files.ipsec) now lists a dependency on the
"opencrypto" attribute.  Drivers for crypto accelerators (ubsec,
hifn775x) also pull in opencrypto, as providers of opencrypto transforms.
2003-12-31 16:44:26 +00:00
martin 63095bc32c s/NBPG/PAGE_SIZE/ in a comment.
From Jeff Ito in PR kern/23935.
2003-12-31 12:34:22 +00:00
pk 70f20a1217 Replace the traditional buffer memory management -- based on fixed per buffer
virtual memory reservation and a private pool of memory pages -- by a scheme
based on memory pools.

This allows better utilization of memory because buffers can now be allocated
with a granularity finer than the system's native page size (useful for
filesystems with e.g. 1k or 2k fragment sizes).  It also avoids fragmentation
of virtual to physical memory mappings (due to the former fixed virtual
address reservation) resulting in better utilization of MMU resources on some
platforms.  Finally, the scheme is more flexible by allowing run-time decisions
on the amount of memory to be used for buffers.

On the other hand, the effectiveness of the LRU queue for buffer recycling
may be somewhat reduced compared to the traditional method since, due to the
nature of the pool based memory allocation, the actual least recently used
buffer may release its memory to a pool different from the one needed by a
newly allocated buffer. However, this effect will kick in only if the
system is under memory pressure.
2003-12-30 12:33:13 +00:00
scw 1cbe65fa6a Pull in netinet/ip_ecn.c if FAST_IPSEC is defined. 2003-12-12 20:54:30 +00:00
hannken fbae381aaa The file system snapshot pseudo driver.
Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().

Not enabled by default in any kernel config.

Approved by: Frank van der Linden <fvdl@netbsd.org>
2003-12-10 11:40:11 +00:00
dyoung 97ea67538a Add the RSSI-based rate-adaptation library to the build. 2003-12-07 05:30:22 +00:00
atatat 13f8d2ce5f Dynamic sysctl.
Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(),
vfs_sysctl(), etc, routines, along with sysctl_int() et al.  Now all
nodes are registered with the tree, and nodes can be added (or
removed) easily, and I/O to and from the tree is handled generically.

Since the nodes are registered with the tree, the mapping from name to
number (and back again) can now be discovered, instead of having to be
hard coded.  Adding new nodes to the tree is likewise much simpler --
the new infrastructure handles almost all the work for simple types,
and just about anything else can be done with a small helper function.

All existing nodes are where they were before (numerically speaking),
so all existing consumers of sysctl information should notice no
difference.

PS - I'm sorry, but there's a distinct lack of documentation at the
moment.  I'm working on sysctl(3/8/9) right now, and I promise to
watch out for buses.
2003-12-04 19:38:21 +00:00
lukem 4404046b3f fix the MAKEVERBOSE messages to be consistent with the standard ones 2003-12-04 02:33:41 +00:00
lukem 4ca8399eb2 prefix ${.TARGET} with "${.CURDIR:T}/" in various _MKSHMSG macros;
per similar change to <bsd.own.mk>
2003-12-01 01:12:58 +00:00
pk f7eea59188 Change default verbosity level to `traditional'. 2003-11-25 09:15:50 +00:00
pk 1954be3560 NORMAL_C,NOPROF_C,NORMAL_S: put `@' in front of these to get saner output.
Also we can't use _MKTARGET_COMPILE here. For now, just hard-code the message.
2003-11-25 08:52:40 +00:00
pk d8db9075f0 SYSTEM_LD: don't display every object file on the planet thrice. 2003-11-25 07:47:29 +00:00
lukem 6918f15fc1 Provide appropriate no-op defaults for _MK* macros, in case <bsd.own.mk>
is too old.
2003-11-20 07:08:02 +00:00
lukem 8ec8bba0a9 Add support for MAKEVERBOSE (a first pass, at least).
Use COPTS.<sourcefile> instead of <sourcefile>_G.
Use HOST_SH (which defaults to `sh' if not set).
2003-11-17 09:39:29 +00:00
tls ad6779479c Oops. I missed this file in my previous commit. Add inclusion of
"files.skipjack" now that Skipjack has been moved from
sys/opencrypto to crypto/skipjack.
2003-11-16 12:10:41 +00:00
dsl 438ae29810 Remove the .if !target(dependall) so that 'make dependall' works (again)
for the kernel.
2003-11-14 08:33:36 +00:00
enami 67b61c37a8 Prevent mkdep from parsing compiler flags like -pipe. 2003-11-11 21:26:53 +00:00
jdolecek a10e06c83e force -Wno-uninitialized if the compiler is gcc 2.95 2003-11-06 08:23:22 +00:00
drochner 559255f8db there is no SHMMMNI 2003-10-30 20:37:01 +00:00
mycroft 7198dd0a88 Back out -Wno-uninitialized for m68k -- the compiler bug is fixed. 2003-10-29 21:29:27 +00:00
tsutsui 2ba8cd8f89 Add MI driver for mc146818 based time-of-day clock with todr(9) support. 2003-10-29 17:00:40 +00:00
skrll a366cd57d6 Add COPTS.<fn>, CPUFLAGS.<fn>, CPPFLAGS.<fn> to CFLAGS to mirror the
file specific flags support of bsd.{lib,prog}.mk.

From Christos.
2003-10-28 17:58:57 +00:00
he 4bd87960fa sys/dev/ata/wd.c causes spurious warning about blkno not
being initialized before used.  This appears to be a bug
specific to (at least) the m68k target, and will be reported
to the GCC maintainers.
2003-10-28 12:11:31 +00:00
christos 97ded127c6 Delete -Wno-uninitialized. Tested on sparc64 and i386. Rationale:
Gcc-3.3 produces valid warnings in most cases and uncovers bugs. In the
cases where a variable is known to be initialized, we initialize it and
add: /* XXX: gcc */. If a $MACHINE_ARCH's compiler is busted, it can add
-Wno-uninitialized in the MD Makefile.
2003-10-26 19:24:06 +00:00
thorpej 4011fcfefd Cache the "adjusted" value of sb_max when sb_max is changed, in order
to avoid doing quad math in sbreserve().

Change suggested by Simon Burge, and code inspired by a similar change
in FreeBSD.
2003-10-21 22:55:47 +00:00
cdi 2b3e81f067 Introduce null console. This pseudo device acts as a normal console with the
exception that it discards any output, and is useful for booting the kernel
on headless boxes.
2003-10-17 18:16:42 +00:00
lukem 1fa9c076ee Use a shell variable instead of a cpp #define to provide the full
version string; it's more consistent.
2003-10-15 01:28:49 +00:00
christos bd5d984311 Check for file existance, not readability. Remove extra touch. 2003-10-14 16:59:54 +00:00
lukem 5ab4225f2d assign the variables on separate lines; makes it easier to read and
easier to change one locally with minimal cvs merge issues
2003-10-14 14:23:10 +00:00
lukem 6fc70a0f8c clean up the method to initialize sccs[] and version[] to remove
unnecessary duplication in the source
2003-10-14 06:46:57 +00:00
dyoung 5cea02e6fe Complete replacement of the old 802.11 layer with the new. 2003-10-13 08:34:15 +00:00
jdolecek 83968947b5 Add major for Vinum 2003-10-10 22:46:07 +00:00
jdolecek ef5bb330f5 reassing majors for crypto and pf to use the newly defined MI major
range
2003-10-10 22:42:39 +00:00
jdolecek b5cc0b5a22 update comments for the final major space arrangement:
0-143    machine-dependant/traditional majors
144-159  local/vendor use
160-255  new-style MI range
2003-10-10 22:41:39 +00:00
jdolecek f3e4bcccdc move MI majors config file from sys/dev/majors to sys/conf/majors 2003-10-10 21:26:38 +00:00
grog 17709f5057 Include Vinum. 2003-10-10 06:13:02 +00:00
bouyer 7719e83c8b Following Matt Thomas's request, rename ata attribute to ata_hl, and
wdc_base to ata. We can now have
atabus* at ata?
in kernel config files.
2003-10-08 20:57:59 +00:00
bouyer 99d6009c2a Make the ATA mid-layer appears as atabus, as proposed in
http://mail-index.netbsd.org/tech-kern/2003/09/25/0006.html
This adds a device (atabus) between IDE controllers and wd or atapibus, to
have each ATA channel show up in the device tree. Later there will be atabus
devices in /dev, so that we can do IOCTL on them.
Each atabus has its own kernel thread, to handle operations that needs polling,
e.g. reset and others.

Device probing on each bus it defered to the atabus thread creation.
This allows to do the reset and basic device probes in parallel, which reduce
boot time on systems with several pciide controllers.
2003-10-08 10:58:12 +00:00
jdolecek e6286b949a Add some framework for MI assignment of device majors - add sys/dev/majors
which is automatically included during kernel config, and add comments
to individual machine-dependant majors.* files to assign new MI majors
in MI file.

Range 0-191 is reserved for machine-specific assignments, range
192+ are MI assignments.

Follows recent discussion on tech-kern@
2003-10-05 08:04:24 +00:00
jdolecek 4e1d4165e5 get the release version from <sys/param.h>, so that it won't be necessary
to change two places on version bump
2003-10-04 06:59:56 +00:00
matt 3aafdaac96 Make the kernel makefiles pay attention to NOGCCERROR 2003-10-01 23:11:29 +00:00
thorpej 2652188cc4 New generic I2C framework. Supports bit-bang and "intelligent" I2C
interface controllers (of varying intelligence levels).

Contributed by Wasabi Systems, Inc.  Primarily written by Steve Woodford,
with some modification by me.
2003-09-30 00:35:30 +00:00
pooka 2ef487b6bc autoconf goop for iavc 2003-09-25 15:58:14 +00:00
matt 8012bf2926 Make COMPAT_xx imply all later COMPAT_yy. (COMPAT_09 implies all whereas
COMPAT_14 just implies COMPAT_1[56]).  This means COMPAT_xy implies NetBSD
compatibility for NetBSD x.y OR LATER.
2003-09-22 17:26:14 +00:00
christos 1b246f974c Welcome to 1.6ZC
- hope this sticks for a while since it is my initials
- cl, here is your chance to commit the SA pagefault stuff.
2003-09-16 12:08:23 +00:00
christos 32d14d8273 ZA -> ZB 2003-09-14 07:01:19 +00:00
jdolecek 6dcd3a676c Bump version to 1.6ZA - struct proc and struct lwp changes
Deja vu ...
2003-09-13 08:55:09 +00:00
itojun eb305c3c3c merge netipsec/key* into netkey/key*. no need for both.
change confusing filename
2003-09-12 11:20:57 +00:00
christos b5afd1a527 welcome to 1.6Z 2003-09-06 23:23:17 +00:00
itojun cdb260b823 welcome to 1.6Y (for inpcb/in6pcb change) 2003-09-04 09:17:40 +00:00
thorpej afb044fa37 Duh, remove clock_subr attribute; I am blind today. 2003-08-26 19:23:49 +00:00
thorpej 324f3799d3 Slight cosmetic tweak to last. 2003-08-26 19:20:44 +00:00
thorpej 82c17c3e5e Define an attribute for clock_subr.c 2003-08-26 19:19:36 +00:00
thorpej 7fbfc60c3c Some slight cleanup. 2003-08-26 17:54:33 +00:00
cb 346280bc3c bump kernel version to 1.6X for systrace changes 2003-08-25 19:25:09 +00:00
thorpej 35479644a7 Move the opencrypto defpseudo into files.opencrypto. 2003-08-24 19:21:11 +00:00
thorpej 06b1e7a0f1 Make opencrypto explicitly depend on the "des" attribute. Also pull
in zlib.c explicitly if opencrypto is included.
2003-08-24 19:19:54 +00:00
mrg ef0f504703 allow DEBUG to be set to "-gstabs" or "-gstabs+", to enable building
netbsd.gdb.  (you need "-gstabs" for gcc3.3 and old gdb.)
2003-08-18 00:15:41 +00:00
christos c6e2d17205 exec_elf_common.c is no more. 2003-08-08 18:54:39 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
yamt db8ced8745 bump kernel version to 1.6W, because of vnode/namecache changes.
(skip 1.6V to avoid confusion.)

pointed by Love.
2003-08-01 01:24:44 +00:00
jonathan 33aa54035d Clean up dependencies between opencrypto framework and sys/crypto,
by making the sys/crypto transforms depend on
	(per-transform-config-keyword|opencrypto)

Thanks to  Martin Husemann for double-checking the changes.
2003-07-28 21:28:23 +00:00
thorpej 063033a023 Since everyone uses clock_subr.c (or should, if they don't currently),
list it in conf/files instead of in every port's files.*.
2003-07-27 01:17:37 +00:00
martin 8973c0684a Disable opencrypto for now - the previous commit obviously has not even been
test compiled on a single arch.
2003-07-26 10:26:59 +00:00
jonathan cdfce9ce5e Commit initial NetBSD port of the OpenCrypto Framework (OCF). This
code is derived from Sam Leffler's FreeBSD port of OCF, which is in
turn a port of Angelos Keromytis's OpenBSD work.
Credit to Sam and Angelos, any blame for the NetBSD port to me.
2003-07-25 21:12:39 +00:00
itojun 1270423572 add AH/ESP algorithms: hmac-ripemd160 (AH), AES XCBC MAC (AH),
AES counter mode (ESP)
2003-07-25 10:00:49 +00:00
itojun d64e1c8d6a add hmac-sha2 support. various cleanups (like avoid hardcoding '16').
from kame
2003-07-22 03:24:23 +00:00
thorpej 06d939d5ed Include sysmon earlier. 2003-07-21 05:35:49 +00:00
lukem 001c68bd94 Rename a large chunk of the make(1) variables which refer to a
program/tool from "FOO" to "TOOL_FOO".  The new variables are:
	TOOL_ASN1_COMPILE  TOOL_CAP_MKDB  TOOL_CAT  TOOL_CKSUM  TOOL_COMPILE_ET
	TOOL_CONFIG  TOOL_CRUNCHGEN  TOOL_CTAGS  TOOL_DB  TOOL_EQN  TOOL_FGEN
	TOOL_GENCAT  TOOL_GROFF  TOOL_HEXDUMP  TOOL_INDXBIB  TOOL_INSTALLBOOT
	TOOL_INSTALL_INFO  TOOL_M4  TOOL_MAKEFS  TOOL_MAKEINFO  TOOL_MAKEWHATIS
	TOOL_MDSETIMAGE  TOOL_MENUC  TOOL_MKCSMAPPER  TOOL_MKESDB
	TOOL_MKLOCALE  TOOL_MKMAGIC  TOOL_MKTEMP  TOOL_MSGC  TOOL_MTREE
	TOOL_PAX  TOOL_PIC  TOOL_PREPMKBOOTIMAGE  TOOL_PWD_MKDB  TOOL_REFER
	TOOL_ROFF_ASCII  TOOL_ROFF_DVI  TOOL_ROFF_HTML  TOOL_ROFF_PS
	TOOL_ROFF_RAW  TOOL_RPCGEN  TOOL_SOELIM  TOOL_SUNLABEL  TOOL_TBL
	TOOL_UUDECODE  TOOL_VGRIND  TOOL_ZIC

For each, provide default in <bsd.sys.mk> of the form:
	TOOL_FOO?=	foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
	TOOL_FOO=	${TOOLDIR}/bin/${_TOOL_PREFIX}foo

Document all of these in bsd.README.

This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.
2003-07-10 10:33:58 +00:00
dyoung 46a27517aa Add driver atw for PCI/Mini-PCI/Cardbus 802.11b NICs based on the
ADMtek ADM8211. Read the man page for bugs and other outstanding
issues.
2003-07-06 22:56:07 +00:00
enami 6ad9178b4e defparam SOMAXKVA. 2003-07-03 01:42:10 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
fvdl 3bc458d7f1 Bump version to 1.6U, because of PCI attach args changes. 2003-06-15 23:11:25 +00:00
uwe 61bf5ad8ed igsfb needs-flag. 2003-06-02 22:51:49 +00:00
gmcgarry 29b79182e9 Add gpibdev attribute 2003-06-02 04:12:07 +00:00
thorpej 22791b9867 Add a CPUFLAGS variable which can be set by the user's mk.conf or in
the environment:

CPUFLAGS        Additional flags to the compiler/assembler to select
                CPU instruction set options, CPU tuning options, etc.

Since CPUFLAGS is not implicitly set by any part of the make infrastructure,
it is safe to set in mk.conf, unlike COPTS or DBG.
2003-05-30 18:43:23 +00:00
martin c4aa963e6f Add KGDB_DEVPORT, for machines where KGDB_DEVADDR describes (for example)
a dual uart and we need a port discriminator to decide where to attach
kgdb.
2003-05-26 21:11:04 +00:00
itojun ccc2f25972 no need to compile net_osdep.c. simplify net_osdep.h conditions (remove
bsdi/freebsd/openbsd stuff)
2003-05-14 22:45:02 +00:00
thorpej 405790a85a Add support for the user-generated command interface and event logging
required by the ICP-Vortex management tools.  Many thanks to Achim Leubner
at ICP-Vortex for a few bug fixes and for testing.
2003-05-13 15:42:33 +00:00
thorpej 34a6cf9626 Bump version to 1.6T:
Back out the following chagne:
    http://mail-index.netbsd.org/source-changes/2003/05/08/0068.html

There were some side-effects that I didn't anticipate, and fixing them
is proving to be more difficult than I thought, do just eject for now.
Maybe one day we can look at this again.

Fixes PR kern/21517.
2003-05-10 21:12:24 +00:00
thorpej b77900c3c2 Simplify the way the bounds of the managed kernel virtual address
space is advertised to UVM by making virtual_avail and virtual_end
first-class exported variables by UVM.  Machine-dependent code is
responsible for initializing them before main() is called.  Anything
that steals KVA must adjust these variables accordingly.

This reduces the number of instances of this info from 3 to 1, and
simplifies the pmap(9) interface by removing the pmap_virtual_space()
function call, and removing two arguments from pmap_steal_memory().

This also eliminates some kludges such as having to burn kernel_map
entries on space used by the kernel and stolen KVA.

This also eliminates use of VM_{MIN,MAX}_KERNEL_ADDRESS from MI code,
this giving MD code greater flexibility over the bounds of the managed
kernel virtual address space if a given port's specific platforms can
vary in this regard (this is especially true of the evb* ports).
2003-05-08 18:13:12 +00:00
ragge 56a3de2302 Include kern_ksyms if ksyms | ddb | lkm. Never include db_elf.c. 2003-04-24 20:04:03 +00:00
fvdl 85ef2607ca Changes for newer ahc driver, and ahd driver (the latter is a placeholder
until it's actually added, soon).
2003-04-19 19:29:10 +00:00
thorpej 7e4fd7b547 Device driver for the LSI Logic Fusion-MPT based SCSI and Fibre Channel
adapters.  Currently supports:

* LSI 53c1030 Ultra320 SCSI
* LSI FC909, FC909A, FC919, and FC929 Fibre Channel

Ported from the FreeBSD "mpt" driver, written by Greg Ansley.  Thanks
to Frank van der Linden for testing and some bug finding.

This work was sponsored by Wasabi Systems, Inc.
2003-04-16 22:02:59 +00:00
drochner 93c6f5d089 Rename the IPR_VJ option into IRIP_VJ (as irip(4) told all the time),
create an opt_ header and make the dependency on slcompress.c more exact.
(OK by martin)
2003-04-11 14:45:27 +00:00
christos b9f9db3ca2 Bye Bye UCONSOLE 2003-04-10 22:06:51 +00:00
thorpej df25ffa39a Bump to 1.6R -- mbuf and pool changes. 2003-04-09 19:28:06 +00:00
tsutsui 7b4697bdbe Add MI NCR/Symbios 53c700 SCSI driver.
This "oosiop" driver was originally written by Shuichiro URATA
for arc port, and then it was modified by me to make it work
also on hp700.

This driver has been tested on my NEC Express5800/240 with 53c700-66
for several months, and also tested on HP9000 735/125 with 53c700
(though current hp700 port has been broken since SA merge).
Both sync transfer and disconnect/reselect work fine,
but tagged queuing is not implemented yet.
2003-04-06 09:48:41 +00:00
dsl eb1dfe29d9 Bump version to 1.6Q - for struct proc and struct pgrp change 2003-03-19 11:57:04 +00:00
jdolecek 66c83f4d8e union fs moved from miscfs/union to fs/union
omission pointed out by Martti Kuparinen
2003-03-16 11:50:27 +00:00
thorpej b81d443ef3 Allow a memory disk image to be statically included in the kernel
to be specified in the kernel configuration file, like so:

makeoptions	MEMORY_DISK_IMAGE="/path/to/image.fs"
2003-03-07 01:26:12 +00:00
christos 924acc6389 simplify the script, and add a disabled netbsd note for now. 2003-03-02 22:17:30 +00:00
perseant eab869e1c0 Make BRIDGE_IPF an option, and document it. Add it (commented) to GENERIC.
Let brconfig tell whether the bridge is using the ipfilter hook, or not.
2003-02-27 19:22:36 +00:00
matt 65e5548a17 Add MBUFTRACE kernel option.
Do a little mbuf rework while here.  Change all uses of MGET*(*, M_WAIT, *)
to m_get*(M_WAIT, *).  These are not performance critical and making them
call m_get saves considerable space.  Add m_clget analogue of MCLGET and
make corresponding change for M_WAIT uses.
Modify netinet, gem, fxp, tulip, nfs to support MBUFTRACE.
Begin to change netstat to use sysctl.
2003-02-26 06:31:08 +00:00
atatat df0a9badc6 Introduce "top down" memory management for mmap()ed allocations. This
means that the dynamic linker gets mapped in at the top of available
user virtual memory (typically just below the stack), shared libraries
get mapped downwards from that point, and calls to mmap() that don't
specify a preferred address will get mapped in below those.

This means that the heap and the mmap()ed allocations will grow
towards each other, allowing one or the other to grow larger than
before.  Previously, the heap was limited to MAXDSIZ by the placement
of the dynamic linker (and the process's rlimits) and the space
available to mmap was hobbled by this reservation.

This is currently only enabled via an *option* for the i386 platform
(though other platforms are expected to follow).  Add "options
USE_TOPDOWN_VM" to your kernel config file, rerun config, and rebuild
your kernel to take advantage of this.

Note that the pmap_prefer() interface has not yet been modified to
play nicely with this, so those platforms require a bit more work
(most notably the sparc) before they can use this new memory
arrangement.

This change also introduces a VM_DEFAULT_ADDRESS() macro that picks
the appropriate default address based on the size of the allocation or
the size of the process's text segment accordingly.  Several drivers
and the SYSV SHM address assignment were changed to use this instead
of each one picking their own "default".
2003-02-20 22:16:05 +00:00
jdolecek 17de86b837 need to include netsmb/files.netsmb 2003-02-18 12:20:19 +00:00
jdolecek 6b01f028b8 move netsmb-specific entries to netsmb/files.netsmb
g/c options SMB and opt_smb.h
rename the pseudo device to nsmb, and use needs-flag instead needs-count,
 adjust nsmbattach() appropriately
replace SMB_CHECKMINOR() with explicit code in smb_dev.c, to improve readability
2003-02-18 12:18:28 +00:00
perseant b397c875ae Add code to UBCify LFS. This is still behind "#ifdef LFS_UBC" for now
(there are still some details to work out) but expect that to go
away soon.  To support these basic changes (creation of lfs_putpages,
lfs_gop_write, mods to lfs_balloc) several other changes were made, to
wit:

* Create a writer daemon kernel thread whose purpose is to handle page
  writes for the pagedaemon, but which also takes over some of the
  functions of lfs_check().  This thread is started the first time an
  LFS is mounted.

* Add a "flags" parameter to GOP_SIZE.  Current values are
  GOP_SIZE_READ, meaning that the call should return the size of the
  in-core version of the file, and GOP_SIZE_WRITE, meaning that it
  should return the on-disk size.  One of GOP_SIZE_READ or
  GOP_SIZE_WRITE must be specified.

* Instead of using malloc(...M_WAITOK) for everything, reserve enough
  resources to get by and use malloc(...M_NOWAIT), using the reserves if
  necessary.  Use the pool subsystem for structures small enough that
  this is feasible.  This also obsoletes LFS_THROTTLE.

And a few that are not strictly necessary:

* Moves the LFS inode extensions off onto a separately allocated
  structure; getting closer to LFS as an LKM.  "Welcome to 1.6O."

* Unified GOP_ALLOC between FFS and LFS.

* Update LFS copyright headers to correct values.

* Actually cast to unsigned in lfs_shellsort, like the comment says.

* Keep track of which segments were empty before the previous
  checkpoint; any segments that pass two checkpoints both dirty and
  empty can be summarily cleaned.  Do this.  Right now lfs_segclean
  still works, but this should be turned into an effectless
  compatibility syscall.
2003-02-17 23:48:08 +00:00
atatat d2982a52ac Sorry. That's not for public consumption yet. 2003-02-10 15:20:04 +00:00
atatat a8481319cb Add a kern.dump_on_panic sysctl variable (and documentation, and a
kernel config option) that controls whether the kernel dumps to the
dump device on panic.  Dumps can still be forced via the ``sync''
command from ddb.  Defaults to ``on''.
2003-02-10 00:35:15 +00:00
matt 62efa61d00 Add ${EXTRA_OBJ} so that pre-compiled .o's can be linked into the kernel. 2003-02-05 18:07:46 +00:00
thorpej 1b84adbe5f New callout implementation. This is based on callwheel implementation
done by Artur Grabowski and Thomas Nordin for OpenBSD, which is more
efficient in several ways than the callwheel implementation that it is
replacing.  It has been adapted to our pre-existing callout API, and
also provides the slightly more efficient (and much more intuitive)
API (adapted to the callout_*() naming scheme) that the OpenBSD version
provides.

Among other things, this shaves a bunch of cycles off rescheduling-in-
the-future a callout which is already scheduled, which the common case
for TCP timers (notably REXMT and KEEP).

The API has been simplified a bit, as well.  The (very confusing to
a good many people) "ACTIVE" state for callouts has gone away.  There
is now only "PENDING" (scheduled to fire in the future) and "EXPIRED"
(has fired, and the function called).

Kernel version bump not done; we'll ride the 1.6N bump that happened
with the malloc(9) change.
2003-02-04 01:21:03 +00:00
matt a53ed95ee8 Allow "the forcing of root on md0a to single user" to be overriden by using
options MEMORY_RBFLAGS=0    (XXX forcing to single user needs to die).
2003-02-03 23:02:42 +00:00
thorpej 9df2a1b394 Bump version to 1.6N; extensible malloc types. 2003-02-01 06:26:30 +00:00
tsutsui ef47e3f676 Changes to allow machines which don't use text mode at the boot time
to use generic VGA driver(s):
- Allow VGA drivers to use wsfont instead of builtin font.
- Add vga_reset() function, which will be called from MD consinit(),
  to put VGA into text mode. This function is enabled by options VGA_RESET.
2003-01-31 21:57:23 +00:00
christos 44a7a1c861 add support for p1003.1b semaphores. From FreeBSD. 2003-01-20 20:02:01 +00:00
soren 02ed3dda01 Remove unintentional change from previous. 2003-01-20 02:42:58 +00:00
soren 0a8d7994d1 Attachment for the HD44780 display and keypad on the front of Cobalt machines. 2003-01-20 01:26:12 +00:00
christos c0b8b6d8c6 add compat_ossaudio 2003-01-18 22:34:23 +00:00
thorpej 6f2d376f48 Bump kernel version to 1.6M -- nathanw_sa branch merge. (M for
multi-lwp processes? :-)
2003-01-18 10:09:03 +00:00
thorpej b78f59b443 Merge the nathanw_sa branch. 2003-01-18 08:51:40 +00:00
thorpej 42b7b023b2 Bump rev to 1.6L ... new autoconfiguration message printing routines. 2003-01-03 02:47:30 +00:00
jdolecek 98d58548c7 move msdosfs code from sys/msdosfs to sys/fs/msdosfs 2002-12-26 12:31:23 +00:00
jdolecek 3a8872dee7 move cd9660 filesystem code from sys/isofs/cd9660 to sys/fs/cd9660 2002-12-23 17:52:02 +00:00
jdolecek 9accf4df15 move NTFS code from sys/ntfs to sys/fs/ntfs 2002-12-23 17:38:19 +00:00
jdolecek 5356de155a move filecorefs code from sys/filecorefs to sys/fs/filecorefs 2002-12-23 17:30:36 +00:00
jdolecek 8974c3cf90 move adosfs files from sys/adosfs to sys/fs/adosfs 2002-12-23 17:15:20 +00:00
atatat 7fead95d43 Remove an antiquated comment and make .depend depend on config_time.h
so that the depend target can properly complete now that perry has the
time to use the time.
2002-12-10 19:33:11 +00:00
haya 805040f592 New Feature: add pseudo device for IEEE 1394 isochronous stream and
isochronous reception routine for IEEE 1394 OHCI (fwohci).  The
transmission part is under construction.

The minimum configuration options for this feature are:

# IEEE 1394 (i.LINK)
fwohci*	at pci? dev ? function ?
pseudo-device	fwiso		1
2002-12-04 00:28:39 +00:00
thorpej 9337fb430e Add -Wno-sign-compare; that flag was made implicit with -Wall in
GCC 3.3, and our sources aren't really up to the task, yet.
2002-11-25 01:37:11 +00:00
atatat 15d85dcb14 Alter config so that it emits a config_time.src file (the source file
for config_time.h) that contains, for example:

/* Sun Nov 17 05:37:51 2002 GMT */
#define CONFIG_TIME     1037511471
#define CONFIG_YEAR     2002
#define CONFIG_MONTH    11
#define CONFIG_DATE     17
#define CONFIG_HOUR      5
#define CONFIG_MINS     37
#define CONFIG_SECS     51

These values represent the current time as of when config was last
run, so that functions (eg, inittodr()) can use these values instead
of being updated once every year or so with the "current" time.

The associated modification to Makefile.kern.inc makes config_time.h
depend on this depend on this and the kernel Makefile, so that
granularity of kernel builds is not reduced.
2002-11-19 04:29:19 +00:00
simonb 71ca818f3c Add COMPAT_15, mips need this. 2002-11-19 04:11:05 +00:00
manu 530968e795 The kernel now builds with COMPAT_DARWIN. 2002-11-12 23:40:19 +00:00
martin c4349cac72 Add a driver for the Myson Technology MTD803 3-in-1 Fast Ethernet Controller,
provided by Peter Bex in PR 18675.
2002-11-07 21:56:56 +00:00
mrg 3e8df71794 - do the COMPAT_16 dance in sysctl_diskstats() for the where == NULL case
as well.  pointed out by enami@.
- defflag COMPAT_16.
2002-11-05 13:22:32 +00:00
itohy 94b2e6e61d Dump DDB_* and SYMTAB_SPACE options to opt_ddbparam.h rather than opt_ddb.h.
These options are used in limited files but #include "opt_ddb.h" are
everywhere, and changing them caused almost full recompilation.
2002-11-04 06:24:38 +00:00
chris 230469d2ae Remove an extra } 2002-11-03 21:12:27 +00:00
perry 7152bf6aeb lint infrastructure overhaul to finally lint the kernel libs right.
XXX the dependencies for the kernel .ln files are just plain wrong. We
need some sort of extended make depend hack to do it right. We will
suffer with it for now.
2002-11-02 07:57:05 +00:00
mrg 514174fe75 disk_unbusy() change -> NetBSD 1.6K. 2002-11-01 12:49:47 +00:00
blymn 29b7b4241f Added support for fingerprinted executables aka verified exec 2002-10-29 12:31:20 +00:00
leo e70f340199 Fritz!PCI v2.0 ISDN driver from FreeBSD. 2002-10-25 21:03:47 +00:00
christos 3d15188e5d use -X to ignore static function unused warnings, and echo the command. 2002-10-24 20:52:38 +00:00
jdolecek d17511b4ea bump version to 1.6J - kqueue branch merge 2002-10-23 09:22:35 +00:00
jdolecek e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
junyoung cc537c2f3a Add option NEW_BUFQ_STRATEGY, a new buffer queue strategy for better
system responsiness under high disk I/O load.

OK'ed by Juergen Hannken-Illjes.
2002-10-18 14:31:10 +00:00
junyoung 1ce9af548e Add VGA raster graphics console driver. It is written as an extension
to char-cell based vga(4) driver, and fully compatible with existing
apps like XFree86. Currently it supports 80x25, 80x30, 80x40 and 80x50
text modes using emulation. You can enable it by specifying `options
VGA_RASTERCONSOLE' in your kernel config file.

Note that displaying multilingual text doesn't work yet. Necessary
code is already there, but userland stuff and some functionality isn't
ready for prime time yet. I'm working on them.
2002-10-15 18:14:41 +00:00
junyoung 0f061c7c7a Move vga_common_probe() to vga_common.c. vga_common.c contains common
stuff between existing char-cell VGA driver and raster VGA driver to
come shortly.
2002-10-15 17:30:43 +00:00
thorpej 0ab79d5327 * Move config defns for the crypto algorithms into their own files.
Define an attribute for each crypto algorithm, and use that attribute
  to select the files that implement the algorithm.
* Give the "wlan" attribute a dependency on the "arc4" attribute.
* Give the "cgd" pseudo-device the "des", "blowfish", "cast128", and
  "rijndael" attributes.
* Use the new attribute-as-option-dependencies feature of config(8) to
  give the IPSEC_ESP option dependencies on the "des", "blowfish", "cast128",
  and "rijndael" attributes.
2002-10-11 01:52:04 +00:00
thorpej 25e34a0941 * Don't make IPKDB an option-dependency of IPKDB_DP8390 (IPKDB_DP8390
does not "imply" IPKDB ... it is merely an IPKDB parameter).
* Place IPKDB-related selectors in lower-case.
2002-10-11 01:00:35 +00:00
thorpej a2a9c5391d Move netns config defns to netns/files.netns. 2002-10-10 23:04:33 +00:00
thorpej b066b407d7 Move netnatm config defns to netnatm/files.netnatm. 2002-10-10 22:58:49 +00:00
thorpej 9ae47ca44d Move netiso config defns to netiso/files.netiso. 2002-10-10 22:56:03 +00:00
thorpej 5b2b587c85 Move netinet, netinet6, ipsec, and ipfilter config defns to
netinet/files.ipfilter, etinet/files.netinet, netinet6/files.netinet6,
and netinet6/files.netipsec.

XXX There are still a few stragglers in conf/files, which are entangled
with other network protocols.
2002-10-10 22:45:45 +00:00
thorpej df2e531a81 Move netccitt config defns to netccitt/files.netccitt. 2002-10-10 22:17:59 +00:00
thorpej c8715bae75 Oops, missed include in the last. 2002-10-10 22:12:53 +00:00
thorpej f664080f40 Move netatalk config defns to netatalk/files.netatalk. 2002-10-10 22:10:52 +00:00
thorpej 6be7d2f3e6 Move IR and Bluetooth config defns missed in previous commit. 2002-10-10 22:07:44 +00:00
thorpej 1e9e72e1ab Move IPKDB config defns to ipkdb/files.ipkdb. 2002-10-10 21:56:50 +00:00
thorpej 05f976610a Move IR and Bluetooth config defns to their own files. 2002-10-10 21:52:28 +00:00
thorpej 60adad59bd Define a "scsi_core" attribute. Make the "scsi" attribute depend on
"scsi_core".  Make all the files previously selected by the "scsi"
attribute selected by the "scsi_core" attribute.  Give the "scsibus"
device the "scsi_core" attribute.
2002-10-09 20:23:56 +00:00
fvdl dcee4ceeba Back out revision 1.23, it breaks all kernel configs that do
makeoptions	COPTS="foo"

There are quite a few of those in the tree, as well.
2002-10-06 00:07:17 +00:00
chs c022ea372b all ports are now fully prototyped and pointer-arith clean.
turn on these warnings all the time.
2002-10-05 17:17:48 +00:00
tsutsui 200406b07a Overhaul of fmv(4) driver:
- Split if_fmv.c into MI/MD part and add ISA-PnP attachment for FMV-183.
  (XXX FMV-184 is not tested. It would require extra media-select functions..)
- Fix probe functions of fmv_isa so that FMV-181A/182A will also match.
  Fixes port-i386/9476.
2002-10-05 15:16:10 +00:00
elric afa20caece cgd should be able to work with or without ipsec. 2002-10-04 23:04:53 +00:00
elric 982f78d12f add in the cgd. 2002-10-04 18:25:51 +00:00
tsutsui fdedb8dbd6 - Merge dev/ic/ate_subr.c into dev/ic/mb86960.c since it only has EEPROM
read function which can also be used for other MB86965 based boards.
- Rewrite EEPROM read function as per 93C06 EEPROM datasheet.
- Misc cleanup.
2002-10-04 15:22:27 +00:00
onoe efe919010c Jumbo commit for wi driver.
- Eliminate wi_hostap.c since most of the code are duplicated with
  net/if_ieee80211subr.c
- Station for Infrastructure network and IBSS also use service functions
  as much as possible to be consistent with other wireless drivers.
Now WEP works for station/ibss/hostap.
2002-09-30 06:50:35 +00:00
sjg 2f6498ae9a Replace COPTS?= with COPTS+= so that a setting of COPTS in mk.conf
(common on sparc systems) does not cause the -O2 in DEFCOPTS to
be lost - which results in an unloadable kernel on sparc.

Reviewed by: christos
2002-09-29 07:22:58 +00:00
thorpej 19eeb8d563 Bump version to 1.6I -- device parent spec change. 2002-09-26 04:12:27 +00:00
thorpej ca5fd3bd46 Garbage-collect the old rmap code. 2002-09-25 22:27:38 +00:00
uwe be3f67ca41 Add some preliminary support for setting up the CyberPro in Netwinder.
Setup sequence obtained from Krups OFW with some CyberPro-specific
magic from Linux driver.  The driver still has a lot of hardcoded
stuff, but it is useful enough to bring up wscons on netwinder.

XXX: Proper console attachment needs to be written (the driver was
originally developed on sparc, where our approach to attaching console
is totally different).

Caveat emptor!
2002-09-24 18:17:24 +00:00
gehenna 5b709627e9 Bump version for the merge of gehenna-devsw. 2002-09-06 14:24:45 +00:00
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
thorpej 556a752996 Build a .gdbinit in the kernel build directory. The new .gdbinit
will source all of the system-provided gdb scrips in sys/gdbscripts,
as well as any files specified by the user in the GDBINIT make var.
2002-09-01 23:04:47 +00:00
gmcgarry a5c84b7617 Bump version for rasctl syscall. 2002-08-28 07:28:53 +00:00
gmcgarry fcdb569acb add kern_ras.c 2002-08-28 07:19:58 +00:00
augustss 0f0102e2cd Add btbus, an attribute for Bluetooth. 2002-08-24 17:28:58 +00:00
thorpej b2cc5a4c03 Make use of page loaning for large socket writes the default. The
SOSEND_NO_LOAN option can be used to go back to the old behavior.
2002-08-21 05:13:36 +00:00
thorpej 5f93930cc5 While the "wi" is a wlan device, it does not currently use any code
from if_ieee80211subr.c, since "wi" devices implement the 802.11
protocol in firmware (for the most part).  So, remove the wlan attribute,
which saves a fair bit of kernel text.
2002-08-11 17:00:04 +00:00
isaki dd0e0396bc Add driver for ScanLogic SL811HS/T USB Host Controller.
XXX It's experimental code yet.

For x68k: USB part of Nereid USB/Ethernet/memory board
For ISA:  ISA USB Host board from Morphy planning
2002-08-11 13:17:52 +00:00
drochner 66c65513fc pull in wi_hostap.c to make the kernel link again 2002-08-11 12:09:44 +00:00
lukem 06b665d30c vers.o should also depend upon $S/conf/newvers.sh and $S/conf/osrelease.sh 2002-08-11 10:47:24 +00:00
briggs e046e751c9 Bump to 1.6F for PMCs (thanks for the reminder, Jason) 2002-08-07 15:29:57 +00:00
briggs 0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
thorpej 07977672c8 Add dmover(9) glue. 2002-08-02 00:32:12 +00:00
jdolecek f340b79eaf bump to 1.6E - struct proc size change on LP64 platforms 2002-07-25 21:13:40 +00:00
wrstuden e3fc9184bd cscope.out target needs depend too, zap old comments 2002-07-12 17:48:23 +00:00
drochner 373b39f1d2 put the "VGA_CONSOLE_SCREENTYPE" parameter into opt_vga.h 2002-07-07 15:09:52 +00:00
perseant eaa565b571 Changed size of struct inode; bump version to 1.6D. 2002-07-06 01:31:32 +00:00
thorpej 6b3c143231 Bump the OS version to 1.6C: socket buffer structure changed. 2002-07-03 19:11:41 +00:00
lukem 325dbd3d1b add reminder to check share/tmac/doc-common as well 2002-07-03 00:49:55 +00:00
yamt d96bff0e27 add KSTACK_CHECK_MAGIC. discussed on tech-kern. 2002-07-02 20:27:44 +00:00
wrstuden a7f2b918d3 Fix cscope and mkid targets so that they work even when the kernel
compile directory is not under /usr/src/sys (i.e. when 'S' is not
'../../../..'). Pointed out by Robert Elz in PR 17384.

Thanks again to Andrew Brown for figuring out how to rip .depend apart.
2002-07-02 19:52:16 +00:00
thorpej 473e69750b This is the "kttcp" network throughput testing pseudo-device. From
the block comment at the top of the file:

      This module provides kernel support for testing network
      throughput from the perspective of the kernel.  It is
      similar in spirit to the classic ttcp network benchmark
      program, the main difference being that with kttcp, the
      kernel is the source and sink of the data.

      Testing like this is useful for a few reasons:

      1. This allows us to know what kind of performance we can
         expect from network applications that run in the kernel
         space, such as the NFS server or the NFS client.  These
         applications don't have to move the data to/from userspace,
         and so benchmark programs which run in userspace don't
         give us an accurate model.

      2. Since data received is just thrown away, the receiver
         is very fast.  This can provide better exercise for the
         sender at the other end.

      3. Since the NetBSD kernel currently uses a run-to-completion
         scheduling model, kttcp provides a benchmark model where
         preemption of the benchmark program is not an issue.

There is a companion "kttcp" user program which uses the kttcp
pseudo-device.

Largely written by Frank van der Linden, with some modifications
from me.
2002-06-28 23:27:13 +00:00
drochner ac1165c19c whitespace 2002-06-28 22:32:58 +00:00
junyoung 754342aeb8 - Work around a hardware bug that loaded fonts don't work, which is
found on many (all?) of PCI-based ATI graphics cards. It is fully optional
  and can be enabled by adding `options VGA_CONSOLE_ATI_BROKEN_FONTSEL'
  to config file.
- Temporarily remove `quirk' mechanism. Similar code already exists
  in pci_quirks.c.
2002-06-27 06:26:51 +00:00
itojun 0143dfc42f integrate IEEE1394 ARP into generic ARP logic.
XXX there's no check at all in ar_hrd, and we don't set ar_hrd on outgoing.
it seems like a bad thing.
2002-06-24 08:06:20 +00:00
wrstuden 10d47b4dd3 Updated version of cscope/mkid support. Check libkern and compat lib
for source files. Also include header files in mkid run.
2002-06-18 23:46:52 +00:00
thorpej 1058dd7aa3 Only build kern_systrace.c if the SYSTRACE option is used. 2002-06-18 00:33:57 +00:00
wrstuden de114b01ee Add cscope and mkid (and cscope.out and ID) targets to kernel compile
Makefiles. The main feature added by these targets is that they cover
ONLY the source files used for a given kernel and no other. Thus when
examining MD routines provided by all machines, you will see only
those applicable for your kernel.
2002-06-17 20:31:26 +00:00
christos 581a55332b systrace support. 2002-06-17 16:24:57 +00:00
perseant 983455d349 Bump version to 1.6B: changed ITIMES. 2002-06-16 00:14:13 +00:00
itojun 6d8d0d63d8 sync with latest KAME in6_ifaddr/prefix/default router manipulation.
behavior changes:
- two iocts used by ndp(8) are now obsolete (backward compat provided).
  use sysctl path instead.
- lo0 does not get ::1 automatically.  it will get ::1 when lo0 comes up.
2002-06-08 21:22:29 +00:00
wrstuden 9e2b945a7b defparam BPF_BUFSIZE 2002-06-06 23:54:47 +00:00
tv fd2474f0f1 Make sure DBSYM is defined if not overridden by USETOOLS=yes. 2002-05-29 16:12:54 +00:00
fvdl 7e00cc50ec Add -Wno-format-zero-length, for forward compatibility with gcc 3.2.
Our in-tree gcc 2.95.3 accepts the flag as well.
2002-05-26 00:15:25 +00:00
simonb 1c5a1746ae Fix space/tab indentation nit. 2002-05-22 05:49:57 +00:00
tv 9f4e74bc62 1.6 has branched. Welcome to "NetBSD 1.6A". 2002-05-22 03:18:19 +00:00
augustss e05075c8d4 Rename a cpc device. 2002-05-21 03:05:00 +00:00
augustss cd2c33190e Add stuff for the CPC700. 2002-05-21 03:01:02 +00:00
matt 77820698c6 Add lfmiop (LSILogic Fusion-MPT I/O Processor) placeholders for
driver to added latter.
2002-05-18 07:23:04 +00:00
thorpej f1f51aa2b8 Move code shared by procfs and the kernel proper out of procfs and
into the kernel proper (renaming functions from procfs_* to process_*).
2002-05-09 15:44:44 +00:00
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