History log of /netbsd-current/sys/modules/Makefile
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.290 20-May-2024 pgoyette

Oooppss remove some local change that was accidentally committed


# 1.289 20-May-2024 pgoyette

Don't build the compat_110 module yet - there's no release_110 with which
we can be compatable.


# 1.288 20-May-2024 riastradh

sys/modules: Don't make compat_110.

Eventually we'll need this but it doesn't make sense until 11.0 is
released.


# 1.287 19-May-2024 christos

version dup3


# 1.286 09-May-2024 pho

port-arm/58194: Resurrect vmt(4) from bitrot

On this architecture vmt(4) used to search for a node "/hypervisor" in the
FDT and probed the VMware hypervisor call only when the node was
found. However, things appear to have changed and VMware no longer provides
the FDT node.

Since vmt(4) doesn't actually need to read anything from FDT, and the
hypervisor call logically resides in virtual CPUs themselves, it would be
better to attach it directly to cpu, just like how it's probed on x86.


# 1.285 02-Apr-2024 riastradh

bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64


# 1.284 21-Mar-2024 riastradh

acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046


# 1.283 20-Mar-2024 riastradh

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046


# 1.282 09-Mar-2024 mrg

skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.286 09-May-2024 pho

port-arm/58194: Resurrect vmt(4) from bitrot

On this architecture vmt(4) used to search for a node "/hypervisor" in the
FDT and probed the VMware hypervisor call only when the node was
found. However, things appear to have changed and VMware no longer provides
the FDT node.

Since vmt(4) doesn't actually need to read anything from FDT, and the
hypervisor call logically resides in virtual CPUs themselves, it would be
better to attach it directly to cpu, just like how it's probed on x86.


# 1.285 02-Apr-2024 riastradh

bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64


# 1.284 21-Mar-2024 riastradh

acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046


# 1.283 20-Mar-2024 riastradh

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046


# 1.282 09-Mar-2024 mrg

skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.285 02-Apr-2024 riastradh

bsd.own.mk: Enable MKLSJIT on aarch64.

Make sure there's only one copy of the conditional, in bsd.own.mk;
just make sys/modules/Makefile conditional on MKSLJIT so we don't
have to keep these in sync.

As a workaround for PR 58106, tweak the conditional definition of
SLJIT_CACHE_FLUSH to use cpu_icache_sync_range only in _HARDKERNEL,
and use __builtin___clear_cache in userland and in rump kernels.

PR 58103: bpfjit.kmod is not built on aarch64


# 1.284 21-Mar-2024 riastradh

acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046


# 1.283 20-Mar-2024 riastradh

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046


# 1.282 09-Mar-2024 mrg

skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.284 21-Mar-2024 riastradh

acpihed(4): New driver for PNP0C33 to notify apei(4).

PNP0C33 denotes the ACPI Hardware Error Device, which exists only to
be a vector for event notifications.

PR kern/58046


# 1.283 20-Mar-2024 riastradh

apei(4): New driver for ACPI Platform Error Interfaces.

For now it is wired up only in x86 ALL kernels, and built as a module
for x86 and Arm. Once it gets a little more testing on machines with
APEI, I would like to flip it on by default.

PR kern/58046


# 1.282 09-Mar-2024 mrg

skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.282 09-Mar-2024 mrg

skip this subdir for "make includes".

it's excessively slow and does nothing (nor should it.)


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.281 26-Dec-2023 pgoyette

Unhook radeondrm module from the build; it doesn't work, and
it's just tempting someone to try it. Leave the files around
in case someone wants to pursue making this work.

Should address kern/57793

XXX Related modules from the same legacy era should probably be
XXX removed, too, but so far only radeondrm has been reported
XXX as an issue. Kep an eye out for sisdrm, savagedrm, tdfxdrm,
XXX and r128drm.


Revision tags: thorpej-ifq-base thorpej-altq-separation-base
# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.280 27-Aug-2023 kardel

make owtemp a module


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

branches: 1.274.2;


Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.279 09-Aug-2023 andvar

viadrmums(4): build legacy VIA DRM UMS driver module for amd64.

This driver is not built-in by default, thus loadable module can help (un)lucky
owners of 64-bit capable VIA (Nano/Eden) systems or early AMD/Intel systems
with some VIA chipsets, which include VIA integrated graphics.
I also boldly added product IDs for few later models from VX8xx/VX9xx chipsets
without 3D support (DX9_0) to "expand" the driver support to more systems.
Tested successfully basic functionality on VX800, and partially successfully
on VX900 (on VX900 Xorg failed to initialize due to openchrome related issues,
viadrmums attaches and it is by used the driver).
Didn't test on VX855, I don't have one.

Pull up to netbsd-10 is needed.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.278 07-May-2023 skrll

RISC-V support that works on QEMU with a single hart.

Thanks for Simon Burge for plic(4).


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.277 13-Apr-2023 riastradh

sys/modules/Makefile: Use MACHINE_CPU, not MACHINE_ARCH, for aarch64.

This way it covers both little-endian and big-endian.


# 1.276 11-Apr-2023 riastradh

aarch64: Build drm modules.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.275 19-Dec-2022 pgoyette

Create compat_100 module infrastructure now that we have branched
for NetBSD-10


Revision tags: netbsd-10-base
# 1.274 03-Dec-2022 brad

Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.274 03-Dec-2022 brad

Split the BMP280 / BME280 driver into common code and create I2C and
SPI attachments.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.273 21-Nov-2022 brad

A driver for the Bosch BMP280 / BME280 temperature, humidity and
atmospheric pressure sensor. This is an inexpensive to moderately
expensive chip available from a large number of places. The driver
supports all aspects of the two chips, except for the repeating read
mode which would allow for sub-second queries, such as fall detection
or perhaps even as an altimeter. This driver also only supports the
I2C interface and not the SPI interface.

The BME280, the one with humidity, is not fully tested at this point,
awaiting upon a breakout board and may not show proper humidity.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.272 17-Nov-2022 brad

A driver for the Aosong AHT20 temperature and humidity sensor. While
slow for an I2C sensor it is inexpensive and should work well enough
in most indoor conditions. All features of the chip are supported.


Revision tags: bouyer-sunxi-drm-base
# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.271 07-Sep-2022 martin

Move emuxki from i386/amd64 specific modules to attachment specific
modules (effectively disabling it for the build for now, as it needs
setlist fixes and breaks the build).


# 1.270 07-Sep-2022 khorben

emuxki(4): allow building as a module

Tested on NetBSD/amd64 with a Sound Blaster Live! Value (CT4870)

Note that this required setting outputs.master to the maximum value
allowed (255) to get sound out, and then cranking the volume pretty
high.

Additional sound cards sponsored by the NetBSD Foundation; thanks!


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.269 28-Jul-2022 riastradh

drm: Hook up the drmkms modules to the build.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.268 27-Jul-2022 maya

Enable amdgpu module & firmware on x86

Make it easier to test this one out, add `load amdgpu` before boot netbsd.

XXX there should probably be a drm block in sys/modules/Makefile which
includes aarch64.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.267 17-Jul-2022 riastradh

drm: Modularize ttm.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.266 04-Jun-2022 pgoyette

Combine the midi and sequencer modules into a single midi_seq module
to avoid a circular dependency as noted in kern/56772. Retain minimal
modules of the original names to accomodate auto-loading upon access
to the /dev/xxx nodes.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.265 14-Apr-2022 pgoyette

Split some common stuff into scsi_subr module. This enables loading
of the iscsi module whether or not there are any scsi things built
into the kernel.

Addresses the iscsi portion of kern/56772


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.264 01-Apr-2022 pgoyette

Create a loaable adiantum module, and make cgd require it.

This enablees use of a loadable cgd module, rather thtan requiring
it to be built-in.

Partially resolves kern/56772


# 1.263 01-Apr-2022 pgoyette

Split i2c_subr.c into a separate module rather than including it in
the iic module. There are valid configurations where i2c_subr code
can be both built-in and part of a loaded module (eg, piixpm is in
the kernel, but the iic module is loaded later). This causes the
in-kernel linker to detect a duplicate symbol.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.262 07-Dec-2021 brad

A driver and user land utility for the Sparkfun Serial Controlled Motor
Driver module as illustrated here:

https://www.sparkfun.com/products/13911

A SCMD module is a ARM SOC simular to a Arduino in front of a motor
driver chip. The single SCMD module can control two motors and up to
16 additional modules can be chained together using an internal I2C
bus. One can interface with the SCMD using tty uart commands, SPI or
I2C. The driver in this commit adds a kernel driver for the I2C and
SPI interfaces. The command line utility provides a set of
convenience commands that support most of the functions of the SCMD
and is able to use the tty uart mode, SPI user land or the included
kernel driver in a uniform manor.

The use of the SCMD module is mostly for small robots and the like,
but it can control anything that is controllable by voltage.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.261 25-Nov-2021 ryo

add support COMPAT_LINUX32 for aarch64


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.260 06-Nov-2021 brad

Driver for the Sensirion SHT30/SHT31/SHT35 temperature and humidity
sensor such as:

https://www.adafruit.com/product/2857

This is a higher priced sensor with a lot of features, including the
ability to do sub-second periodic updates. The driver supports
everything about the sensor except for the alert pin.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.259 14-Oct-2021 brad

A driver for the Sensirion SGP40 MOx gas sensor. An example of this
chip from Adafruit is:

https://www.adafruit.com/product/4829

This is a moderately priced gas sensor that can detect volatile
organic compounds in the air. The driver uses the 3-clause BSD
licensed VOC algorithm provided by Sensirion to turn the raw sensor
metric into a VOC index which can indicate the quality of the air in a
particular indoor environment. All published functions of the chip
are supported and one unpublished feature.


# 1.258 09-Oct-2021 ryo

Modularize compat_linux(8) for aarch64.


# 1.257 03-Oct-2021 brad

A driver for the Sensirion SHT40/SHT41/SHT45 temperature and humidity
sensor. An example of this chip is:

https://www.adafruit.com/product/4885

This is a lower cost chip that provides higher then usual precision
according to the data sheet. This driver supports all of the published
functions that the chip has.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.256 25-Sep-2021 maya

Disable drmkms module builds.

They haven't been functional (and won't be before fixing genfb abi).
In a new drm update, we haven't prioritized fixing the build either.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.255 11-Sep-2021 pgoyette

Build and install the if_run module. run(4) is not necessarily included
in all GENERIC kernels (as reported on libera IRC).


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.254 18-Aug-2021 christos

Fix broken name


# 1.253 17-Aug-2021 kre

s/blake2s/blakes2s/ to match the directory that exists


# 1.252 17-Aug-2021 christos

modules for blake2s libsodium and if_wg


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.251 09-Aug-2021 andvar

fix various typos in compatibility, mainly in comments.


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 thorpej-i2c-spi-conf-base
# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

branches: 1.249.2; 1.249.4;
don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.250 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


Revision tags: cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
# 1.249 25-Mar-2021 nia

don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


# 1.248 01-Nov-2020 pgoyette

branches: 1.248.2;
Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.249 25-Mar-2021 nia

don't restrict pad module to i386 and amd64.

- module build tested on amiga, vax, i386, amd64, evbarm.
- build.sh release tested on i386.
- pad module functionality tested on aarch64.


Revision tags: thorpej-cfargs-base thorpej-futex-base
# 1.248 01-Nov-2020 pgoyette

Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


# 1.247 14-Oct-2020 ryo

branches: 1.247.2;
modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.248 01-Nov-2020 pgoyette

Separate the compat_netbsd32_coredump from the compat_netbsd32 and
coredump modules, into its own module.

Welcome to 7.99.75 !!!


Revision tags: thorpej-futex-base
# 1.247 14-Oct-2020 ryo

modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.247 14-Oct-2020 ryo

modularize, and fix build error


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.246 26-Sep-2020 jmcneill

Add HAVE_NVMM and use it to control the build of NVMM related components.
Defined to "yes" on amd64, "no" everywhere else.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.245 08-Sep-2020 yamaguchi

Added iavf(4) that is based on OpenBSD's iavf(4) implementation

reviewed by msaitoh@n.o and knakahara@n.o


Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base phil-wifi-20200406
# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: is-mlppp-base ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.244 04-Apr-2020 jdolecek

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.243 12-Mar-2020 pgoyette

Split out the quota code from the rest of compat_netbsd32 module. This
allows loading of compat_netbsd32 on kernels that don't have ``options
QUOTA'' enabled.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.242 11-Mar-2020 skrll

Fixup the evbarm PCI modules


Revision tags: ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


Revision tags: ad-namecache-base3
# 1.241 29-Feb-2020 skrll

Disable hifn again


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.240 29-Feb-2020 skrll

Group some PCI only modules together and only build them on a subset of
platforms. The list is not complete.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.239 27-Feb-2020 yamaguchi

Make ixl(4) be able to build as a module


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.238 09-Feb-2020 jmcneill

Retire azalia(4).


Revision tags: ad-namecache-base2
# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

branches: 1.234.2;
Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.237 21-Jan-2020 pgoyette

Split the compat_50 module into two, separating the QUOTA-related
stuff from the rest of the module. This allows loading of the
(main) compat_50 module on kernels that don't include ``options
QUOTA''.

Welcome to 9.99.40 !

Addresses PR kern/54875


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.236 19-Jan-2020 riastradh

Remove filemon(4).

Discussed on tech-kern:
https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html

This was never (intentionally) enabled by default, and the design has
some shortcomings. You can get mostly the same results with ktrace,
as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead
of filemon for make's meta mode.

If applications require higher performance than ktrace, or nesting
that ktrace doesn't support, we might consider adding something back
into the vfs system calls themselves, without hijacking the syscall
table. (Might want a more reliable output format too, e.g. one that
can handle newlines in file names.)


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.235 19-Jan-2020 thorpej

Remove the strip(4) - Starmode Radio IP - pseudo-device driver. It is
long since obsolete.


Revision tags: ad-namecache-base1 ad-namecache-base
# 1.234 01-Jan-2020 ryo

Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.234 01-Jan-2020 ryo

Add module build for aq(4)


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.233 23-Dec-2019 maxv

Revert the removal of filemon.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.232 18-Dec-2019 maxv

Retire filemon, discussed on tech-kern@.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.231 10-Dec-2019 yamaguchi

Ported driver for Intel Ethernet 700 series

reviewed by msaitoh and knakahara


Revision tags: phil-wifi-20191119
# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.230 28-Oct-2019 pgoyette

Continue to build the filemon module, but don't install it. Hopefully
this will help us detect any additional bit-rot that might occur.

XXX It might be a good idea to modify the file permissions on /dev/filemon
XXX to prevent auto-loading of the driver module by non-privileged users.


# 1.229 28-Oct-2019 maya

Disable filemon.

It isn't suited for general use (that is, it poses security risks),
but the existence of the module means it is auto-loaded when /dev/filemon
is opened, which can be done by any user.

Thanks Ilja van Sprundel for the heads up.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.228 28-Oct-2019 ozaki-r

Implement a front-end driver of virtio-9p called vio9p

In conjunction with mount_9p, it enables a NetBSD system running as a VM guest
to mount an exported filesystem by the host via virtio-9p. It exports a 9p
end-point of virtio-9p via a character device file for mount_9p.

Reviewed by yamaguchi@


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.227 22-Sep-2019 christos

Add a new member to struct vfsstat and grow the unused members
The new member is caled f_mntfromlabel and it is the dkw_wname
of the corresponding wedge. This is now used by df -W to display
the mountpoint name as NAME=


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.226 17-Sep-2019 mrg

enable building modules for if_aue(4), if_cdce(4), if_cue(4),
if_kue(4), if_upl(4), if_url(4), and if_urndis(4)


# 1.225 17-Sep-2019 mrg

build exec_elf32 module on arm64.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

branches: 1.222.2;
Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.224 08-Aug-2019 skrll

Build an if_udav module (untested)


# 1.223 31-Jul-2019 mrg

introduce a library of common code / backends to share code between
USB ethernet drivers.

usbnet.h introduces a new set of APIs to provide common solutions
for these driver features:
- USB endpoint pipe handling
- rx and tx chain handling
- generic handlers or support for several struct ifnet callbacks
- MII bus locking
- interrupt handling
- partial autoconf handling: much of attach, and detach/activate
can use common versions directly.

currently, only axen(4) and cdce(4) are converted. the reductions
in these drivers are quite significant: if_cdce.c is reduced from
1000 lines to 320 lines, and if_axen is reduced from 1902 lines
to 1021 lines.

add a "usbnet" module and make the if_axen module depend upon it.


Revision tags: netbsd-9-base
# 1.222 20-Jun-2019 pgoyette

Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.222 20-Jun-2019 pgoyette

Split the ufs code out of the ffs module and into its own module.

Adapt chfs and ext2fs modules accordingly.


Revision tags: phil-wifi-20190609 isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

branches: 1.205.2;
add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


Revision tags: isaki-audio2-base
# 1.221 26-Mar-2019 pgoyette

Now that the if_srt module has a chance of working (ie, it now
actually attaches/detaches the cdevsw!), add the required srt
module to allow module autoload triggered by opening /dev/srtN

XXX As noted in the recent commit to if_srt.c, someone(tm) needs
XXX to create the /dev/srt* device nodes with major 179. :)


# 1.220 24-Mar-2019 pgoyette

Add a loadable module for tap(4).

The code was already modularized, we simply didn't build the loadable
module.

Note also that since the tap(4) device can be reasonably accessed by
either creating a device instance (using ifconfig(8)) or by opening
/dev/tap, we need to create both if_tap.kmod and tap.kmod (similar to
what is done with tun(4)).


# 1.219 06-Feb-2019 rin

Add ure(4): RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device.
Ported from OpenBSD. Support for RX/TX checksum offload added by myself.


# 1.218 04-Feb-2019 mrg

don't assume _LP64 == supports COMPAT_NETBSD32.

this is not true for alpha, ia64 and arm32 ports, and the first two
were not building because of it, and the latter would be missing
the oabi support (likely not a big deal, but still wrong.)

add a makefile fragment that tells you if it is supported and include
it where needed to define COMPAT_NETBSD32 when building the normal
kernel (ie, modules & rump.)


fixes alpha build, probably fixes ia64 build.


XXX: still leaves some netbsd32 code in rf_netbsdkintf.c, that should
be moved into some hooks, but first the configuration setup
needs to be moved into a common function the netbsd32 code can
call into, vs living in the switch case itself.


# 1.217 03-Feb-2019 pgoyette

Don't include the raidframe compat code in the main raid module, the
compat code lives in their own compat_raid_xx modules, which will now
be autoloaded if needed.

While here, extract the compat_netbsd32_raid code into its own module,
too.

Welcome to 8.99.34


# 1.216 27-Jan-2019 pgoyette

Merge the [pgoyette-compat] branch


Revision tags: pgoyette-compat-20190127
# 1.215 21-Jan-2019 alnsn

Build bpfjit and sljit modules on aarch64.


Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226
# 1.214 19-Dec-2018 maxv

Remove compat_svr4 and compat_svr4_32, as discussed on tech-kern@ recently,
but also as discussed several times in the past.


# 1.213 27-Nov-2018 pgoyette

Remove the rest of my local change that somehow snuck in to an
earlier commit.


# 1.212 27-Nov-2018 msaitoh

Remove obsolete ksem entry to prevent build break.


# 1.211 27-Nov-2018 pgoyette

Include the compat_netbsd32* modules for sparc64

Their absence was noticed by martin@ when the recent libnv-related
build failure on amd64 did not affect sparc64!


Revision tags: pgoyette-compat-1126
# 1.210 07-Nov-2018 maxv

Add NVMM - for NetBSD Virtual Machine Monitor -, a kernel driver that
provides support for hardware-accelerated virtualization on NetBSD.

It is made of an MI frontend, to which MD backends can be plugged. One
MD backend is implemented, x86-SVM, for x86 AMD CPUs.

We install

/usr/include/dev/nvmm/nvmm.h
/usr/include/dev/nvmm/nvmm_ioctl.h
/usr/include/dev/nvmm/{arch}/nvmm_{arch}.h

And the kernel module. For now, the only architecture where we do that
is amd64 (arch=x86).

NVMM is not enabled by default in amd64-GENERIC, but is instead easily
modloadable.

Sent to tech-kern@ a month ago. Validated with kASan, and optimized
with tprof.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
# 1.209 28-Aug-2018 riastradh

Rework PCI and AGP conditionalization.

- Push drm_pci_set_unique into driver callback.
- Eliminate drm_pci_set_unique_hook.
- Gather all drm_agp_* functions into struct drm_agp_hooks.
- Replace the nonsensical old atomic garbage by serious locking.
- Make drm_agpsupport.c its own module.
- Eliminate NDRMKMS_PCI.
- Use NAGP from "agp.h" only in drm_module.c for horrible hack.
=> See comment in file for rationale.
- Always define CONFIG_PCI=1 and CONFIG_AGP=1.
- Always go through the drm_agp_* function hooks.
- Ifdef out nouveau agp stuff that doesn't go through drm_agp_*
for reasons that I'm too frustrated to figure out tonight.
- pci_iomap no longer automagically does agp_i810_borrow.
=> Use drm_agp_borrow instead.


# 1.208 25-Aug-2018 rin

Add mue(4), driver for Microchip LAN75xx/LAN78xx known as internal NIC of
Raspberry Pi 3 B+, from OpenBSD.

Tested on Raspberry Pi 3 B+ (LAN7800) and Z-TEK ZE582 (LAN7500).

* BUGS/TODO

- If the media type is set to something other than 1000baseT-FDX, data
transmission becomes quite unstable. Also, ukphy(4) recognize 1000baseT as
a supported media type, but it is not in fact.

- Catch up with changes made to usmsc(4) in nick-nhusb branch, i.e.,
make the driver MP-safe.

- Support RX/VLAN/TX chekcsum offloading.


Revision tags: pgoyette-compat-0728
# 1.207 24-Jul-2018 maxv

Merge the tprof_pmi and tprof_amdpmi modules into a single tprof_x86
module.


# 1.206 10-Jul-2018 maya

Remove viadrm(4), superseded by viadrmums.

Aside from viadrm using older drm code, it's also dysfunctional right now.
See PR port-i386/53364.


Revision tags: phil-wifi-base pgoyette-compat-0625
# 1.205 06-Jun-2018 jakllsch

add virtio_pci to list of not-yet-enabled modules


Revision tags: pgoyette-compat-0521
# 1.204 20-May-2018 thorpej

Add a 1PPS-over-GPIO driver, originally by Brad Spencer, with changes by
me to adapt to the new GPIO interrupt interface and support a wider variety
of GPIO pin configuations.

PR kern/51676


# 1.203 19-May-2018 thorpej

Add an example "gpioirq" driver that demonstrates interrupts on GPIO
pins. Will be enhanced in the future to support sending events to
user space on edge-triggered interrupt events.

Based on initial work by Brad Spencer.
PR kern/51676


Revision tags: pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.202 26-Feb-2018 pgoyette

branches: 1.202.2;
Descend into subdirectory to create the module for ichsmb(4) driver.


# 1.201 25-Feb-2018 kamil

Remove ksem module reference

This does not exist in HEAD.

It looks like accidentally committed in:

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.
src/sys/modules/Makefile r1.200


# 1.200 25-Feb-2018 pgoyette

Add new modules (for i386 and amd64 only) for the imcsmb SMBus driver.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.199 25-Jan-2018 pgoyette

Create amdsmn(4) amd amdzentemp(4) modules for X86


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.198 09-Jan-2018 christos

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet


# 1.197 29-Dec-2017 christos

PR/52848: Brad Spencer: Add module glue for AM2315 and SI70xx drivers


# 1.196 09-Dec-2017 pgoyette

Split ip_ecn code into its own module, so it can be shared between
gif(4), stf(4), and ipsec(4). Without this, loading the if_gif
module can result in redefined global symbols if either ipsec(4) or
stf(4) but not gif(4) is built into the kernel.

Fixes PR kern/52795 (as reported by martin@ via irc).

XXX pullup to netbsd-8


Revision tags: tls-maxphys-base-20171202 nick-nhusb-base-20170825
# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: matt-nb8-mediatek-base netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

branches: 1.192.2;
Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.195 11-Aug-2017 maxv

Don't build the ibcs2 module on i386.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.194 01-Aug-2017 maxv

Don't build the svr4 module on i386.


Revision tags: perseant-stdc-iso10646-base
# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.193 12-Jun-2017 pgoyette

Descend into SUBDIR to actually build the wsbell module.

Missed in previous commit - thanks kre@


Revision tags: netbsd-8-base
# 1.192 01-Jun-2017 pgoyette

Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.192 01-Jun-2017 pgoyette

Add the modules for audio, midi, and sequencer


Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


Revision tags: prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
# 1.191 19-Apr-2017 riastradh

Modularize ualea(4).

Unclear why we have a separate xyz.ioconf for module and XYZ.ioconf
for rump component, but at least xyz_modcmd obviates the need for
xyz_component.c (though evidently the latter could have been replaced
anyway by RUMP_COMPONENT=ioconf in the rump component Makefile).


Revision tags: jdolecek-ncq-base
# 1.190 25-Mar-2017 jdolecek

add vioscsi to the list (disabled)


Revision tags: pgoyette-localcount-20170320
# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

branches: 1.188.2;
Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.189 16-Feb-2017 knakahara

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.


Revision tags: nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.188 15-Dec-2016 pgoyette

Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.


# 1.188 15-Dec-2016 pgoyette

Create a single combined module for spkr_pcppi and spkr_audio, and
build it for all architectures.

By doing this, we can handle pcppi, audio, or both attachments with
non-built-in modules.

XXX Still to do: the module currently cannot be unloaded, and the
XXX spkr device(s) currently cannot be detached. (Really, two
XXX sides of the same problem.)


# 1.187 15-Dec-2016 christos

delete spkr_synth module


# 1.186 10-Dec-2016 pgoyette

Create a new module for the synthesized speaker(4).

XXX Device module autoload (invoked when the /dev/speaker is opened, and
XXX no driver exists) will not find this module. On i386 and amd64, the
XXX autoload will find the spkr module (spkr0 at pcppi0) and that module
XXX will be autoloaded. For other architectures, either include the
XXX "spkr0 at audio0" in your config file, or manually load this new
XXX spkr_synth module using modload(8).


# 1.185 08-Dec-2016 nat

Revert to previous. Add PCPPISPEAKER flag to fix build.


# 1.184 08-Dec-2016 nat

Fix building of the spkr module. The module now is the synthesized speaker.
Reported by joerg@


Revision tags: nick-nhusb-base-20161204
# 1.183 16-Nov-2016 pgoyette

Build the newly-created bufq_* modules


Revision tags: pgoyette-localcount-20161104
# 1.182 02-Nov-2016 pgoyette

* Split sys/kern/sys_process.c into three parts:
1 - ptrace(2) syscall for native emulation
2 - common ptrace(2) syscall code (shared with compat_netbsd32)
3 - support routines that are shared with PROCFS and/or KTRACE

* Add module glue for #1 and #2. Both modules will be built-in to the
kernel if "options PTRACE" is included in the config file (this is
the default, defined in sys/conf/std).

* Mark the ptrace(2) syscall as modular in syscalls.master (generated
files will be committed shortly).

* Conditionalize all remaining portions of PTRACE code on a new kernel
option PTRACE_HOOKS.

XXX Instead of PROCFS depending on 'options PTRACE', we should probably
just add a procfs attribute to the sys/kern/sys_process.c file's
entry in files.kern, and add PROCFS to the "#if defineds" for
process_domem(). It's really confusing to have two different ways
of requiring this file.


# 1.181 19-Oct-2016 skrll

PR kern/51514: ptrace(2) fails for 32-bit process on 64-bit kernel

Updated from the original patch in the PR by me.


# 1.180 15-Oct-2016 skrll

Sort entries within conditional blocks


Revision tags: nick-nhusb-base-20161004
# 1.179 27-Sep-2016 pgoyette

For now, disable all the newly-created ld(4) related modules. We need
to come up with a better way to handle attachment-specific modules, and
possibly a better directory structure for modules in general, as the
current mechanism doesn't scale.


# 1.178 27-Sep-2016 pgoyette

Add module build infrastructure for ld and its attachments


# 1.177 16-Sep-2016 jdolecek

make it possible to load nvme(4) as module to ease testing; currently somewhat
non-optimal, since it includes the ld(4) code also and hence requires the
kernel config to have 'no ld'


Revision tags: localcount-20160914
# 1.176 10-Sep-2016 pgoyette

Add a dummy "tun" module, whose only job is to trigger an autoload of
required module "if_tun". This allows access to /dev/tunN to autload
the require interface module.

XXX There's might be a better place/name for net/tun.c


# 1.175 07-Aug-2016 christos

add new modules


# 1.174 06-Aug-2016 pgoyette

Modularize the pppoe driver


# 1.173 06-Aug-2016 pgoyette

Modularize the sppp_subr stuff so it can be shared by pppoe and lmc
drivers as they get modularized.


# 1.172 06-Aug-2016 christos

Add modules for strip and slip


# 1.171 06-Aug-2016 christos

rename the ppp module so that it autoloads.


# 1.170 06-Aug-2016 pgoyette

Modularize the ppp driver, and adjust dependencies of the compressor
modules.

For now, this is still included as a built-in module in GENERIC kernels.


Revision tags: pgoyette-localcount-20160806
# 1.169 05-Aug-2016 scole

PR port-ia64/51261

Use exec_elf64 modules for ia64


# 1.168 04-Aug-2016 pgoyette

Add and enable a new module, slcompress

This is a prerequisite to modularizing the ppp pseudo-device


Revision tags: pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907
# 1.167 09-Jun-2016 pgoyette

branches: 1.167.2;
New module for ipl (aka ipfilter).


# 1.166 07-Jun-2016 pgoyette

Create separate modules for i2c_bitbang and bpf_filter so these files
can be included in kernels which need them without also duplicating
them in other modules. Removes the duplicate symbols I found which
prevented loading i2c and bpf modules after having fixed PR 45125.


Revision tags: nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
# 1.165 26-Dec-2015 pgoyette

Descend into new raid module, and update sets lists.


# 1.164 07-Dec-2015 pgoyette

Modularize drvctl(4)


# 1.163 07-Dec-2015 pgoyette

Modularize the clockctl pseudo-device and link to the build.


# 1.162 03-Dec-2015 pgoyette

Split out the SYSV IPC stuff into its own compat_netbsd32_sysvipc
module. Adjust dependencies as needed.


# 1.161 03-Dec-2015 pgoyette

Merge the compat_sysv module into the sysv_ipc module - it should
never have been a separate module in the first place (my bad).

Adjust dependencies as appropriate.


# 1.160 02-Dec-2015 pgoyette

Ooops, remove a local change that wasn't supposed to be committed.


# 1.159 01-Dec-2015 pgoyette

Create new compat_netbsd32_mqueue module, and descend into subdir to
build it.


# 1.158 01-Dec-2015 pgoyette

Descend into new compat_netbsd32_nfssrv directory for new module, and
remove netbsd32_nfssvc.c from the original compat_netbsd32 module.


# 1.157 15-Nov-2015 pgoyette

Actually create the wapbl module, since it works.


Revision tags: nick-nhusb-base-20150921
# 1.156 09-Jul-2015 matt

Don't build compat_netbsd32 if mips64 && building mips-n32


Revision tags: nick-nhusb-base-20150606
# 1.155 17-May-2015 pgoyette

Add the spkr module to the build.


# 1.154 14-May-2015 pgoyette

Descend into the examples to build them all the time. (They will not
be installed, but we still want to make sure they build to avoid any
bit-rot).


# 1.153 13-May-2015 pgoyette

Descend into subdir to actually build the new sysv_ipc module


# 1.152 10-May-2015 pgoyette

Split the SYSV* compat code out into a separate compat_sysv module.

For monolithic kernels, both modules will be compiled as "built-ins",
while modular environments will be able to load the SYSVSEM, SYSVSHM,
and SYSVMSG code independant from the rest of compat.

This is a necessary precursor step to making the "STD" SYSV* code
into a separate module.

Tested in both monolithic and modular environments with no errors
seen.


# 1.151 09-May-2015 matt

Build compat_netbsd32.kmod for arm and mips64


# 1.150 03-May-2015 pgoyette

Build the tco watchdog module


# 1.149 29-Apr-2015 riastradh

Enable build of viadrmums module, i386-only.


# 1.148 29-Apr-2015 riastradh

Hold off on building viadrmums module until it works.


# 1.147 29-Apr-2015 riastradh

Module for viadrmums.


# 1.146 23-Apr-2015 pgoyette

Build modules for sysmon and its subcomponents


# 1.145 18-Apr-2015 pgoyette

Add modularized swwdog driver.


Revision tags: nick-nhusb-base-20150406
# 1.144 28-Mar-2015 jmcneill

Split hdaudio and PCI attach glue. Even though the driver was written with
this separation in mind, all of the code lived in sys/dev/pci/hdaudio. Move
common parts to sys/dev/hdaudio and PCI attach glue to sys/dev/pci.


# 1.143 07-Mar-2015 jmcneill

i2c devices don't actually have a dependency on "iic" (the bus driver)
but on "i2cexec". Create an i2cexec module (i2c_exec.c) to mirror the
dependencies in files.i2c and switch device drivers to depend on "i2cexec"
module instead.

A kernel with a USB stack and no I2C controller / bus attachment would spit
out a bunch of "WARNING: module error: can't find builtin dependency `iic'"
messages at boot. This change solves that problem.


Revision tags: nick-nhusb-base
# 1.142 10-Nov-2014 christos

branches: 1.142.2;
dedup and add the drmkms modules


# 1.141 19-Sep-2014 christos

new module


Revision tags: netbsd-7-base tls-maxphys-base
# 1.140 10-Aug-2014 bad

branches: 1.140.2;
Revert most of rev 1.137. Build ubsec module only for i386 and amd64 and
punt on the other arches.


# 1.139 10-Aug-2014 matt

Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only. While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.


# 1.138 09-Aug-2014 riz

empty() wants a variable name, not a value. This should un-break
the arm an mips arch builds which were broken by the previous
commit.


# 1.137 09-Aug-2014 bad

Build ubsec(4) as a module on all arches where it was obivous how to do so.
That excludes powerpc because evppc OEA is missing definitions for
PPC_INTR_IMPL and PPC_PCI_MACHDEP_IMPL.
Adjust set lists.

Compile tested for most arches only.


Revision tags: tls-earlyentropy-base rmind-smpnet-nbase rmind-smpnet-base
# 1.136 18-May-2014 kardel

add HYT-221/271/939 humidity/temperature I2C sensor
extend envsys(4) framework by %rH (relative humidity)


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
# 1.135 03-Jan-2014 pgoyette

branches: 1.135.2;
Add hifn(4) and ubsec(4) to the NOTYET section, and note that they can
be successfully built only on architectures that have PCI.


# 1.134 01-Jan-2014 pgoyette

Modularize the opencrypto components and link to the build


# 1.133 01-Jan-2014 pgoyette

Create modules for software crypto components.


# 1.132 29-Dec-2013 pgoyette

Re-sort in alphabetic sequence.


# 1.131 29-Dec-2013 pgoyette

Modularize net/zlib so it can be used by the vnd module (and, eventually,
by an opencrypto module).


# 1.130 28-Dec-2013 pgoyette

Descend into ccd


# 1.129 28-Dec-2013 pgoyette

Make dksubr.c into a module, and make the cgd and dm modules depend on
it.

Now that cgd is completely modularized, descend into modules/cgd to
actually create the module.


# 1.128 16-Dec-2013 lneto

renamed luacore to luasystm


# 1.127 18-Nov-2013 bad

ubsec is not a MI buildable module. disable it for now.


# 1.126 17-Nov-2013 alnsn

Build and install sljit.kmod and bpfjit.kmod iff ${MKSLJIT} != "no".


# 1.125 17-Nov-2013 bad

Make ubsec(4) loadable as kmod.


# 1.124 16-Nov-2013 skrll

Build a module for usmsc(4).


# 1.123 28-Oct-2013 mbalmer

linke pmf(9l) to the build


# 1.122 28-Oct-2013 mbalmer

link core(9l) (docs pending) to the build


# 1.121 28-Oct-2013 mbalmer

link the lua(4) module to the build


# 1.120 26-Oct-2013 nonaka

Add driver for ASIX AX88178a and AX88179 Ethernet interface.
Ported from OpenBSD.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base
# 1.119 12-Mar-2013 christos

branches: 1.119.6;
normali{s,z}e


# 1.118 10-Mar-2013 christos

new npflog driver split out of npf_ext_log.


Revision tags: yamt-pagecache-base8 yamt-pagecache-base7
# 1.117 10-Dec-2012 rmind

Add NPF "rndblock" extension to randomly drop packets (using a random function
with a percentage or modulo operation). This is a demo module, although it can
be used for packet loss simulation. Example of a procedure in npf.conf:

procedure "somedrop" {
# Drop 1.9% of the traffic
rndblock: percentage 1.9
}


# 1.116 02-Dec-2012 chs

adapt the cyclic module and profile dtrace provider to netbsd.
for now, just hook the cyclic callback into hardclock().


# 1.115 06-Nov-2012 alnsn

Enable bpfjit on sparc.


Revision tags: yamt-pagecache-base6
# 1.114 28-Oct-2012 alnsn

Build bpfjit on i386.


# 1.113 27-Oct-2012 alnsn

Add bpfjit and enable it for amd64.


# 1.112 13-Oct-2012 alnsn

Enable sljit in amd64 kernel and modules.


# 1.111 16-Sep-2012 rmind

Implement dynamic NPF extensions interface. An extension consists of
dynamically loaded module (.so) supplementing npfctl(8) and a kernel
module. Move normalisation and logging functionality into their own
extensions. More improvements to come.


# 1.110 06-Aug-2012 martin

branches: 1.110.2;
Move hdaudio and hdafg modules into x86 only section for now, untill
somebody creates a "all archs with PCI" ifdef.


# 1.109 05-Aug-2012 riastradh

Build hdaudio and hdafg modules.


# 1.108 04-Aug-2012 riastradh

Add a module for uatp(4).


# 1.107 30-Jun-2012 reinoud

Move i386 and amd64 usermode configurations to their respective directories
and make the usermode kernels buildalbe under build.sh.

The resulting kernels are build and packaged correctly as are the associated
modules.


Revision tags: jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9
# 1.106 26-Apr-2012 christos

split the coda module in a device one, and a vfs one so that it works.


# 1.105 25-Apr-2012 pgoyette

Actually create the if_axe module - driver was modularized a while ago.


# 1.104 25-Apr-2012 pgoyette

Actually create the dbcool(4) module. Driver was modularized a while ago.


# 1.103 25-Apr-2012 pgoyette

Create the module for sdtemp (driver itself was modularized some time ago)


Revision tags: yamt-pagecache-base4 jmcneill-usbmp-base8
# 1.102 11-Mar-2012 joerg

Also kill the module build system for ksem.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-0-5-RELEASE netbsd-6-0-4-RELEASE netbsd-6-0-3-RELEASE netbsd-6-0-2-RELEASE netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-base2 netbsd-6-base
# 1.101 17-Jan-2012 jakllsch

branches: 1.101.2;
Add lm, lm_isa_common, lm_isa, lm_wbsio and wbsio modules to the x86 build.


# 1.100 04-Dec-2011 jym

Hook secmodel_extensions(9) to modules build.


Revision tags: jmcneill-usbmp-pre-base2 jmcneill-usbmp-base
# 1.99 24-Nov-2011 ahoka

branches: 1.99.2;
Add module glue for CHFS.


Revision tags: jmcneill-audiomp3-base
# 1.98 15-Nov-2011 riz

Build and install new in-kernel iscsi initiator kernel module and associated
binaries (iscsid, iscsictl) if MKISCSI != no. Initiator can also be built
into a kernel by adding 'pseudo-device iscsi' in kernel configuration.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2
# 1.97 06-Nov-2011 tron

Add "npf_alg_icmp" kernel module.


# 1.96 06-Nov-2011 tron

Build "npf" module.


Revision tags: yamt-pagecache-base
# 1.95 18-Oct-2011 jmcneill

branches: 1.95.2;
add & enable vmt module


# 1.94 02-Oct-2011 mbalmer

Build iic(4) and gpioiic(4) as modules.


# 1.93 29-Sep-2011 sjg

Add filemon to the modules we build.


# 1.92 31-Aug-2011 mbalmer

Link the gpioow(4) and onewire(4) modules to the build and add them to the
lists.


# 1.91 29-Aug-2011 jruoho

Add Zarlink ZL10353 DVB demodulator (or as it is now know, Intel CE623x).


# 1.90 28-Aug-2011 jmcneill

add mach64drm, mgadrm, r128drm, savagedrm, sisdrm, and tdfxdrm modules


# 1.89 12-Aug-2011 mbalmer

gpio(4) and gpiosim(4) can now be built and used as modules. While here,
make some functions static.


# 1.88 11-Aug-2011 mbalmer

pwdog is not for all platforms, build only on i386, x86_64, and sparc64


# 1.87 11-Aug-2011 mbalmer

pwdog(4) is a device driver for QUANCOM Electronic PWDOG1 PCI
attached watchdog timers.


# 1.86 09-Aug-2011 jruoho

Build acpiwdrt(4) as a module on x86.


# 1.85 09-Aug-2011 jruoho

Two placeholder comments.


# 1.84 09-Aug-2011 jmcneill

include cx24227, lg3303, mt2131, nxt2k, tvpll, xc3028, coram, cxdtv, and emdtv
modules in x86 build


# 1.83 09-Aug-2011 jruoho

As wmieeepc(4) was added to amd64 GENERIC, build it also as a amd64 module.


# 1.82 09-Aug-2011 jmcneill

modify the dtv device api so hardware drivers can be loaded independently
of the dtv module


# 1.81 01-Aug-2011 pgoyette

Add build glue for modular spdmem(4) driver, and enable it


# 1.80 31-Jul-2011 jmcneill

build and install finsio module on i386 and amd64


# 1.79 29-Jul-2011 jmcneill

build and install itesio module on i386 and amd64


# 1.78 19-Jul-2011 enami

Build v7fs module on all architecture rather than only on i386.


# 1.77 19-Jul-2011 tron

Build 7th Edition(V7) File System as a kernel module.


# 1.76 15-Jul-2011 jmcneill

add nsclpcsio module to i386 build


# 1.75 13-Jul-2011 jruoho

A driver for HP 3D DriverGuard; a LIS3LV02DL-based accelerometer. Tested on
HP NC4400. Like aps(4), this is commented out in the GENERIC kernels.


# 1.74 09-Jul-2011 jmcneill

build dtv module


# 1.73 15-Jun-2011 mrg

build evbppc modules in 3 different flavours:

- oea (default)
- ibm4xx
- booke

this, together with earlier machine_module[] work, should allow evbppc
platforms to use modules.


# 1.72 15-Jun-2011 jruoho

Modularize hpet(4). Works nicely with the multiple bus locations.


# 1.71 15-Jun-2011 jruoho

Modularize amdtemp(4).


Revision tags: rmind-uvmplock-nbase cherry-xenmp-base rmind-uvmplock-base
# 1.70 14-Apr-2011 yamt

branches: 1.70.2;
re-enable tprof_amdpmi


Revision tags: bouyer-quota2-nbase
# 1.69 04-Mar-2011 jruoho

Add module build glue for odcm(4).


# 1.68 26-Feb-2011 ahoka

Import the Flash and NAND subsytem code contributed by the University
of Szeged, Hungary.

The commit includes:
- Flash layer, which gives a common API to access flash devices
- NAND controller subsystem for the flash layer
- An example OMAP driver which is used on BeagleBoard or alike ARM boards


# 1.67 24-Feb-2011 jruoho

Build glue for viac7temp(4).


# 1.66 24-Feb-2011 jruoho

Add build glue for powernow(4).


# 1.65 23-Feb-2011 jruoho

Build glue for est(4).


# 1.64 20-Feb-2011 jruoho

Add build glue for coretemp(4).


# 1.63 20-Feb-2011 jruoho

Build fujbp(4), fujhk(4), and wmieeepc(4) as modules.


# 1.62 19-Feb-2011 jmcneill

build padlock module on i386


Revision tags: bouyer-quota2-base
# 1.61 05-Feb-2011 christos

fix build!


# 1.60 05-Feb-2011 yamt

build tprof_amdpmi


Revision tags: jruoho-x86intr-base
# 1.59 16-Jan-2011 jmcneill

branches: 1.59.2; 1.59.4;
build and install aps module on i386 and amd64


# 1.58 09-Jan-2011 jruoho

Add a dummy-driver for ACPI fans.


# 1.57 05-Jan-2011 jruoho

Add build files for acpipmtr(4) module.


Revision tags: matt-mips64-premerge-20101231
# 1.56 29-Dec-2010 jmcneill

some platforms don't have bus_dma, so only build these modules on x86


# 1.55 27-Dec-2010 jmcneill

hook xc5k, au8522, and auvitek into build


Revision tags: uebayasi-xip-base4
# 1.54 26-Oct-2010 jruoho

Add asus(x) and hpqlb(4).


# 1.53 25-Oct-2010 jruoho

Build acpidalb(4), acpitz(4), acpivga(4), and aibs(4) as modules on x86.
More to come later.


# 1.52 25-Oct-2010 jruoho

Build acpiacad(4), acpibat(4), acpibut(4), acpicpu(4), acpilid(4), and
thinkpad(4) as modules on x86. More to come later.


# 1.51 24-Oct-2010 jmcneill

build acpiwmi as a module on x86


# 1.50 24-Oct-2010 jmcneill

build wmi drivers as modules on x86


Revision tags: uebayasi-xip-base3
# 1.49 20-Oct-2010 tsutsui

Also build and install compat_aoutm68k.kmod and exec_aout.kmod on m68000
to make things easier. ${MACHINE_ARCH} == ${MACHINE_CPU} on m68k
so we can't use ad.m68k for a set list to exclude m68000.


# 1.48 19-Oct-2010 pgoyette

Build the new swsensor(4) device and add to set lists


# 1.47 15-Oct-2010 tsutsui

Build and install compat_aoutm68k.kmod and exec_aout.kmod on m68k machines.


Revision tags: yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10
# 1.46 31-May-2010 pgoyette

Extract ACPIVERBOSE into a kernel module. The module can be builtin
by defining 'options ACPIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

ACPIVERBOSE also includes code to dump acpi/wmi data.


# 1.45 30-May-2010 pgoyette

Extract MIIVERBOSE into a kernel module. The module can be builtin
by defining 'options MIIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.


# 1.44 30-May-2010 pgoyette

Extract SCSIVERBOSE into a kernel module. The module can be builtin
by defining 'options SCSIVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not SCSI or
atapi support exists.


# 1.43 29-May-2010 pgoyette

Extract USBVERBOSE into a kernel module. The module can be builtin
by defining 'options USBVERBOSE' in the kernel config file (no change
from current behavior), or it can be loaded at boot time on those
architectures that support the boot loader's "load" command.

The module is built for all architectures, whether or not USB support
exists.


# 1.42 24-May-2010 pgoyette

Extract the vendor/product tables and related access routines into a
separate kernel module. Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel. On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.


Revision tags: uebayasi-xip-base1
# 1.41 12-Apr-2010 ahoka

Connect the pf module to the build.


# 1.40 09-Apr-2010 ahoka

Connect the pad(4) kernel module to the build on i386 and amd64.


Revision tags: yamt-nfs-mp-base9
# 1.39 21-Feb-2010 darran

branches: 1.39.2;
DTrace: add the dtrace module to the build.


Revision tags: uebayasi-xip-base
# 1.38 25-Jan-2010 pooka

branches: 1.38.2;
add bpf kmod


# 1.37 05-Jan-2010 dyoung

Fix MKBINUTILS=no builds by leaving out xldscripts.


Revision tags: matt-premerge-20091211
# 1.36 05-Dec-2009 pooka

Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs. User functionality remains the same.


# 1.35 10-Nov-2009 skrll

Move the kmodule linker script source into sys/modules/xldscripts. It is
not part of binutils and definitely not GPL v3.

Discussed with mrg.


Revision tags: jym-xensuspend-nbase
# 1.34 05-Oct-2009 haad

Add zfs sets and needed veriables to hook zfs into the build. ZFS on i386
need still one fix othervise it should be ready for testing.


# 1.33 02-Oct-2009 elad

First part of secmodel cleanup and other misc. changes:

- Separate the suser part of the bsd44 secmodel into its own secmodel
and directory, pending even more cleanups. For revision history
purposes, the original location of the files was

src/sys/secmodel/bsd44/secmodel_bsd44_suser.c
src/sys/secmodel/bsd44/suser.h

- Add a man-page for secmodel_suser(9) and update the one for
secmodel_bsd44(9).

- Add a "secmodel" module class and use it. Userland program and
documentation updated.

- Manage secmodel count (nsecmodels) through the module framework.
This eliminates the need for secmodel_{,de}register() calls in
secmodel code.

- Prepare for secmodel modularization by adding relevant module bits.
The secmodels don't allow auto unload. The bsd44 secmodel depends
on the suser and securelevel secmodels. The overlay secmodel depends
on the bsd44 secmodel. As the module class is only cosmetic, and to
prevent ambiguity, the bsd44 and overlay secmodels are prefixed with
"secmodel_".

- Adapt the overlay secmodel to recent changes (mainly vnode scope).

- Stop using link-sets for the sysctl node(s) creation.

- Keep sysctl variables under nodes of their relevant secmodels. In
other words, don't create duplicates for the suser/securelevel
secmodels under the bsd44 secmodel, as the latter is merely used
for "grouping".

- For the suser and securelevel secmodels, "advertise presence" in
relevant sysctl nodes (sysctl.security.models.{suser,securelevel}).

- Get rid of the LKM preprocessor stuff.

- As secmodels are now modules, there's no need for an explicit call
to secmodel_start(); it's handled by the module framework. That
said, the module framework was adjusted to properly load secmodels
early during system startup.

- Adapt rump to changes: Instead of using empty stubs for securelevel,
simply use the suser secmodel. Also replace secmodel_start() with a
call to secmodel_suser_start().

- 5.99.20.

Testing was done on i386 ("release" build). Spearated module_init()
changes were tested on sparc and sparc64 as well by martin@ (thanks!).

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/09/25/msg006135.html


# 1.32 27-Sep-2009 jmcneill

enable viadrm kmod for i386


Revision tags: yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base
# 1.31 19-Jul-2009 rmind

Make POSIX message queues a kernel module.


# 1.30 18-Jul-2009 reinoud

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.


Revision tags: yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 jym-xensuspend-base nick-hppapmap-base
# 1.29 10-Mar-2009 yamt

enable tprof modules.


# 1.28 05-Mar-2009 yamt

whitespace


Revision tags: nick-hppapmap-base2
# 1.27 14-Feb-2009 abs

Convert more MACHINE tests to MACHINE_ARCH


# 1.26 05-Feb-2009 haad

branches: 1.26.2;
Revert previously changes. There is no cgd and ccd directory until I properly
test ccd.kmod and cgd.kmod.


# 1.25 05-Feb-2009 haad

Add support for the MODULAR framework to the vnd driver. Enable building of
vnd.kmod by default.


Revision tags: mjf-devfs2-base
# 1.24 05-Jan-2009 pooka

sysvbfs module


# 1.23 31-Dec-2008 agc

Might as well install the dm devmapper module when we install the
other parts of the LVM tools - use the same MKLVM switch, though.


Revision tags: haad-dm-base2 haad-nbase2 ad-audiomp2-base haad-dm-base
# 1.22 05-Dec-2008 ad

PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)

Add a layerfs module.


# 1.21 29-Nov-2008 tsutsui

- don't build compat_linux on alpha until sys/modules/compat_linux/Makefile
handles required MD files under sys/compat/linux/arch/alpha
- build exec_elf64 for all 64 bit arch
- use MACHINE_ARCH!="alpha" instead of MACHINE!="alpha" for exec_elf32 check

XXX we have many histrical inconsistent use of amd64 vs x86_64.


# 1.20 28-Nov-2008 he

Build compat_linux and exec_elf64 for alpha.


# 1.19 25-Nov-2008 cube

Descend into the new modules during the build.


# 1.18 24-Nov-2008 ad

Rename some modules to match their vfs name.


# 1.17 23-Nov-2008 martin

exec_elf32 makes no sense on alpha


# 1.16 20-Nov-2008 ad

Rename the accept filter modules to make module name match filter name.


# 1.15 19-Nov-2008 ad

Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime


# 1.14 14-Nov-2008 ad

Make POSIX AIO loadable as a module.


# 1.13 13-Nov-2008 ad

+compat_ossaudio


# 1.12 12-Nov-2008 ad

Allow the POSIX semaphore code to be loaded as a module.


# 1.11 12-Nov-2008 ad

Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4
# 1.10 23-Sep-2008 hannken

branches: 1.10.2;
Build modular fss driver.

Reviewed by: Quentin Garnier <cube@netbsd.org>


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
# 1.9 30-Aug-2008 reinoud

Back out dirhash kernel module for now.


# 1.8 29-Aug-2008 reinoud

Add dirhash kernel module for sharing dirhashing support with other FS
other than UDF. Its FS agnostic and could be used for any FS

Note to self: manpage needs to follow.


Revision tags: simonb-wapbl-nbase simonb-wapbl-base
# 1.7 28-Jun-2008 rumble

branches: 1.7.2;
Add of bunch of file system modules.


# 1.6 26-Jun-2008 kent

build and install azalia.kmod for amd64 and i386.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 wrstuden-revivesa-base
# 1.5 20-May-2008 ad

branches: 1.5.2; 1.5.4;
Enable cd9660 module.


Revision tags: hpcarm-cleanup-nbase
# 1.4 19-May-2008 jmcneill

Enable putter and puffs modules in build.


# 1.3 18-May-2008 jmcneill

Build radeondrm kmod on i386.


# 1.2 18-May-2008 jmcneill

Build drm and i915drm modules for i386 and amd64.


Revision tags: yamt-pf42-base2 yamt-pf42-base yamt-nfs-mp-base2
# 1.1 02-May-2008 ad

branches: 1.1.2; 1.1.4; 1.1.6;
Build and install modules into /kernel/modules. Each module gets a
directory for properties, blobs, etc. It's not fixed in stone and
can easily be changed if there are issues with the location/layout.