git: bfaec3e64741 - main - linuxkpi.4, linuxkpi_wlan.4: add short man pages
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 13 Jun 2025 14:57:42 UTC
The branch main has been updated by bz:
URL: https://cgit.FreeBSD.org/src/commit/?id=bfaec3e6474139c592f39b4adbdbeb35c9026c25
commit bfaec3e6474139c592f39b4adbdbeb35c9026c25
Author: Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2025-06-11 07:47:49 +0000
Commit: Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2025-06-13 14:57:21 +0000
linuxkpi.4, linuxkpi_wlan.4: add short man pages
Add brief documentation on LinuxKPI.
Add brief documentation on LinuxKPI 802.11 compat so we can refer to
something about which features are supported.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Reviewed by: dumbbell, ziaee, pauamma_gundo.com
Differential Revision: https://reviews.freebsd.org/D50790
---
share/man/man4/linuxkpi.4 | 42 +++++++++++++
share/man/man4/linuxkpi_wlan.4 | 134 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 176 insertions(+)
diff --git a/share/man/man4/linuxkpi.4 b/share/man/man4/linuxkpi.4
new file mode 100644
index 000000000000..cd4135c28d6d
--- /dev/null
+++ b/share/man/man4/linuxkpi.4
@@ -0,0 +1,42 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2025 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from
+.\" the FreeBSD Foundation.
+.\"
+.Dd June 13, 2025
+.Dt LINUXKPI 4
+.Os
+.Sh NAME
+.Nm linuxkpi
+.Nd Linux Kernel Programming Interface support
+.Sh DESCRIPTION
+The
+.Nm
+kernel module provides a limited KPI (kernel programming interface) to allow
+Linux kernel drivers and other Linux kernel code to be compiled on
+.Fx
+and used along the
+.Fx
+kernel with little or no modification.
+.Pp
+While historically
+.Em OpenFabrics Enterprise Distribution (Infiniband) ,
+and certain vendor drivers have used
+.Nm .
+.Em drm-kmod
+for graphics driver support
+and
+.Xr linuxkpi_wlan 4
+for wireless drivers are prominent consumers.
+.Pp
+.Nm
+is not to be confused with
+.Xr linux 4
+which provides limited Linux ABI (application binary interface) compatibility
+to allow running Linux application binaries unmodified on
+.Fx .
+.Sh SEE ALSO
+.Xr linuxkpi_wlan 4
diff --git a/share/man/man4/linuxkpi_wlan.4 b/share/man/man4/linuxkpi_wlan.4
new file mode 100644
index 000000000000..136e04c32bb7
--- /dev/null
+++ b/share/man/man4/linuxkpi_wlan.4
@@ -0,0 +1,134 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2025 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from
+.\" the FreeBSD Foundation.
+.\"
+.Dd June 13, 2025
+.Dt LINUXKPI_WLAN 4
+.Os
+.Sh NAME
+.Nm linuxkpi_wlan
+.Nd LinuxKPI 802.11 support
+.Sh DESCRIPTION
+The
+.Nm
+kernel module provides an 802.11 compat layer to translate between Linux
+802.11 drivers and the native net8011 wireless stack.
+It currently supports
+.Em mac80211
+based drivers.
+Parts of the
+.Em cfg80211
+exist but there is no code for net80211 to drive it.
+.Pp
+.Nm
+currently supports the following
+.Em wlanmode
+operating modes:
+.Bl -tag -width monitor -compact
+.It Cm sta
+client station in an infrastructure bss (IBSS).
+.El
+.Pp
+Compat code for 802.11n (HT) and 802.11ac (VHT) is implemented but
+support may vary for different drivers due to different KPI usage.
+.Pp
+Crypto support for hardware acceleration needs to be enabled using the
+.Va compat.linuxkpi.80211.hw_crypto
+tunable.
+The following cipher suites are supported:
+.Bl -tag -width CCMP -compact
+.It Cm tkip
+Support for
+.Xr wlan_tkip 4
+has to be manually enabled using the
+.Va compat.linuxkpi.80211.tkip
+tunable.
+.It Cm ccmp
+Support for
+.Xr wlan_ccmp 4
+is available.
+.It Cm gcmp
+Support for
+.Xr wlan_gcmp 4
+is available.
+.El
+Further cipher suites will be implemented as soon as
+.Xr net80211 4
+grows support.
+While it would be possible to implement
+.Xr wlan_wep 4
+support, it was decided not to do so given
+.Em Wired Equivalent Privacy (WEP)
+has been deprecated since 2004.
+.Pp
+The list of supported drivers includes
+.Xr iwlwifi 4 ,
+.Xr rtw88 4 ,
+and
+.Xr rtw89 4 .
+.Sh SYSCTL VARIABLES AND LOADER TUNABLES
+The
+.Nm
+module supports the following
+.Xr loader 8
+tunable and read-only
+.Xr sysctl 8
+variables:
+.Bl -tag -width "compat.linuxkpi.80211.hw_crypto"
+.It Va compat.linuxkpi.80211.hw_crypto
+Turn on hardware crypto offload support.
+Default
+.Ql 0 .
+.It Va compat.linuxkpi.80211.tkip
+Turn on support for
+.Xr wlan_tkip 4
+offloading.
+Default
+.Ql 0 .
+.El
+.Pp
+The
+.Nm
+module supports the following
+.Xr sysctl 8
+variables:
+.Bl -tag -width "compat.linuxkpi.80211.IF.dump_stas"
+.It Va compat.linuxkpi.80211.debug
+If the kernel is compiled with
+.Dv IEEE80211_DEBUG
+or
+.Dv LINUXKPI_DEBUG_80211
+is manually enabled, the sysctl is a bitmask to turn on individual
+debug messages.
+See
+.Pa sys/compat/linuxkpi/common/src/linux_80211.h
+for details.
+.It Va compat.linuxkpi.80211.IF.dump_stas
+Print statistics for a given, associated
+.Xr wlan 4
+interface; typically IF would be
+.Em wlan0 .
+.El
+.Sh SEE ALSO
+.Xr iwlwifi 4 ,
+.Xr linuxkpi 4 ,
+.Xr rtw88 4 ,
+.Xr rtw89 4 ,
+.Xr wlan 4
+.Sh HISTORY
+The
+.Nm
+module first appeared in
+.Fx 13.1 .
+Support for IEEE 802.11n and 802.11ac in
+.Nm
+first appeared in
+.Fx 14.3 .
+.Sh AUTHORS
+LinuxKPI 802.11 support was developed by
+.An Bjoern A. Zeeb
+under sponsorship from the FreeBSD Foundation.