History log of /openbsd-current/sys/arch/arm/arm/conf.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.59 02-Sep-2022 miod

Constify nam2blk[], chrtoblktbl[] and octeon devmap[].
ok mpi@ millert@


Revision tags: OPENBSD_7_1_BASE
# 1.58 11-Nov-2021 claudio

Retire switch(4) it never really was production ready and the OpenFlow
API implemented is a deadend.
OK akoshibe@ yasuoka@ deraadt@ kn@ patrick@ sthen@


Revision tags: OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.57 25-Mar-2021 jsg

remove uneeded includes in md armv7 files

based on include-what-you-use suggestions


# 1.56 23-Jan-2021 thfr

introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers.
This includes ujoy_hid_is_collection() to work around limitations of
hid_is_collection() until this can be combined without fallout.

input, testing with 8bitdo controller, and ok brynet@
PS4 controller testing, fix for hid_is_collection, and ok mglocker@


Revision tags: OPENBSD_6_8_BASE
# 1.55 06-Jul-2020 dlg

wire up kstat(4)

"looks right" deraadt@


Revision tags: OPENBSD_6_7_BASE
# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.58 11-Nov-2021 claudio

Retire switch(4) it never really was production ready and the OpenFlow
API implemented is a deadend.
OK akoshibe@ yasuoka@ deraadt@ kn@ patrick@ sthen@


Revision tags: OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.57 25-Mar-2021 jsg

remove uneeded includes in md armv7 files

based on include-what-you-use suggestions


# 1.56 23-Jan-2021 thfr

introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers.
This includes ujoy_hid_is_collection() to work around limitations of
hid_is_collection() until this can be combined without fallout.

input, testing with 8bitdo controller, and ok brynet@
PS4 controller testing, fix for hid_is_collection, and ok mglocker@


Revision tags: OPENBSD_6_8_BASE
# 1.55 06-Jul-2020 dlg

wire up kstat(4)

"looks right" deraadt@


Revision tags: OPENBSD_6_7_BASE
# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.57 25-Mar-2021 jsg

remove uneeded includes in md armv7 files

based on include-what-you-use suggestions


# 1.56 23-Jan-2021 thfr

introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers.
This includes ujoy_hid_is_collection() to work around limitations of
hid_is_collection() until this can be combined without fallout.

input, testing with 8bitdo controller, and ok brynet@
PS4 controller testing, fix for hid_is_collection, and ok mglocker@


Revision tags: OPENBSD_6_8_BASE
# 1.55 06-Jul-2020 dlg

wire up kstat(4)

"looks right" deraadt@


Revision tags: OPENBSD_6_7_BASE
# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.56 23-Jan-2021 thfr

introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers.
This includes ujoy_hid_is_collection() to work around limitations of
hid_is_collection() until this can be combined without fallout.

input, testing with 8bitdo controller, and ok brynet@
PS4 controller testing, fix for hid_is_collection, and ok mglocker@


Revision tags: OPENBSD_6_8_BASE
# 1.55 06-Jul-2020 dlg

wire up kstat(4)

"looks right" deraadt@


Revision tags: OPENBSD_6_7_BASE
# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.55 06-Jul-2020 dlg

wire up kstat(4)

"looks right" deraadt@


Revision tags: OPENBSD_6_7_BASE
# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.54 23-Jan-2020 dlg

wire up pppac(4) to some majors on each arch.

i was lazy and just put them at the end of the existing set. fyi,
i think major 51 is free on all archs if anyone is looking for
another one.

ok claudio@


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.53 21-Jan-2020 mpi

Import dt(4) a driver and framework for Dynamic Profiling.

The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.

Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.

ok kettenis@, visa@, jasper@, deraadt@


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


# 1.52 18-Dec-2019 deraadt

typo


# 1.51 17-Dec-2019 reyk

Add fido(4), a HID driver for FIDO/U2F security keys

While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.

It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.

With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.

With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.50 23-Jan-2017 deraadt

remove #defines present in MI conf.h; ok kettenis


# 1.49 04-Sep-2016 naddy

Remove support for tape block devices. Nobody mount(8)s tapes any longer.
ok deraadt@ guenther@


# 1.48 02-Sep-2016 goda

Add switch(4) cdev entry

ok deraadt@ yasuoka@ reyk@


# 1.47 31-Jul-2016 jsg

Use ansi style function declarations. No binary change.
From Robert Tate.


Revision tags: OPENBSD_6_0_BASE
# 1.46 23-May-2016 deraadt

Change openprom into a pseudo-device, because not all arm platforms
will have it. This is a bit of a hack. Maybe it should attach off
mainbus as a proper fake device, but that would have more tendrils..
checked by jsg


# 1.45 21-May-2016 kettenis

Implement openprom(4) for armv7.

ok deraadt@


# 1.44 25-Apr-2016 tedu

remove systrace


# 1.43 26-Feb-2016 natano

Remove stale RAIDframe entries from chrtoblktbl.

While there truncate the tables to the minimum required size; chrtoblk()
and blktochr() are designed to handle a table shorter than cdevsw.

"Looks good to me" deraadt@


Revision tags: OPENBSD_5_9_BASE
# 1.42 23-Oct-2015 claudio

Allocate a new major for tap(4) also note that pseudo-device tun is for tap
as well. OK dlg@ mpi@


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.41 11-Dec-2014 tedu

dragonflybsd has added a urio driver. conservation of urios requires
that we delete ours, which isn't actually useful.
ok mpi sthen


# 1.40 09-Oct-2014 tedu

mechanical translation of dev_lkm_dummy() to dev_notdef()


# 1.39 09-Oct-2014 tedu

remove LKM devices


# 1.38 20-Aug-2014 mikeb

unlink crypto(4) pseudo device from the architecture dependant character
device tables and kernel config files. ok deraadt


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.37 04-Nov-2013 deraadt

remove iop(4) driver. it is entirely unmaintained and supports something
which basically doesn't exist at all.
reminded about it by brad


# 1.36 20-Aug-2013 ajacoutot

Remove uscanner(4). It was disabled in GENERIC more than 2.5 years ago.
No regression has been reported since libusb became the prefered
solution to work with USB scanners.

req. by mpi@
ok ian@ mpi@ miod@


Revision tags: OPENBSD_5_4_BASE
# 1.35 03-Jun-2013 tedu

more fuse in more places. credit: miod


# 1.34 15-Mar-2013 ratchov

Delete the sequencer(4) driver, since its not used any longer. Diff
mostly from armani.
ok miod, mpi, jsg and help from sthen


Revision tags: OPENBSD_5_3_BASE
# 1.33 23-Aug-2012 deraadt

kill nnpfs dead


Revision tags: OPENBSD_5_2_BASE
# 1.32 06-Apr-2012 jsing

tedu the raidframe.

ok deraadt@


Revision tags: OPENBSD_5_1_BASE
# 1.31 06-Oct-2011 deraadt

ccd goes to the attic
discussed with jsing and millert


# 1.30 16-Sep-2011 miod

Use cdev_ulpt_init() to setup ulpt(4) instead of cdev_lpt_init, for
consistency.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE
# 1.29 14-Jan-2011 jasper

- use nitems()

"doesn't hurt" deraadt@


# 1.28 28-Nov-2010 miod

Remove inapplicable or no longer used cdevsw[] entries and macros.


# 1.27 23-Sep-2010 claudio

Add pppx(4) to the cdevs of the remaining archs.
OK dlg@


Revision tags: OPENBSD_4_8_BASE
# 1.26 03-Jul-2010 krw

No more ss(4) or usscanner(4). Unused, unloved and unmaintained.
General huzzahs.

"go for it" deraadt@


# 1.25 09-Jun-2010 jsing

Wire up device nodes for disk mapper.

ok deraadt@


# 1.24 30-Mar-2010 matthieu

Add missing bthub device entries on arches that support bluetooth.
ok miod@, deraadt@, todd@.


Revision tags: OPENBSD_4_7_BASE
# 1.23 13-Aug-2009 dlg

wire vscsi up to a cdev

for claudio@ ok deraadt@


Revision tags: OPENBSD_4_6_BASE
# 1.22 03-Jun-2009 jj

Arla client rename from xfs to nnpfs for later upgrades. Tested on various arches. ok todd@ beck@


Revision tags: OPENBSD_4_5_BASE
# 1.21 25-Jan-2009 miod

Remove /dev/drum and related code.


# 1.20 27-Nov-2008 drahn

Add sscom to cdevswitch like fcom used to be.


Revision tags: OPENBSD_4_4_BASE
# 1.19 12-Jun-2008 mglocker

Enable /dev/video* for all USB capable archs. MAKEDEV bits will follow
shortly.

OK todd@


# 1.18 14-May-2008 miod

Fix more chrtoblktbl[] sloppyness, and add proper block st nodes to *ppc and
sgi.


# 1.17 08-Apr-2008 claudio

Split the cdev makro for bpftun into two seperate definitions. tun(4) and
bpf(4) are different enough so that the split makes sense -- this is necessary
to make bpf(4) cloneable.
requested deraadt@, OK thib@


Revision tags: OPENBSD_4_2_BASE OPENBSD_4_3_BASE
# 1.16 28-May-2007 todd

bio for all archs, ok krw@ kettenis@ sounds good marco@ go for it deraadt@


# 1.15 27-May-2007 todd

back out bio, breaks dlg's sparc64 v215
prompted by/ok dlg@ deraadt@


# 1.14 26-May-2007 todd

prodded by marco, enable bio everywhere
grudgingly ok deraadt@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
# 1.13 28-Jul-2006 kettenis

Make option USER_PCICONF work.

ok drahn@


# 1.12 29-May-2006 drahn

Add support for i80321 based systems.


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.11 13-May-2005 miod

/dev/speaker node on cats.


Revision tags: OPENBSD_3_7_BASE
# 1.10 19-Jan-2005 uwe

APM emulation framework and zaurus scoop driver. Not enabled yet.
ok drahn@, deraadt@


# 1.9 18-Jan-2005 drahn

Add hotplug support.


# 1.8 04-Jan-2005 drahn

cleaner pci/fcom arm cats vs zaurus config.


# 1.7 03-Jan-2005 miod

Bring life to /dev/*random; Dale, you owe me a beer.


# 1.6 30-Dec-2004 drahn

Properly include fcom.h defines.


# 1.5 28-Sep-2004 drahn

add the missing ksym entry into the cdev table. pointed out by kevlo


Revision tags: OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B
# 1.4 07-Apr-2004 drahn

align /dev/crypto with it's device node. would allow crypto cards to be used.


Revision tags: OPENBSD_3_5_BASE
# 1.3 11-Feb-2004 miod

branches: 1.3.2;
Give systrace and xfs a chance to work.
ok drahn@


# 1.2 10-Feb-2004 millert

Add the ptm device to pty(4). By opening /dev/ptm and using the PTMGET
ioctl(2), an unprivileged process may allocate a pty and have its owner
and mode set appropriately. This means that programs such as xterm and
screen no longer need to be setuid. Programs using the openpty()
function require zero changes and will "just work".

Designed by beck@ and deraadt@; changes by beck@ with cleanup (and
a rewrite of the vnode bits) by art@ and tweaks/bugfixes by me.
Tested by many.


# 1.1 01-Feb-2004 drahn

Arm port, NetBSD codebase stripped down, 32bit only support.