opnsense-src/sys
Kyle Evans 3ed7166aca kbd: merge linker set drivers into standard kbd driver list
This leads to the revert of r355806; this reduces duplication in keyboard
registration and driver switch lookup and leaves us with one authoritative
source for currently registered drivers. The reduced duplication later is
nice as we have more procedure involved in keyboard setup.

keyboard_driver->flags is used to more quickly detect bogus adds/removes.
From KPI consumers' perspective, nothing changes- kbd_add_driver of an
already-registered driver will succeed, and a single kbd_delete_driver will
later remove it as expected. In contrast to historical behavior,
kbd_delete_driver on a driver registered via linker set will now actually
de-register the driver so that it may not be used -- e.g. if kbdmux's
MOD_LOAD handler fails somewhere.

Detection for already-registered drivers in kbd_add_driver has improved, as
the previous SLIST_NEXT(driver) != NULL check would not have caught a driver
that's at the tail end.

kbdinit is now called from cninit() rather than via SYSINIT so that keyboard
drivers are available as early as console drivers. This is particularly
important as cnprobe will, in both syscons and vt, attempt to do any early
configuration of keyboard drivers built-in (see: kbd_configure).

Reviewed by:	imp (earlier version, pre-cninit change)
Differential Revision:	https://reviews.freebsd.org/D22835
2019-12-26 15:21:34 +00:00
..
amd64 Unbreak build. It seems that mips and amd64 still pull in link_elf.c, so 2019-12-24 16:52:10 +00:00
arm Initialize the bounce pages list in armv[4|6] DMA maps. 2019-12-24 23:43:29 +00:00
arm64 [PowerPC] Implement Secure-PLT jump table processing for ppc32. 2019-12-24 15:56:24 +00:00
bsm Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
cam Make pass(4) handle misaligned buffers of MAXPHYS size. 2019-12-23 20:41:55 +00:00
cddl vfs: flatten vop vectors 2019-12-16 00:06:22 +00:00
compat Make page busy state deterministic on free. Pages must be xbusy when 2019-12-22 06:56:44 +00:00
conf Add comments to a couple i2c device lines. 2019-12-26 02:22:38 +00:00
contrib Don't shift 32-bit value by more than 32 bits. 2019-12-21 11:38:48 +00:00
crypto Fix the armv8 crypto driver after r354170. 2019-10-30 10:41:10 +00:00
ddb sleep(9), sleepqueue(9): const'ify wchan pointers 2019-12-24 16:19:33 +00:00
dev kbd: merge linker set drivers into standard kbd driver list 2019-12-26 15:21:34 +00:00
dts dtso: allwinner: Add an overlay for H3 thermal node 2019-08-24 13:26:34 +00:00
fs Add NFSv4.1 and NFSv4.2 errors to nfsv4_errstr.h. 2019-12-25 22:25:30 +00:00
gdb [PPC] Handle qOffsets packet 2019-12-16 13:17:39 +00:00
geom Add BIO_SPEEDUP 2019-12-17 00:13:35 +00:00
gnu Import DTS files for riscv from Linux 5.4 2019-12-03 09:12:53 +00:00
i386 [PowerPC] Implement Secure-PLT jump table processing for ppc32. 2019-12-24 15:56:24 +00:00
isa syscons: drop keyboard index from softc 2019-12-23 21:32:07 +00:00
kern kbd: merge linker set drivers into standard kbd driver list 2019-12-26 15:21:34 +00:00
kgssapi Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
libkern Port the NetBSD KCSAN runtime to FreeBSD. 2019-11-21 11:22:08 +00:00
mips Unbreak build. It seems that mips and amd64 still pull in link_elf.c, so 2019-12-24 16:52:10 +00:00
modules Compile uart_cpu_acpi.c, added in r348195, into uart.ko. 2019-12-22 22:10:20 +00:00
net lagg: Clean up handling of the rr_limit option. 2019-12-22 21:56:47 +00:00
net80211 Don't use if_maddr_rlock() in 802.11, use epoch(9) directly instead. 2019-10-10 23:55:33 +00:00
netgraph Remove the deprecated timeout(9) interface. 2019-12-13 21:03:12 +00:00
netinet Improve input validation for some parameters having a too small 2019-12-20 15:25:08 +00:00
netinet6 Remove useless code from in6_rmx.c 2019-12-18 22:10:56 +00:00
netipsec Fix m_pullup() problem after removing PULLDOWN_TESTs and KAME EXT_*macros. 2019-12-01 00:22:04 +00:00
netpfil ipfw: Don't rollback state in alloc_table_vidx() if atomicity is not required. 2019-12-19 10:22:16 +00:00
netsmb Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
nfs
nfsclient
nfsserver
nlm
ofed Prevent potential underflow in ibcore. 2019-11-15 11:46:53 +00:00
opencrypto Add support for TLS 1.3 using AES-GCM to the OCF backend for KTLS. 2019-12-18 01:37:00 +00:00
powerpc [PowerPC] Define powerpc IFUNC kernel/userspace ABI. 2019-12-24 20:13:29 +00:00
riscv [PowerPC] Implement Secure-PLT jump table processing for ppc32. 2019-12-24 15:56:24 +00:00
rpc Change r355157 to make svc_rpc_gss_lifetime_max a static. 2019-11-28 02:18:51 +00:00
security Instead of looking up a predecessor or successor to the current map 2019-11-20 16:06:48 +00:00
sparc64 [PowerPC] Implement Secure-PLT jump table processing for ppc32. 2019-12-24 15:56:24 +00:00
sys Unbreak build. It seems that mips and amd64 still pull in link_elf.c, so 2019-12-24 16:52:10 +00:00
teken Adjust teken to allow build as part of loader 2019-09-05 18:07:40 +00:00
tests
tools vfs: allow tail call optimisation in vops in the common case 2019-12-16 00:07:51 +00:00
ufs Drop a sleepable lock when we plan on sleeping 2019-12-18 16:01:15 +00:00
vm Further reduce the cacheline footprint of fast allocations by duplicating 2019-12-25 20:57:24 +00:00
x86 Introduce the concept of busdma tag templates. A template can be allocated 2019-12-24 14:48:46 +00:00
xdr
xen
Makefile