diff options
Diffstat (limited to 'share/man/man4')
217 files changed, 11980 insertions, 3470 deletions
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 32ea3a1b6991..1ba1fe46523e 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -1,6 +1,13 @@ - .include <src.opts.mk> +MANGROUPS= MAN +MANPACKAGE= kernel + +# If you add a new file here, please consider adding an entry to the +# hardware notes template (website/archetypes/release/hardware.adoc in +# the doc repository); otherwise the automatically generated hardware +# notes will not include your driver. + MAN= aac.4 \ aacraid.4 \ acpi.4 \ @@ -34,10 +41,6 @@ MAN= aac.4 \ alc.4 \ ale.4 \ alpm.4 \ - altera_atse.4 \ - altera_avgen.4 \ - altera_jtag_uart.4 \ - altera_sdcard.4 \ altq.4 \ amdpm.4 \ ${_amdsbwd.4} \ @@ -58,7 +61,6 @@ MAN= aac.4 \ atkbdc.4 \ ${_atopcase.4} \ atp.4 \ - ${_atf_test_case.4} \ ${_atrtc.4} \ ${_attimer.4} \ audit.4 \ @@ -100,6 +102,7 @@ MAN= aac.4 \ cc_vegas.4 \ ${_ccd.4} \ ccr.4 \ + cd9660.4 \ cd.4 \ cdce.4 \ cdceem.4 \ @@ -127,6 +130,7 @@ MAN= aac.4 \ dcons_crom.4 \ ddb.4 \ devctl.4 \ + devfs.4 \ disc.4 \ disk.4 \ divert.4 \ @@ -134,6 +138,7 @@ MAN= aac.4 \ ds1307.4 \ ds3231.4 \ ${_dtrace_provs} \ + dummymbuf.4 \ dummynet.4 \ edsc.4 \ ehci.4 \ @@ -147,23 +152,27 @@ MAN= aac.4 \ etherswitch.4 \ eventtimers.4 \ exca.4 \ + ext2fs.4 \ + e6000sw.4 \ e6060sw.4 \ fd.4 \ fdc.4 \ + fdescfs.4 \ fdt.4 \ fdt_pinctrl.4 \ fdtbus.4 \ ffclock.4 \ + ffs.4 \ filemon.4 \ firewire.4 \ ${_ftgpio.4} \ ${_ftwd.4} \ full.4 \ + fusefs.4 \ fwe.4 \ fwip.4 \ fwohci.4 \ fxp.4 \ - gbde.4 \ gdb.4 \ gem.4 \ genet.4 \ @@ -206,9 +215,11 @@ MAN= aac.4 \ ${_hv_vmbus.4} \ ${_hv_vss.4} \ hwpmc.4 \ + ${_hwt.4} \ ${_hwpstate_intel.4} \ i2ctinyusb.4 \ iavf.4 \ + ice.4 \ ichsmb.4 \ ${_ichwd.4} \ icmp.4 \ @@ -236,6 +247,7 @@ MAN= aac.4 \ ${_io.4} \ ${_ioat.4} \ ip.4 \ + ip17x.4 \ ip6.4 \ ipfirewall.4 \ ipheth.4 \ @@ -258,7 +270,8 @@ MAN= aac.4 \ iwnfw.4 \ iwlwifi.4 \ iwlwififw.4 \ - ixgbe.4 \ + ${_iwx.4} \ + ix.4 \ ixl.4 \ jedec_dimm.4 \ jme.4 \ @@ -276,7 +289,12 @@ MAN= aac.4 \ le.4 \ led.4 \ lge.4 \ + lindebugfs.4 \ + linprocfs.4 \ + linsysfs.4 \ ${_linux.4} \ + linuxkpi.4 \ + linuxkpi_wlan.4 \ liquidio.4 \ lm75.4 \ lo.4 \ @@ -288,6 +306,7 @@ MAN= aac.4 \ mac_biba.4 \ mac_bsdextended.4 \ mac_ddb.4 \ + mac_do.4 \ mac_ifoff.4 \ mac_ipacl.4 \ mac_lomac.4 \ @@ -322,9 +341,12 @@ MAN= aac.4 \ mpr.4 \ mps.4 \ mpt.4 \ + mqueuefs.4 \ mrsas.4 \ + msdosfs.4 \ msk.4 \ mtio.4 \ + mtkswitch.4 \ multicast.4 \ muge.4 \ mvs.4 \ @@ -342,6 +364,7 @@ MAN= aac.4 \ netlink.4 \ netmap.4 \ ${_nfe.4} \ + nfslockd.4 \ ${_nfsmb.4} \ ng_async.4 \ ng_bpf.4 \ @@ -404,6 +427,7 @@ MAN= aac.4 \ ${_nda.4} \ ${_if_ntb.4} \ null.4 \ + nullfs.4 \ numa.4 \ nvd.4 \ ${_nvdimm.4} \ @@ -423,6 +447,7 @@ MAN= aac.4 \ owc.4 \ ovpn.4 \ ${_padlock.4} \ + p9fs.4 \ pass.4 \ pca954x.4 \ pccard.4 \ @@ -446,6 +471,7 @@ MAN= aac.4 \ ppc.4 \ ppi.4 \ procdesc.4 \ + procfs.4 \ proto.4 \ ps4dshock.4 \ psm.4 \ @@ -456,6 +482,7 @@ MAN= aac.4 \ pty.4 \ puc.4 \ pwmc.4 \ + ${_pvscsi.4} \ ${_qat.4} \ ${_qat_c2xxx.4} \ ${_qlxge.4} \ @@ -474,6 +501,7 @@ MAN= aac.4 \ rtnetlink.4 \ rtsx.4 \ rtw88.4 \ + rtw89.4 \ rtwn.4 \ rtwnfw.4 \ rtwn_pci.4 \ @@ -494,6 +522,7 @@ MAN= aac.4 \ send.4 \ ses.4 \ ${_sfxge.4} \ + sg.4 \ sge.4 \ siba.4 \ siftr.4 \ @@ -503,6 +532,7 @@ MAN= aac.4 \ sk.4 \ ${_smartpqi.4} \ smb.4 \ + smbfs.4 \ smbios.4 \ smbus.4 \ smp.4 \ @@ -512,6 +542,7 @@ MAN= aac.4 \ snd_cmi.4 \ snd_cs4281.4 \ snd_csa.4 \ + snd_dummy.4 \ snd_emu10k1.4 \ snd_emu10kx.4 \ snd_envy24.4 \ @@ -519,6 +550,7 @@ MAN= aac.4 \ snd_es137x.4 \ snd_fm801.4 \ snd_hda.4 \ + snd_hdsp.4 \ snd_hdspe.4 \ snd_ich.4 \ snd_maestro3.4 \ @@ -546,6 +578,7 @@ MAN= aac.4 \ syscons.4 \ sysmouse.4 \ tap.4 \ + tarfs.4 \ targ.4 \ tcp.4 \ tcp_bbr.4 \ @@ -555,14 +588,16 @@ MAN= aac.4 \ textdump.4 \ ti.4 \ timecounters.4 \ + tmpfs.4 \ ${_tpm.4} \ tslog.4 \ tty.4 \ tun.4 \ - twe.4 \ tws.4 \ udp.4 \ udplite.4 \ + ${_ufshci.4} \ + unionfs.4 \ ure.4 \ vale.4 \ vga.4 \ @@ -596,6 +631,7 @@ MAN= aac.4 \ wlan_acl.4 \ wlan_amrr.4 \ wlan_ccmp.4 \ + wlan_gcmp.4 \ wlan_tkip.4 \ wlan_wep.4 \ wlan_xauth.4 \ @@ -621,8 +657,6 @@ MLINKS+=age.4 if_age.4 MLINKS+=agp.4 agpgart.4 MLINKS+=alc.4 if_alc.4 MLINKS+=ale.4 if_ale.4 -MLINKS+=altera_atse.4 atse.4 -MLINKS+=altera_sdcard.4 altera_sdcardc.4 MLINKS+=altq.4 ALTQ.4 MLINKS+=ath.4 if_ath.4 MLINKS+=aue.4 if_aue.4 @@ -668,6 +702,7 @@ MLINKS+=em.4 if_em.4 \ MLINKS+=enc.4 if_enc.4 MLINKS+=epair.4 if_epair.4 MLINKS+=et.4 if_et.4 +MLINKS+=ext2fs.4 ext4fs.4 MLINKS+=fd.4 stderr.4 \ fd.4 stdin.4 \ fd.4 stdout.4 @@ -685,21 +720,24 @@ MLINKS+=gpioths.4 dht11.4 MLINKS+=gpioths.4 dht22.4 MLINKS+=gre.4 if_gre.4 MLINKS+=hpet.4 acpi_hpet.4 +MLINKS+=${_hv_netvsc.4} ${_hn.4} \ + ${_hv_netvsc.4} ${_if_hn.4} MLINKS+=${_hptrr.4} ${_rr232x.4} MLINKS+=${_attimer.4} ${_i8254.4} MLINKS+=ip.4 rawip.4 MLINKS+=ipfirewall.4 ipaccounting.4 \ ipfirewall.4 ipacct.4 \ ipfirewall.4 ipfw.4 +MLINKS+=ice.4 if_ice.4 MLINKS+=ipheth.4 if_ipheth.4 MLINKS+=ipw.4 if_ipw.4 MLINKS+=iwi.4 if_iwi.4 MLINKS+=iwlwifi.4 if_iwlwifi.4 MLINKS+=iwm.4 if_iwm.4 MLINKS+=iwn.4 if_iwn.4 -MLINKS+=ixgbe.4 ix.4 -MLINKS+=ixgbe.4 if_ix.4 -MLINKS+=ixgbe.4 if_ixgbe.4 +MLINKS+=ix.4 if_ix.4 +MLINKS+=ix.4 if_ixgbe.4 +MLINKS+=ix.4 ixgbe.4 MLINKS+=ixl.4 if_ixl.4 MLINKS+=iavf.4 if_iavf.4 MLINKS+=jme.4 if_jme.4 @@ -711,12 +749,12 @@ MLINKS+=lge.4 if_lge.4 MLINKS+=lo.4 loop.4 MLINKS+=lp.4 plip.4 MLINKS+=malo.4 if_malo.4 -MLINKS+=md.4 vn.4 MLINKS+=mem.4 kmem.4 MLINKS+=mfi.4 mfi_linux.4 \ mfi.4 mfip.4 MLINKS+=mlx5en.4 mce.4 MLINKS+=mos.4 if_mos.4 +MLINKS+=msdosfs.4 msdos.4 MLINKS+=msk.4 if_msk.4 MLINKS+=mwl.4 if_mwl.4 MLINKS+=mxge.4 if_mxge.4 @@ -736,7 +774,9 @@ MLINKS+=ptnet.4 if_ptnet.4 MLINKS+=ral.4 if_ral.4 MLINKS+=re.4 if_re.4 MLINKS+=rl.4 if_rl.4 -MLINKS+=rtwn_pci.4 if_rtwn_pci.4 +MLINKS+=rtw88.4 if_rtw88.4 +MLINKS+=rtw89.4 if_rtw89.4 +MLINKS+=rtwn.4 if_rtwn.4 MLINKS+=rue.4 if_rue.4 MLINKS+=scsi.4 cam.4 MLINKS+=scsi.4 scbus.4 @@ -806,6 +846,7 @@ _cpuctl.4= cpuctl.4 _dpms.4= dpms.4 _ftgpio.4= ftgpio.4 _ftwd.4= ftwd.4 +_hn.4= _hn.4 _hpt27xx.4= hpt27xx.4 _hptiop.4= hptiop.4 _hptmv.4= hptmv.4 @@ -821,9 +862,9 @@ _hwpstate_intel.4= hwpstate_intel.4 _i8254.4= i8254.4 _ichwd.4= ichwd.4 _if_bxe.4= if_bxe.4 +_if_hn.4= if_hn.4 _if_nfe.4= if_nfe.4 _if_urtw.4= if_urtw.4 -_if_vmx.4= if_vmx.4 _if_wpi.4= if_wpi.4 _igc.4= igc.4 _imcsmb.4= imcsmb.4 @@ -854,7 +895,6 @@ _urtw.4= urtw.4 _viawd.4= viawd.4 _vmci.4= vmci.4 _vmd.4= vmd.4 -_vmx.4= vmx.4 _wbwd.4= wbwd.4 _wdatwd.4= wdatwd.4 _wpi.4= wpi.4 @@ -865,6 +905,7 @@ _xnb.4= xnb.4 .if ${MACHINE_CPUARCH} == "amd64" _ioat.4= ioat.4 +_iwx.4= iwx.4 _nvdimm.4= nvdimm.4 _qlxge.4= qlxge.4 _qlxgb.4= qlxgb.4 @@ -874,6 +915,7 @@ _sfxge.4= sfxge.4 _smartpqi.4= smartpqi.4 _sume.4= sume.4 +MLINKS+=iwx.4 if_iwx.4 MLINKS+=qlxge.4 if_qlxge.4 MLINKS+=qlxgb.4 if_qlxgb.4 MLINKS+=qlxgbe.4 if_qlxgbe.4 @@ -887,12 +929,30 @@ _vmm.4= vmm.4 .endif .endif +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" +_hwt.4= hwt.4 +.if ${MACHINE_CPUARCH} == "amd64" +MLINKS+=hwt.4 intel_pt.4 +.endif +.if ${MACHINE_CPUARCH} == "aarch64" +MLINKS+=hwt.4 coresight.4 +MLINKS+=hwt.4 spe.4 +.endif +.endif + +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" +_ufshci.4= ufshci.4 +.endif + .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \ ${MACHINE_CPUARCH} == "aarch64" _gve.4= gve.4 +_if_vmx.4= if_vmx.4 _ipmi.4= ipmi.4 _linux.4= linux.4 _ossl.4= ossl.4 +_pvscsi.4= pvscsi.4 +_vmx.4= vmx.4 .endif .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" || \ @@ -912,6 +972,10 @@ SUBDIR+= man4.${__arch} .endif .endfor +.if ${MK_AUTOFS} != "no" +MAN+= autofs.4 +.endif + .if ${MK_BLUETOOTH} != "no" MAN+= ng_bluetooth.4 .endif @@ -922,11 +986,14 @@ _ccd.4= ccd.4 .if ${MK_CDDL} != "no" _dtrace_provs= dtrace_audit.4 \ + dtrace_dtrace.4 \ + dtrace_fbt.4 \ dtrace_io.4 \ dtrace_ip.4 \ dtrace_kinst.4 \ dtrace_lockstat.4 \ dtrace_proc.4 \ + dtrace_profile.4 \ dtrace_sched.4 \ dtrace_sctp.4 \ dtrace_tcp.4 \ @@ -958,9 +1025,11 @@ MAN+= mlx5io.4 .endif .if ${MK_TESTS} != "no" +MANGROUPS+= TESTS ATF= ${SRCTOP}/contrib/atf .PATH: ${ATF}/doc -_atf_test_case.4= atf-test-case.4 +TESTS= atf-test-case.4 +TESTSPACKAGE= tests .endif .if ${MK_PF} != "no" @@ -972,6 +1041,7 @@ _pfsync.4= pfsync.4 .if ${MK_USB} != "no" MAN+= \ + mtw.4 \ otus.4 \ otusfw.4 \ rsu.4 \ @@ -1006,6 +1076,7 @@ MAN+= \ uled.4 \ ulpt.4 \ umass.4 \ + umb.4 \ umcs.4 \ umct.4 \ umodem.4 \ @@ -1026,8 +1097,10 @@ MAN+= \ uslcom.4 \ uvisor.4 \ uvscom.4 \ + veriexec.4 \ zyd.4 +MLINKS+=mtw.4 if_mtw.4 MLINKS+=otus.4 if_otus.4 MLINKS+=rsu.4 if_rsu.4 MLINKS+=rtwn_usb.4 if_rtwn_usb.4 diff --git a/share/man/man4/acpi.4 b/share/man/man4/acpi.4 index 434e97d529f5..cdad3ceeedfc 100644 --- a/share/man/man4/acpi.4 +++ b/share/man/man4/acpi.4 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 12, 2021 +.Dd July 15, 2024 .Dt ACPI 4 .Os .Sh NAME @@ -256,6 +256,12 @@ is a valid list of two interfaces .Qq Li FreeBSD and .Qq Li Linux . +.It Va hw.acpi.hw.acpi.override_isa_irq_polarity (x86) +Forces active-lo polarity for edge-triggered ISA interrupts. +Some older systems incorrectly specify active-lo polarity for ISA +interrupts and this override fixes those systems. +This override is enabled by default on systems with Intel CPUs, +but can be enabled or disabled by setting the tunable explicitly. .It Va hw.acpi.reset_video Enables calling the VESA reset BIOS vector on the resume path. This can fix some graphics cards that have problems such as LCD white-out diff --git a/share/man/man4/acpi_asus_wmi.4 b/share/man/man4/acpi_asus_wmi.4 index 7d6aeaca948b..721b73833484 100644 --- a/share/man/man4/acpi_asus_wmi.4 +++ b/share/man/man4/acpi_asus_wmi.4 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 2, 2012 +.Dd March 25, 2024 .Dt ACPI_ASUS_WMI 4 .Os .Sh NAME @@ -72,11 +72,19 @@ Number of other variables under the same sysctl branch are model-specific. Defaults for these variables can be set in .Xr sysctl.conf 5 , which is parsed at boot-time. +.Sh FILES +.Bl -tag -width "/dev/backlight/acpi_asus_wmi0" -compact +.It Pa /dev/backlight/acpi_asus_wmi0 +Keyboard +.Xr backlight 8 +device node. +.El .Sh SEE ALSO .Xr acpi 4 , .Xr acpi_asus 4 , .Xr acpi_video 4 , .Xr sysctl.conf 5 , +.Xr backlight 8 , .Xr devd 8 , .Xr sysctl 8 .Sh HISTORY diff --git a/share/man/man4/acpi_ged.4 b/share/man/man4/acpi_ged.4 index c87c7b3e97c9..98baabdde796 100644 --- a/share/man/man4/acpi_ged.4 +++ b/share/man/man4/acpi_ged.4 @@ -53,7 +53,7 @@ This may generate optionally ACPI notify for another device. The .Nm device driver first appeared in -.Fx 14.0 . +.Fx 13.3 . .Sh AUTHORS .An -nosplit The diff --git a/share/man/man4/acpi_wmi.4 b/share/man/man4/acpi_wmi.4 index 9ad14ed7892a..e5c5517ba4ac 100644 --- a/share/man/man4/acpi_wmi.4 +++ b/share/man/man4/acpi_wmi.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2009 Michael Gmelin .\" All rights reserved. .\" @@ -22,47 +25,45 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 5, 2019 +.Dd June 12, 2025 .Dt ACPI_WMI 4 .Os .Sh NAME .Nm acpi_wmi -.Nd "ACPI to WMI mapping driver" +.Nd ACPI to WMI mapping driver .Sh SYNOPSIS To compile this driver into the kernel, place the following line in your kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_wmi" -.Ed +.Pp +.Dl Cd "device acpi_wmi" .Pp Alternatively, to load the driver as a module at boot time, place the following line in .Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_wmi_load="YES" -.Ed +.Pp +.Dl acpi_wmi_load="YES" .Sh DESCRIPTION The .Nm driver provides an interface for vendor specific WMI implementations -(e.g. HP and Acer laptops). -It creates /dev/wmistat%d, which can be read to get -information about GUIDs found in the system. +.Pq e.g. HP and Acer laptops . +It creates +.Pa /dev/wmistat%d , +which can be read to get information about GUIDs found in the system. .Sh FILES .Bl -tag -width /dev/wmistat%d -compact .It Pa /dev/wmistat%d -WMI status device. +WMI status devices. .El .Sh SYSCTLS The following sysctl node is currently implemented: -.Bl -tag +.Bl -tag -width "dev.acpi_wmi.%d.bmof" .It Va dev.acpi_wmi.%d.bmof -Managed Object Format (MOF) blob. -You can obtain human readable output by bmf2mof in bmfdec tool. -(https://github.com/pali/bmfdec) +binary Managed Object Format (MOF) buffer .El .Sh EXAMPLES +Read GUIDs from the first WMI interface found in the system: .Bd -literal # cat /dev/wmistat0 GUID INST EXPE METH STR EVENT OID @@ -78,7 +79,14 @@ GUID INST EXPE METH STR EVENT OID {8232DE3D-663D-4327-A8F4-E293ADB9BF05} 0 NO NO NO NO BG {8F1F6436-9F42-42C8-BADC-0E9424F20C9A} 0 NO NO NO NO BH {8F1F6435-9F42-42C8-BADC-0E9424F20C9A} 0 NO NO NO NO BI -# sysctl -b dev.acpi_wmi.0.bmof |bmf2mof +.Ed +.Pp +Read first WMI interface description with +.Sy bmf2mof +from +.Pa ports/converters/bmfdec : +.Bd -literal +# sysctl -b dev.acpi_wmi.0.bmof | bmf2mof [abstract] class Lenovo_BIOSElement { }; @@ -91,10 +99,15 @@ class Lenovo_BiosSetting : Lenovo_BiosElement { [WmiDataId(1), Description("BIOS setting")] String CurrentSetting; }; ... - .Ed .Sh SEE ALSO .Xr acpi 4 +.Sh STANDARDS +.Rs +.%T Windows Instrumentation: WMI and ACPI +.%I Microsoft Corporation +.%U https://github.com/microsoft/Windows-driver-samples/tree/main/wmi/wmiacpi +.Re .Sh HISTORY The .Nm @@ -107,13 +120,13 @@ The driver was written by .An Michael Gmelin Aq Mt freebsd@grem.de . .Pp -Work has been inspired by the Linux acpi-wmi driver written by Carlos Corbacho. -.Pp -See http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx for -the specification of ACPI-WMI. +Work inspired by the Linux +.Sy acpi-wmi +driver written by Carlos Corbacho. .Pp -MOF part has been inspired by the Linux wmi-bmof driver -written by Andy Lutomirski. +MOF handling inspired by the Linux +.Sy wmi-bmof +driver written by Andy Lutomirski. .Pp This manual page was written by .An Michael Gmelin Aq Mt freebsd@grem.de . diff --git a/share/man/man4/agp.4 b/share/man/man4/agp.4 index de19349caa08..2aeb01850085 100644 --- a/share/man/man4/agp.4 +++ b/share/man/man4/agp.4 @@ -30,6 +30,11 @@ .Nd "generic interface to the Accelerated Graphics Port (AGP)" .Sh SYNOPSIS .Cd "device agp" +.Sh DEPRECATION NOTICE +The +.Nm +driver is slated to be removed in +.Fx 15.0 . .Sh DESCRIPTION The .Nm diff --git a/share/man/man4/ahc.4 b/share/man/man4/ahc.4 index 7d5e092089bb..38712c1f08b6 100644 --- a/share/man/man4/ahc.4 +++ b/share/man/man4/ahc.4 @@ -131,7 +131,7 @@ target on multiple SCSI IDs. .Pp To allow PCI adapters to use memory mapped I/O if enabled: .Pp -.Cd options AHC_ALLOW_MEMIO +.Cd options AHC_ALLOW_MEMIO=(0 -- disabled, 1 -- enabled) .Bd -ragged -offset indent Memory mapped I/O is more efficient than the alternative, programmed I/O. Most PCI BIOSes will map devices so that either technique for communicating @@ -141,12 +141,13 @@ the chip for memory mapped I/O. The typical symptom of this problem is a system hang if memory mapped I/O is attempted. .Pp Most modern motherboards perform the initialization correctly and work fine -with this option enabled. +with this option enabled and it is the default. This option can also be +dynamically configued through a device hint documented below. .Ed .Pp To statically configure one or more controllers to assume the target role: .Pp -.Cd options AHC_TMODE_ENABLE <bitmask of units> +.Cd options AHC_TMODE_ENABLE=<bitmask of units> .Bd -ragged -offset indent The value assigned to this option should be a bitmap of all units where target mode is desired. For example, a value of 0x25, would enable target mode on @@ -154,7 +155,6 @@ units 0, 2, and 5. A value of 0x8a enables it for units 1, 3, and 7. .Pp Note that controllers can be dynamically configured through a device hint documented below. -.El .Ed .Sh BOOT OPTIONS The following options are switchable by setting values in @@ -163,9 +163,12 @@ The following options are switchable by setting values in They are: .Bl -tag -width indent .It Va hint.ahc. Ns Ar N Ns Va .tmode_enable -A hint to define whether the SCSI target mode is enabled (0 -- disabled, 1 -- enabled). +A hint to define whether the SCSI target mode is enabled, defaults to disabled +(0 -- disabled, 1 -- enabled). +.It Va hint.ahc. Ns Ar N Ns Va .allow_memio +A hint to define whether memory mapped io is enabled or disabled for this +adapter, defaults to enabled (0 -- disabled, 1 -- enabled). .El -.Ed .Sh HARDWARE The .Nm diff --git a/share/man/man4/ahd.4 b/share/man/man4/ahd.4 index e7f9b73f085a..c173a8cef619 100644 --- a/share/man/man4/ahd.4 +++ b/share/man/man4/ahd.4 @@ -107,8 +107,6 @@ disconnection, and the host adapter's .Tn SCSI ID. -.El -.Ed .Sh CONFIGURATION OPTIONS To statically configure one or more controllers to assume the target role: .Pp @@ -121,6 +119,7 @@ units 0, 2, and 5. A value of 0x8a enables it for units 1, 3, and 7. Note that controllers can be dynamically configured through a device hint documented below. +.Ed .Sh BOOT OPTIONS The following options are switchable by setting values in .Pa /boot/device.hints . @@ -130,7 +129,6 @@ They are: .It Va hint.ahd. Ns Ar N Ns Va .tmode_enable A hint to define whether the SCSI target mode is enabled (0 -- disabled, 1 -- enabled). .El -.Ed .Sh HARDWARE The .Nm diff --git a/share/man/man4/altera_atse.4 b/share/man/man4/altera_atse.4 deleted file mode 100644 index d425b125d961..000000000000 --- a/share/man/man4/altera_atse.4 +++ /dev/null @@ -1,117 +0,0 @@ -.\"- -.\" Copyright (c) 2013-2014 SRI International -.\" All rights reserved. -.\" -.\" This software was developed by SRI International and the University of -.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) -.\" ("CTSRD"), as part of the DARPA CRASH research programme. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd May 21, 2014 -.Dt ALTERA_ATSE 4 -.Os -.Sh NAME -.Nm atse -.Nd driver for the Altera Triple-Speed Ethernet MegaCore -.Sh SYNOPSIS -.Cd "device atse" -.Cd "options ATSE_CFI_HACK" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.atse.0.at="nexus0" -.Cd hint.atse.0.maddr=0x7f007000 -.Cd hint.atse.0.msize=0x540 -.Cd hint.atse.0.rc_irq=1 -.Cd hint.atse.0.rx_maddr=0x7f007500 -.Cd hint.atse.0.rx_msize=0x8 -.Cd hint.atse.0.rxc_maddr=0x7f007520 -.Cd hint.atse.0.rxc_msize=0x20 -.Cd hint.atse.0.tx_irq=2 -.Cd hint.atse.0.tx_maddr=0x7f007400 -.Cd hint.atse.0.tx_msize=0x8 -.Cd hint.atse.0.txc_maddr=0x7f007420 -.Cd hint.atse.0.txc_msize=0x20 -.Cd hint.e1000phy.0.at="miibus0" -.Cd hint.e1000phy.0.phyno=0 -.Sh DESCRIPTION -The -.Nm -device driver provides support for the Altera Triple-Speed Ethernet -MegaCore. -.Sh HARDWARE -The current version of the -.Nm -driver supports the Ethernet MegaCore as described in version 11.1 of -Altera's documentation when the device is configured with internal FIFOs. -.Sh MAC SELECTION -The default MAC address for each -.Nm -interface is derived from a value stored in -.Xr cfi 4 -flash. -The value is managed by the -.Xr atsectl 8 -utility. -.Pp -Only a single MAC address may be stored in flash. -If the address begins with the Altera prefix 00:07:ed and ends in 00 then -up to 16 addresses will be derived from it by adding the unit number of -the interface to the stored address. -For other prefixes, the address will be assigned to atse0 and random -addresses will be used for other interfaces. -If the stored address is invalid, for example all zero's, multicast, or the -default address shipped on all DE4 boards (00:07:ed:ff:ed:15) then a random -address is generated when the device is attached. -.Sh SEE ALSO -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ifconfig 8 -.Rs -.%T Triple-Speed Ethernet MegaCore Function User Guide -.%D November 2011 -.%I Altera Corporation -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 10.0 . -.Sh AUTHORS -The -.Nm -device driver and this manual page were -developed by SRI International and the University of Cambridge Computer -Laboratory under DARPA/AFRL contract -.Pq FA8750-10-C-0237 -.Pq Do CTSRD Dc , -as part of the DARPA CRASH research programme. -This device driver was written by -.An Bjoern A. Zeeb . -.Sh BUGS -The -.Nm -driver only supports a single configuration of the MegaCore as installed -on the Terasic Technologies Altera DE4 Development and Education Board. -.Pp -Only gigabit Ethernet speeds are currently supported. diff --git a/share/man/man4/altera_avgen.4 b/share/man/man4/altera_avgen.4 deleted file mode 100644 index dc7e9a0a308b..000000000000 --- a/share/man/man4/altera_avgen.4 +++ /dev/null @@ -1,153 +0,0 @@ -.\"- -.\" Copyright (c) 2012 Robert N. M. Watson -.\" All rights reserved. -.\" -.\" This software was developed by SRI International and the University of -.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) -.\" ("CTSRD"), as part of the DARPA CRASH research programme. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd August 18, 2012 -.Dt ALTERA_AVGEN 4 -.Os -.Sh NAME -.Nm altera_avgen -.Nd driver for generic Altera Avalon-bus-attached, memory-mapped devices -.Sh SYNOPSIS -.Cd "device altera_avgen" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.altera_avgen.0.at="nexus0" -.Cd hint.altera_avgen.0.maddr=0x7f00a000 -.Cd hint.altera_avgen.0.msize=20 -.Cd hint.altera_avgen.0.width=4 -.Cd hint.altera_avgen.0.fileio="rw" -.Cd hint.altera_avgen.0.devname="berirom" -.Sh DESCRIPTION -The -.Nm -device driver provides generic support for memory-mapped devices on the -Altera Avalon bus. -.Pa device.hints -entries configure the address, size, I/O disposition, and -.Pa /dev -device node name that will be used. -The -.Xr open 2 , -.Xr read 2 , -.Xr write 2 , -and -.Xr mmap 2 -system calls (and variations) may be used on -.Nm -device nodes, subject to constraints imposed using -.Pa device.hints -entries. -Although reading and writing mapped memory is supported, -.Nm -does not currently support directing device interrupts to userspace. -.Pp -A number of -.Pa device.hints -sub-fields are available to configure -.Nm -device instances: -.Bl -tag -width devunit -.It maddr -base physical address of the memory region to export; must be aligned to -.Li width -.It msize -length of the memory region export; must be aligned to -.Li width -.It width -Granularity at which -.Xr read 2 -and -.Xr write 2 -operations will be performed. -Larger requests will be broken down into -.Li width -sized -operations; smaller requests will be rejected. -I/O operations must be aligned to -.Li width . -.It fileio -allowed file descriptor operations; -.Li r -authorizes -.Xr read 2 ; -.Li w -authorizes -.Xr write 2 . -.It mmapio -allowed -.Xr mmap 2 -permissions; -.Li w -authorizes -.Dv PROT_WRITE ; -.Li r -authorizes -.Dv PROT_READ ; -.Li x -authorizes -.Dv PROT_EXEC . -.It devname -specifies a device name relative to -.Pa /dev . -.It devunit -specifies a device unit number; no unit number is used if this is unspecified. -.El -.Sh SEE ALSO -.Xr mmap 2 , -.Xr open 2 , -.Xr read 2 , -.Xr write 2 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 10.0 . -.Sh AUTHORS -The -.Nm -device driver and this manual page were -developed by SRI International and the University of Cambridge Computer -Laboratory under DARPA/AFRL contract -.Pq FA8750-10-C-0237 -.Pq Do CTSRD Dc , -as part of the DARPA CRASH research programme. -This device driver was written by -.An Robert N. M. Watson . -.Sh BUGS -.Nm -is intended to support the writing of userspace device drivers; however, it -does not permit directing interrupts to userspace, only memory-mapped I/O. -.Pp -.Nm -supports only a -.Li nexus -bus attachment, which is appropriate for system-on-chip busses such as -Altera's Avalon bus. -If the target device is off of another bus type, then additional bus -attachments will be required. diff --git a/share/man/man4/altera_jtag_uart.4 b/share/man/man4/altera_jtag_uart.4 deleted file mode 100644 index 339e58d7c2f1..000000000000 --- a/share/man/man4/altera_jtag_uart.4 +++ /dev/null @@ -1,119 +0,0 @@ -.\"- -.\" Copyright (c) 2012 Robert N. M. Watson -.\" All rights reserved. -.\" -.\" This software was developed by SRI International and the University of -.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) -.\" ("CTSRD"), as part of the DARPA CRASH research programme. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd August 18, 2012 -.Dt ALTERA_JTAG_UART 4 -.Os -.Sh NAME -.Nm altera_jtag_uart -.Nd driver for the Altera JTAG UART Core -.Sh SYNOPSIS -.Cd "device altera_jtag_uart" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.altera_jtag_uart.0.at="nexus0" -.Cd hint.altera_jtag_uart.0.maddr=0x7f000000 -.Cd hint.altera_jtag_uart.0.msize=0x40 -.Cd hint.altera_jtag_uart.0.irq=0 -.Cd hint.altera_jtag_uart.1.at="nexus0" -.Cd hint.altera_jtag_uart.1.maddr=0x7f001000 -.Cd hint.altera_jtag_uart.1.msize=0x40 -.Sh DESCRIPTION -The -.Nm -device driver provides support for the Altera JTAG UART core, which allows -multiple UART-like streams to be carried over JTAG. -.Nm -allows JTAG UART streams to be attached to both the low-level console -interface, used for direct kernel input and output, and the -.Xr tty 4 -layer, to be used with -.Xr ttys 5 -and -.Xr login 1 . -Sequential Altera JTAG UART devices will appear as -.Li ttyu0 , -.Li ttyu1 , -etc. -.Sh HARDWARE -Altera JTAG UART devices can be connected to using Altera's -.Pa nios2-terminal -program, with the instance selected using the -.Li --instance -argument on the management host. -.Nm -supports JTAG UART cores with or without interrupt lines connected; if the -.Li irq -portion of the -.Pa device.hints -entry is omitted, the driver will poll rather than configure interrupts. -.Sh SEE ALSO -.Xr login 1 , -.Xr tty 4 , -.Xr ttys 5 -.Rs -.%T Altera Embedded Peripherals IP User Guide -.%D June 2011 -.%I Altera Corporation -.%U http://www.altera.com/literature/ug/ug_embedded_ip.pdf -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 10.0 . -.Sh AUTHORS -The -.Nm -device driver and this manual page were -developed by SRI International and the University of Cambridge Computer -Laboratory under DARPA/AFRL contract -.Pq FA8750-10-C-0237 -.Pq Do CTSRD Dc , -as part of the DARPA CRASH research programme. -This device driver was written by -.An Robert N. M. Watson . -.Sh BUGS -.Nm -must dynamically poll to detect when JTAG is present, in order to disable flow -control in the event that there is no receiving endpoint. -Otherwise, the boot may hang waiting for the JTAG client to be attached, and -user processes attached to JTAG UART devices might block indefinitely. -However, there is no way to flush the output buffer once JTAG is detected to -have disappeared; this means that a small amount of stale output data will -remain in the output buffer, being displayed by -.Li nios2-terminal -when it is connected. -Loss of JTAG will not generate a hang-up event, as that is rarely the desired -behaviour. -.Pp -.Li nios2-terminal -does not place the client-side TTY in raw mode, and so by default will not -pass all control characters through to the UART. diff --git a/share/man/man4/altera_sdcard.4 b/share/man/man4/altera_sdcard.4 deleted file mode 100644 index 65d1ba5369ed..000000000000 --- a/share/man/man4/altera_sdcard.4 +++ /dev/null @@ -1,116 +0,0 @@ -.\"- -.\" Copyright (c) 2012 Robert N. M. Watson -.\" All rights reserved. -.\" -.\" This software was developed by SRI International and the University of -.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) -.\" ("CTSRD"), as part of the DARPA CRASH research programme. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd August 18, 2012 -.Dt ALTERA_SDCARD 4 -.Os -.Sh NAME -.Nm altera_sdcard -.Nd driver for the Altera University Program Secure Data Card IP Core -.Sh SYNOPSIS -.Cd "device altera_sdcard" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.altera_sdcardc.0.at="nexus0" -.Cd hint.altera_sdcardc.0.maddr=0x7f008000 -.Cd hint.altera_sdcardc.0.msize=0x400 -.Sh DESCRIPTION -The -.Nm -device driver provides support for the Altera University Program Secure Data -Card (SD Card) IP Core device. -A controller device, -.Li altera_sdcardcX , -will be attached during boot. -Inserted disks are presented as -.Xr disk 9 -devices, -.Li altera_sdcardX , -corresponding to the controller number. -.Sh HARDWARE -The current version of the -.Nm -driver supports the SD Card IP core as described in the August 2011 version of -Altera's documentation. -The core supports only cards up to 2G (CSD 0); larger cards, or cards using -newer CSD versions, will not be detected. -The IP core has two key limitations: a lack of interrupt support, requiring -timer-driven polling to detect I/O completion, and support for only single -512-byte block read and write operations at a time. -The combined effect of those two limits is that the system clock rate, -.Dv HZ , -must be set to at least 200 in order to accomplish the maximum 100KB/s data -rate supported by the IP core. -.Sh SEE ALSO -.Xr disk 9 -.Rs -.%T Altera University Program Secure Data Card IP Core -.%D August 2011 -.%I Altera Corporation - University Program -.%U ftp://ftp.altera.com/up/pub/Altera_Material/11.0/University_Program_IP_Cores/Memory/SD_Card_Interface_for_SoPC_Builder.pdf -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 10.0 . -.Sh AUTHORS -The -.Nm -device driver and this manual page were -developed by SRI International and the University of Cambridge Computer -Laboratory under DARPA/AFRL contract -.Pq FA8750-10-C-0237 -.Pq Do CTSRD Dc , -as part of the DARPA CRASH research programme. -This device driver was written by -.An Robert N. M. Watson . -.Sh BUGS -.Nm -contains a number of work-arounds for IP core bugs. -Perhaps most critically, -.Nm -ignores the CRC error bit returned in the RR1 register, which appears to be -unexpectedly set by the IP core. -.Pp -.Nm -uses fixed polling intervals are used for card insertion/removal and -I/O completion detection; an adaptive strategy might improve performance by -reducing the latency to detecting completed I/O. -However, in our experiments, using polling rates greater than 200 times a -second did not improve performance. -.Pp -.Nm -supports only a -.Li nexus -bus attachment, which is appropriate for system-on-chip busses such as -Altera's Avalon bus. -If the IP core is configured off of another bus type, then additional bus -attachments will be required. diff --git a/share/man/man4/altq.4 b/share/man/man4/altq.4 index 2a6acc96ed86..a613802248a4 100644 --- a/share/man/man4/altq.4 +++ b/share/man/man4/altq.4 @@ -142,7 +142,7 @@ They have been applied to the following hardware drivers: .Xr fxp 4 , .Xr gem 4 , .Xr igb 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr jme 4 , .Xr le 4 , .Xr liquidio 4 , diff --git a/share/man/man4/arswitch.4 b/share/man/man4/arswitch.4 index 3ec7316ae6e7..5bcd6c6810ee 100644 --- a/share/man/man4/arswitch.4 +++ b/share/man/man4/arswitch.4 @@ -22,12 +22,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 8, 2023 +.Dd May 11, 2025 .Dt ARSWITCH 4 .Os .Sh NAME .Nm arswitch -.Nd driver for Atheros Fast Ethernet switch +.Nd Atheros AR8000 series Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -35,18 +35,8 @@ .Sh DESCRIPTION The .Nm -device driver provides a management interface to multiple Atheros -fast ethernet switch chips: -.Bl -tag -compact -width "AR8216" -.It AR8216 -Fast Ethernet Switch -.It AR8226 -.It AR8316 -Six-port Gigabit Ethernet Switch -.It AR8327 -Seven-port Gigabit Ethernet Switch -.El -.Pp +driver provides a management interface to Atheros AR8000 series Ethernet +switch controllers. The driver uses an .Xr mdio 4 or @@ -70,6 +60,23 @@ and are mutually exclusive. .Pp Setting the switch MAC address is not supported. +.Sh HARDWARE +The +.Nm +driver supports the following Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Atheros AR8327 Seven-port Gigabit Ethernet Switch +.It +Atheros AR8316 Six-port Gigabit Ethernet Switch +.It +Atheros AR8236 Six-port Fast Ethernet Switch +.It +Atheros AR8226 Six-port Fast Ethernet Switch +.It +Atheros AR8216 Six-port Fast Ethernet Switch +.El .Sh SEE ALSO .Xr etherswitch 4 , .Xr etherswitchcfg 8 diff --git a/share/man/man4/ath10k.4 b/share/man/man4/ath10k.4 index 61c44543815f..4e23382e2450 100644 --- a/share/man/man4/ath10k.4 +++ b/share/man/man4/ath10k.4 @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2022 Bjoern A. Zeeb +.\" Copyright (c) 2022-2024 Bjoern A. Zeeb .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 22, 2023 +.Dd September 30, 2024 .Dt ATH10K 4 .Os .Sh NAME @@ -47,18 +47,7 @@ It is discouraged to load the driver from .Sh DESCRIPTION The .Nm -driver is derived from Qualcomm Atheros' Linux ath10k driver and -provides support for the following PCI chipsets: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It QCA6174 -.It QCA9377 -.It QCA9887 -.It QCA9888 -.It QCA988X -.It QCA9984 -.It QCA99X0 -.El +driver is derived from Qualcomm Atheros' Linux ath10k driver .Pp This driver requires firmware to be loaded before it will work. The package @@ -87,6 +76,20 @@ While supports all 802.11 a/b/g/n and ac the compatibility code currently only supports 802.11 a/b/g modes. Support for 802.11 n/ac is to come. +.Sh HARDWARE +The +.Nm +driver supports PCIe devices with the following chipsets: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It QCA6174 +.It QCA9377 +.It QCA9887 +.It QCA9888 +.It QCA988X +.It QCA9984 +.It QCA99X0 +.El .Sh SEE ALSO .Xr wlan 4 , .Xr ifconfig 8 , diff --git a/share/man/man4/atopcase.4 b/share/man/man4/atopcase.4 index 33e47ec64ee8..a0c95a9e218f 100644 --- a/share/man/man4/atopcase.4 +++ b/share/man/man4/atopcase.4 @@ -101,9 +101,9 @@ device node. .El .Sh SEE ALSO .Xr acpi 4 , +.Xr loader.conf 5 , .Xr backlight 8 , -.Xr loader 8 , -.Xr loader.conf 5 . +.Xr loader 8 .Sh HISTORY The .Nm diff --git a/share/man/man4/aue.4 b/share/man/man4/aue.4 index e451315672e9..9b82fdc4ba55 100644 --- a/share/man/man4/aue.4 +++ b/share/man/man4/aue.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-4-Clause +.\" .\" Copyright (c) 1997, 1998, 1999 .\" Bill Paul <wpaul@ee.columbia.edu>. All rights reserved. .\" @@ -28,12 +31,12 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd May 26, 2025 .Dt AUE 4 .Os .Sh NAME .Nm aue -.Nd ADMtek AN986 Pegasus USB Ethernet driver +.Nd ADMtek AN986 Pegasus USB Fast Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -56,8 +59,8 @@ if_aue_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for USB Ethernet adapters based on the ADMtek -AN986 Pegasus chipset. +driver provides support for USB Fast Ethernet adapters based on the +ADMtek AN986 Pegasus chipset. .Pp The LinkSys USB10T adapters that contain the AN986 Pegasus chipset will operate at 100Base-TX and full-duplex. @@ -125,9 +128,10 @@ half duplex mode if this media option is not specified. For more information on configuring this device, see .Xr ifconfig 8 . .Sh HARDWARE -Adapters supported by the +The .Nm -driver include: +driver supports the following USB Fast Ethernet adapters based on the +ADMtek AN986 Pegasus chipset: .Pp .Bl -bullet -compact .It diff --git a/share/man/man4/autofs.4 b/share/man/man4/autofs.4 new file mode 100644 index 000000000000..a721a6e27a53 --- /dev/null +++ b/share/man/man4/autofs.4 @@ -0,0 +1,135 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd December 2, 2017 +.Dt AUTOFS 4 +.Os +.Sh NAME +.Nm autofs +.Nd "automounter filesystem" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in the +kernel configuration file: +.Bd -ragged -offset indent +.Cd "options AUTOFS" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +autofs_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver is the kernel component of the automounter infrastructure. +Its job is to pass mount requests to the +.Xr automountd 8 +daemon, and pause the processes trying to access the automounted filesystem +until the mount is completed. +It is mounted by the +.Xr automount 8 . +.Sh OPTIONS +These options are available when +mounting +.Nm +file systems: +.Bl -tag -width indent +.It Cm master_options +Mount options for all filesystems specified in the map entry. +.It Cm master_prefix +Filesystem mountpoint prefix. +.El +.Sh SYSCTL VARIABLES +The following variables are available as both +.Xr sysctl 8 +variables and +.Xr loader 8 +tunables: +.Bl -tag -width indent +.It Va vfs.autofs.debug +Verbosity level for log messages from the +.Nm +driver. +Set to 0 to disable logging or 1 to warn about potential problems. +Larger values enable debugging output. +Defaults to 1. +.It Va vfs.autofs.interruptible +Set to 1 to allow mount requests to be interrupted by signal. +Defaults to 1. +.It Va vfs.autofs.retry_delay +Number of seconds before retrying mount requests. +Defaults to 1. +.It Va vfs.autofs.retry_attempts +Number of attempts before failing mount. +Defaults to 3. +.It Va vfs.autofs.cache +Number of seconds to wait before reinvoking +.Xr automountd 8 +for any given file or directory. +Defaults to 600. +.It Va vfs.autofs.timeout +Number of seconds to wait for +.Xr automountd 8 +to handle the mount request. +Defaults to 30. +.It Va vfs.autofs.mount_on_stat +Set to 1 to trigger mount on +.Xr stat 2 +on mountpoint. +Defaults to 0. +.El +.Sh EXAMPLES +To unmount all mounted +.Nm +filesystems: +.Pp +.Dl "umount -At autofs" +.Pp +To mount +.Nm +filesystems specified in +.Xr auto_master 5 : +.Pp +.Dl "automount" +.Sh SEE ALSO +.Xr auto_master 5 , +.Xr automount 8 , +.Xr automountd 8 , +.Xr autounmountd 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 10.1 . +.Sh AUTHORS +The +.Nm +was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4 index 9ca268d6ff83..7133ee3253eb 100644 --- a/share/man/man4/axge.4 +++ b/share/man/man4/axge.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-4-Clause +.\" .\" Copyright (c) 1997, 1998, 1999, 2000-2003 .\" Bill Paul <wpaul@windriver.com>. All rights reserved. .\" @@ -28,7 +31,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 4, 2023 +.Dd May 25, 2025 .Dt AXGE 4 .Os .Sh NAME @@ -121,6 +124,19 @@ Force half duplex operation. .Pp For more information on configuring this device, see .Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver supports the following USB Gigabit Ethernet controllers: +.Pp +.Bl -bullet -compact +.It +ASIX Electronics AX88179A +.It +ASIX Electronics AX88179 +.It +ASIX Electronics AX88178A +.El .Sh SEE ALSO .Xr altq 4 , .Xr arp 4 , diff --git a/share/man/man4/blackhole.4 b/share/man/man4/blackhole.4 index 00c8e3d7a2b6..bb955fd4497d 100644 --- a/share/man/man4/blackhole.4 +++ b/share/man/man4/blackhole.4 @@ -10,7 +10,7 @@ .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" -.Dd November 3, 2021 +.Dd May 25, 2024 .Dt BLACKHOLE 4 .Os .Sh NAME @@ -21,7 +21,7 @@ MIB for manipulating behaviour in respect of refused SCTP, TCP, or UDP connectio attempts .Sh SYNOPSIS .Cd sysctl net.inet.sctp.blackhole Ns Op = Ns Brq "0 | 1 | 2" -.Cd sysctl net.inet.tcp.blackhole Ns Op = Ns Brq "0 | 1 | 2" +.Cd sysctl net.inet.tcp.blackhole Ns Op = Ns Brq "0 | 1 | 2 | 3" .Cd sysctl net.inet.tcp.blackhole_local Ns Op = Ns Brq "0 | 1" .Cd sysctl net.inet.udp.blackhole Ns Op = Ns Brq "0 | 1" .Cd sysctl net.inet.udp.blackhole_local Ns Op = Ns Brq "0 | 1" @@ -30,7 +30,8 @@ The .Nm .Xr sysctl 8 MIB is used to control system behaviour when connection requests -are received on SCTP, TCP, or UDP ports where there is no socket listening. +are received on SCTP, TCP, or UDP ports where there is no socket listening +or unexpected packets are received on listening sockets. .Pp The blackhole behaviour is useful to slow down an attacker who is port-scanning a system in an attempt to detect vulnerable services. @@ -51,7 +52,7 @@ when unexpected packets are received. .Ss TCP Normal behaviour, when a TCP SYN segment is received on a port where there is no socket accepting connections, is for the system to return -a RST segment, and drop the connection. +a RST segment, and drop the incoming SYN segment. The connecting system will see this as a .Dq Connection refused . @@ -61,6 +62,9 @@ is merely dropped, and no RST is sent, making the system appear as a blackhole. By setting the MIB value to two, any segment arriving on a closed port is dropped without returning a RST. +Setting the MIB value to three, any segment arriving on a closed port +or an unexpected segment on a listening port is dropped without sending a +RST in reply. This provides some degree of protection against stealth port scans. .Ss UDP Enabling blackhole behaviour turns off the sending diff --git a/share/man/man4/bnxt.4 b/share/man/man4/bnxt.4 index f07c66fd4dda..0900a11cecea 100644 --- a/share/man/man4/bnxt.4 +++ b/share/man/man4/bnxt.4 @@ -48,7 +48,7 @@ if_bnxt_load="YES" The .Nm driver provides support for various NICs based on the Broadcom BCM57301/2/4, -and BCM57402/4/6 Ethernet controller chips. +BCM57402/4/6, and BCM57502/4/8 Ethernet controller chips. .Pp For more information on configuring this device, see .Xr ifconfig 8 . @@ -102,6 +102,12 @@ Broadcom BCM57416 NetXtreme-E Partition Broadcom BCM57417 NetXtreme-E Ethernet Partition .It Broadcom BCM57454 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb Ethernet +.It +Broadcom BCM57502 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet +.It +Broadcom BCM57504 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet +.It +Broadcom BCM57508 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet .El .Sh SYSCTL VARIABLES These variables must be set before loading the driver, either via diff --git a/share/man/man4/bnxt_re.4 b/share/man/man4/bnxt_re.4 new file mode 100644 index 000000000000..e2bb87c320b1 --- /dev/null +++ b/share/man/man4/bnxt_re.4 @@ -0,0 +1,91 @@ +.\" Copyright (c) 2024 Broadcom, All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS `AS IS' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 15, 2024 +.Dt BNXT_RE 4 +.Os +.Sh NAME +.Nm bnxt_re +.Nd "Broadcom NetXtreme-E RoCE driver" +.Sh SYNOPSIS +To compile this driver into the kernel, +place these lines in your kernel configuration file: +.Bd -ragged -offset indent +.Cd "options COMPAT_LINUXKPI" +.Cd "device bnxt" +.Cd "device bnxt_re" +.Ed +.Pp +To load the driver as a module at run-time, +run this command as root: +.Bd -literal -offset indent +kldload bnxt_re +.Ed +.Pp +To load the driver as a +module at boot time, place this line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +bnxt_re_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver provides support for Remote Direct Memory Access (RDMA) over +Converged Ethernet (RoCE) for Broadcom NetXtreme-E PCI Express network +adapters. +.Sh HARDWARE +The +.Nm +driver provides support for NetXtreme-E BCM575xx 10/20/25/40/50/100/200Gb +network adapters, including: +.Pp +.Bl -bullet -compact +.It +Broadcom BCM57502 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet +.It +Broadcom BCM57504 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet +.It +Broadcom BCM57508 NetXtreme-E 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet +.El +.Sh SUPPORT +For general information and support, +go to the Broadcom support website at: +.Pa http://www.broadcom.com/ . +.Pp +Report driver issues with supported adapters to +.Aq Mt freebsd.pdl@broadcom.com . +.Sh SEE ALSO +.Xr bnxt_re 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Broadcom <freebsd.pdl@broadcom.com> . diff --git a/share/man/man4/bpf.4 b/share/man/man4/bpf.4 index 4a40f4947dfd..8082f6eac39a 100644 --- a/share/man/man4/bpf.4 +++ b/share/man/man4/bpf.4 @@ -665,7 +665,7 @@ Set the VLAN PCP bits to the supplied value. now supports several standard .Xr ioctl 2 Ns 's which allow the user to do async and/or non-blocking I/O to an open -.I bpf +.Em bpf file descriptor. .Bl -tag -width SIOCGIFADDR .It Dv FIONREAD diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4 index 31a0ce43a263..2dff393ebc29 100644 --- a/share/man/man4/bridge.4 +++ b/share/man/man4/bridge.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-4-Clause +.\" .\" $NetBSD: bridge.4,v 1.5 2004/01/31 20:14:11 jdc Exp $ .\" .\" Copyright 2001 Wasabi Systems, Inc. @@ -33,7 +36,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 10, 2023 +.Dd July 5, 2025 .Dt IF_BRIDGE 4 .Os .Sh NAME @@ -76,10 +79,12 @@ command or using the variable in .Xr rc.conf 5 . .Pp -The +When it is created, the .Nm -interface randomly chooses a link (MAC) address in the range reserved for -locally administered addresses when it is created. +interface gets assigned a link (MAC) address in the range of universally +administered addresses reserved for the FreeBSD Foundation by hashing +the host UUID, jail name, and the interface name. +If this fails, a random, locally administered address is generated instead. This address is guaranteed to be unique .Em only across all @@ -125,7 +130,8 @@ variable to .Li 0 . .Pp -All the bridged member interfaces need to be up in order to pass network traffic. +All the bridged member interfaces need to be up +in order to pass network traffic. These can be enabled using .Xr ifconfig 8 or @@ -154,6 +160,25 @@ This can be used to multiplex the input of two or more interfaces into a single stream. This is useful for reconstructing the traffic for network taps that transmit the RX/TX signals out through two separate interfaces. +.Pp +To allow the host to communicate with bridge members, IP addresses +should be assigned to the +.Nm +interface itself, not to the bridge's member interfaces. +Attempting to assign an IP address to a bridge member interface, or add +a member interface with an assigned IP address to a bridge, will return +an +.Dv EINVAL +.Dq ( "Invalid argument" ) +error. +For compatibility with older releases where this was permitted, setting +the +.Xr sysctl 8 +variable +.Va net.link.bridge.member_ifaddrs +to 1 will permit this configuration. +This sysctl variable will be removed in +.Fx 16.0. .Sh IPV6 SUPPORT .Nm supports the @@ -165,11 +190,6 @@ variable configures an IPv6 link-local address on .Li bridge0 interface: .Bd -literal -offset indent -ifconfig_bridge0_ipv6="up" -.Ed -.Pp -or in a more explicit manner: -.Bd -literal -offset indent ifconfig_bridge0_ipv6="inet6 auto_linklocal" .Ed .Pp @@ -251,6 +271,54 @@ by setting the .Va net.link.bridge.log_stp node using .Xr sysctl 8 . +.Sh VLAN SUPPORT +The +.Nm +driver has full support for virtual LANs (VLANs). +The bridge implements independent VLAN learning, i.e. MAC addresses are +learned on a per-VLAN basis, and the same MAC address may be learned on +multiple interfaces on different VLANs. +Incoming frames with an 802.1Q tag will be assigned to the appropriate +VLAN. +.Pp +Traffic sent to or from the host is not assigned to a VLAN by default. +To allow the host to communicate on a VLAN, configure a +.Xr vlan 4 +interface on the bridge and (if necessary) assign IP addresses there. +.Pp +By default no access control is enabled, so any interface may +participate in any VLAN. +.Pp +VLAN filtering may be enabled on an interface using the +.Xr ifconfig 8 +.Cm vlanfilter +option. +When VLAN filtering is enabled, an interface may only send and receive +frames based on its configured VLAN access list. +.Pp +The interface's untagged VLAN ID may be configured using the +.Xr ifconfig 8 +.Cm untagged +option. +If an untagged VLAN ID is configured, incoming frames will be assigned +to that VLAN, and the interface may receive outgoing untagged frames +in that VLAN. +.Pp +The tagged VLAN access list may be configured using the +.Cm tagged , +.Cm +tagged +and +.Cm -tagged +options to +.Xr ifconfig 8 . +An interface may send and receive tagged frames for any VLAN in its +access list. +.Pp +The bridge will automatically insert or remove 802.1q tags as needed, +based on the interface configuration, when forwarding frames between +interfaces. +This tag processing is only done for interfaces with VLAN filtering +enabled. .Sh PACKET FILTERING Packet filtering can be used with any firewall package that hooks in via the .Xr pfil 9 @@ -261,7 +329,7 @@ the appropriate interfaces. Either stage can be disabled. The filtering behavior can be controlled using .Xr sysctl 8 : -.Bl -tag -width ".Va net.link.bridge.pfil_onlyip" +.Bl -tag -width indent .It Va net.link.bridge.pfil_onlyip Controls the handling of non-IP packets which are not passed to .Xr pfil 9 . @@ -470,8 +538,8 @@ ifconfig_fxp0="up" .Ed .Pp Consider a system with two 4-port Ethernet boards. -The following will cause a bridge consisting of all 8 ports with Rapid Spanning -Tree enabled to be created: +The following will cause a bridge consisting of all 8 ports with +Rapid Spanning Tree enabled to be created: .Bd -literal -offset indent ifconfig bridge0 create ifconfig bridge0 \e @@ -518,6 +586,7 @@ ifconfig bridge0 addm fxp0 addm gif0 up .Xr ipfw 4 , .Xr netmap 4 , .Xr pf 4 , +.Xr vlan 4 , .Xr ifconfig 8 .Sh HISTORY The diff --git a/share/man/man4/capsicum.4 b/share/man/man4/capsicum.4 index 3c3eab5d798b..1de8e4531f4f 100644 --- a/share/man/man4/capsicum.4 +++ b/share/man/man4/capsicum.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 3, 2024 +.Dd June 17, 2025 .Dt CAPSICUM 4 .Os .Sh NAME @@ -37,6 +37,12 @@ .Nm is a lightweight OS capability and sandbox framework implementing a hybrid capability system model. +.Nm +is designed to blend capabilities with UNIX. +This approach achieves many of the benefits of least-privilege operation, while +preserving existing UNIX APIs and performance, and presents application authors +with an adoption path for capability-oriented design. +.Pp Capabilities are unforgeable tokens of authority that can be delegated and must be presented to perform an action. .Nm @@ -59,6 +65,34 @@ namespaces) is restricted; only explicitly delegated rights, referenced by memory mappings or file descriptors, may be used. Once set, the flag is inherited by future children processes, and may not be cleared. +.Pp +Access to system calls in capability mode is restricted: some system calls +requiring global namespace access are unavailable, while others are +constrained. +For instance, +.Xr sysctl 2 +can be used to query process-local information such as address space layout, +but also to monitor a system’s network connections. +.Xr sysctl 2 +is constrained by explicitly marking \(~~60 of over 15000 parameters as permitted +in capability mode; all others are denied. +.Pp +The system calls which require constraints are +.Xr sysctl 2 , +.Xr shm_open 2 +.Pq which is permitted to create anonymous memory objects but not named ones +and the +.Xr openat 2 +family of system calls. +The +.Xr openat 2 +calls already accept a file descriptor argument as the directory to perform the +.Xr open 2 , +.Xr rename 2 , +etc. relative to; in capability mode the +.Xr openat 2 +family of system calls are constrained so that they can only operate on +objects “under” the provided file descriptor. .It capabilities Limit operations that can be called on file descriptors. For example, a file descriptor returned by @@ -101,6 +135,20 @@ restrict access to global namespaces: Processes can only act upon their own process ID with syscalls such as .Xr cpuset_setaffinity 2 . .El +.Pp +.Fx +provides some additional functionality to support application sandboxing that +is not part of +.Nm +itself: +.Bl -tag -width indent +.It Xr capsicum_helpers 3 +A set of a inline functions which simplify modifying programs to use +.Nm . +.It Xr libcasper 3 +A library that provides services for sandboxed applications, such as operating +on files specified on a command line or establishing network connections. +.El .Sh SEE ALSO .Xr cap_enter 2 , .Xr cap_fcntls_limit 2 , @@ -138,3 +186,14 @@ and .An Kris Kennaway Aq Mt kris@FreeBSD.org at Google, Inc., and .An Pawel Jakub Dawidek Aq Mt pawel@dawidek.net . +Portions of this manual page are drawn from +.Rs +.%A Robert N. M. Watson +.%A Jonathan Anderson +.%A Ben Laurie +.%A Kris Kennaway +.%T Capsicum: practical capabilities for UNIX +.%J USENIX Security Symposium +.%D August 2010 +.%O DOI: 10.5555/1929820.1929824 +.Re diff --git a/share/man/man4/carp.4 b/share/man/man4/carp.4 index 19079a2cc97e..c972e0288791 100644 --- a/share/man/man4/carp.4 +++ b/share/man/man4/carp.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 6, 2023 +.Dd April 12, 2024 .Dt CARP 4 .Os .Sh NAME @@ -93,6 +93,17 @@ or through the .Dv SIOCSPEER .Xr ioctl 2 . .Pp +.Xr carp 4 +can be configured to use either the non-standard CARP protocol, or VRRPv3 (RFC 5798). +Use the +.Cm carpver +parameter to select either 2 (CARP) or 3 (VRRPv3). +VRRPv3 specific parameters can be configured using the +.Cm vrrpprio +and +.Cm vrrpinterval +parameters. +.Pp CARP virtual hosts can be configured on multicast-capable interfaces: Ethernet, layer 2 VLAN, FDDI and Token Ring. An arbitrary number of virtual host IDs can be configured on an interface. diff --git a/share/man/man4/ccd.4 b/share/man/man4/ccd.4 index c44013dab11f..0c2bc99682a0 100644 --- a/share/man/man4/ccd.4 +++ b/share/man/man4/ccd.4 @@ -32,7 +32,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 9, 1995 +.Dd January 23, 2025 .Dt CCD 4 .Os .Sh NAME @@ -228,7 +228,7 @@ without mounting does not write anything to the .Tn Linux RAID. Then you do a -.Nm fsck.ext2fs Pq Pa ports/sysutils/e2fsprogs +.Nm fsck.ext2fs Pq Pa ports/filesystems/e2fsprogs on the .Nm device using the @@ -277,7 +277,6 @@ device special files .Xr config 8 , .Xr disklabel 8 , .Xr fsck 8 , -.Xr gvinum 8 , .Xr mount 8 , .Xr newfs 8 .Sh HISTORY diff --git a/share/man/man4/ccr.4 b/share/man/man4/ccr.4 index 11b3a37f384d..de3f3609a285 100644 --- a/share/man/man4/ccr.4 +++ b/share/man/man4/ccr.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 3, 2019 +.Dd November 25, 2024 .Dt CCR 4 .Os .Sh NAME @@ -52,7 +52,10 @@ The driver accelerates AES-CBC, AES-CCM, AES-CTR, AES-GCM, AES-XTS, SHA1, SHA2-224, SHA2-256, SHA2-384, SHA2-512, SHA1-HMAC, SHA2-224-HMAC, SHA2-256-HMAC, SHA2-384-HMAC, and SHA2-512-HMAC operations for -.Xr crypto 4 +.Xr crypto 9 +consumers such as +.Xr ktls 4 , +.Xr geli 4 , and .Xr ipsec 4 . The driver also supports chaining one of AES-CBC, AES-CTR, or AES-XTS with @@ -97,7 +100,11 @@ email all the specific information related to the issue to .Sh SEE ALSO .Xr crypto 4 , .Xr cxgbe 4 , -.Xr ipsec 4 +.Xr geli 4 , +.Xr ipsec 4 , +.Xr ktls 4 , +.Xr crypto 7 , +.Xr crypto 9 .Sh HISTORY The .Nm diff --git a/share/man/man4/cd.4 b/share/man/man4/cd.4 index 7c3fa6ed9850..02bf96dbfc97 100644 --- a/share/man/man4/cd.4 +++ b/share/man/man4/cd.4 @@ -336,8 +336,8 @@ devices None. .Sh SEE ALSO .Xr cam 4 , +.Xr cd9660 4 , .Xr da 4 , -.Xr cd9660 5 , .Xr disklabel 8 , .Xr cd 9 .Sh HISTORY diff --git a/share/man/man4/cd9660.4 b/share/man/man4/cd9660.4 new file mode 100644 index 000000000000..a684df37bab9 --- /dev/null +++ b/share/man/man4/cd9660.4 @@ -0,0 +1,84 @@ +.\" +.\" SPDX-License-Identifier: BSD-3-Clause +.\" +.\" Copyright (c) 2017 Enji Cooper +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 18, 2025 +.Dt CD9660 4 +.Os +.Sh NAME +.Nm cd9660 +.Nd "ISO-9660 file system" +.Sh SYNOPSIS +To link into the kernel: +.Bd -ragged -offset indent +.Cd "options CD9660" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +cd9660_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver will permit the +.Fx +kernel to access the +.Tn cd9660 +file system. +.Sh EXAMPLES +To mount a +.Nm +volume located on +.Pa /dev/cd0 : +.Pp +.Dl "mount -t cd9660 /dev/cd0 /mnt" +.Sh SEE ALSO +.Xr etdump 1 , +.Xr nmount 2 , +.Xr unmount 2 , +.Xr cd 4 , +.Xr fstab 5 , +.Xr mount 8 , +.Xr mount_cd9660 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Bx 4.4 Lite . +.Sh AUTHORS +.An -nosplit +The +.Nm +kernel implementation was originally written by +.An Pace Willisson Aq Mt pace@blitz.com +and +.An Atsushi Murai Aq Mt amurai@spec.co.jp . +.Pp +This manual page was written by +.An Enji Cooper Aq Mt ngie@FreeBSD.org . diff --git a/share/man/man4/cdce.4 b/share/man/man4/cdce.4 index 6768c7bbf517..8c5dbb36d197 100644 --- a/share/man/man4/cdce.4 +++ b/share/man/man4/cdce.4 @@ -27,7 +27,7 @@ .\" .\" $NetBSD: cdce.4,v 1.4 2004/12/08 18:35:56 peter Exp $ .\" -.Dd February 10, 2023 +.Dd May 26, 2025 .Dt CDCE 4 .Os .Sh NAME @@ -95,22 +95,24 @@ where .Dq internet is your providers apn name. .Sh HARDWARE -The following devices are supported by the +The .Nm -driver: +driver supports USB Ethernet interfaces implementing the +USB Communication Device Class Ethernet Control Model (CDC ECM) or +Network Control Model (CDC NCM) protocol, such as: .Pp .Bl -bullet -compact .It +Android USB tethering +.It +iPhone USB tethering +.It Prolific PL-2501 Host-to-Host Bridge Controller .It Sharp Zaurus PDA .It Terayon TJ-715 DOCSIS Cable Modem .It -Realtek RTL8156 USB GBE/2.5G Ethernet Family Controller -.It -Planex USB-LAN2500R -.It Huawei 3G/4G LTE (eg. E3372, E5573) and other mobile network devices .El .Sh DIAGNOSTICS @@ -144,10 +146,10 @@ is running low on mbufs. .Xr intro 4 , .Xr ipheth 4 , .Xr netintro 4 , +.Xr u3g 4 , +.Xr ucom 4 , .Xr urndis 4 , .Xr usb 4 , -.Xr ucom 4 , -.Xr u3g 4 , .Xr ifconfig 8 .Rs .%T "Universal Serial Bus Class Definitions for Communication Devices" diff --git a/share/man/man4/ddb.4 b/share/man/man4/ddb.4 index f3443cbac127..3c4894c03d62 100644 --- a/share/man/man4/ddb.4 +++ b/share/man/man4/ddb.4 @@ -24,7 +24,7 @@ .\" any improvements or extensions that they make and grant Carnegie Mellon .\" the rights to redistribute these changes. .\" -.Dd November 10, 2022 +.Dd June 10, 2025 .Dt DDB 4 .Os .Sh NAME @@ -299,7 +299,6 @@ If the modifier has been specified, contents of structs nested up to .Ar depth levels deep will also be included in the output. -.Ed .Pp .It Ic pprint struct Ns Oo Li / Ns Cm d depth Ic Oc Oo Ar name Oc Ns Op Ns Ar addr Print memory at @@ -313,7 +312,6 @@ If the modifier has been specified, contents of structs nested up to .Ar depth levels deep will also be included in the output. -.Ed .Pp .It Xo .Ic write Ns Op Li / Ns Cm bhl @@ -592,7 +590,7 @@ Prints the address of the thread whose kernel-mode stack contains if any. .Pp .It Ic show Cm active trace -.It acttrace +.It Ic acttrace Show a stack trace for every thread running on a CPU. .Pp .It Ic show Cm all procs Ns Op Li / Ns Cm a @@ -606,6 +604,17 @@ The modifier will print command line arguments for each process. .\" .Pp +.It Ic show Cm all tcpcbs Ns Op Li / Ns Cm b Ns Cm l +Show the same output as "show tcpcb" does, but for all +TCP control blocks within the system. +The +.Cm b +modifier will request BBLog entries to be printed. +Using the +.Cm l +modifier will limit the output to TCP control blocks, which are locked. +.\" +.Pp .It Ic show Cm all trace .It Ic alltrace Show a stack trace for every thread in the system. @@ -1097,7 +1106,7 @@ on i386.) Not present on some platforms. .\" .Pp -.It Ic show Cm tcpcb Ar addr +.It Ic show Cm tcpcb Ns Oo Li / Ns Cm b Oc Ar addr Print TCP control block .Vt struct tcpcb lying at address @@ -1105,6 +1114,9 @@ lying at address For exact interpretation of output, visit .Pa netinet/tcp.h header file. +The +.Cm b +modifier will request BBLog entries to be printed. .\" .Pp .It Ic show Cm thread Op Ar addr | tid diff --git a/share/man/man4/devfs.4 b/share/man/man4/devfs.4 new file mode 100644 index 000000000000..3022a23dfe9a --- /dev/null +++ b/share/man/man4/devfs.4 @@ -0,0 +1,147 @@ +.\" Copyright (c) 1996 +.\" Mike Pritchard <mpp@FreeBSD.org>. All rights reserved. +.\" +.\" Copyright (c) 1992, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. +.\" All rights reserved. +.\" +.\" This code is derived from software donated to Berkeley by +.\" Jan-Simon Pendry. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd June 30, 2022 +.Dt DEVFS 4 +.Os +.Sh NAME +.Nm devfs +.Nd device file system +.Sh SYNOPSIS +.Bd -literal +devfs /dev devfs rw 0 0 +.Ed +.Sh DESCRIPTION +The device file system, or +.Nm , +provides access to kernel's device +namespace in the global file system namespace. +The conventional mount point is +.Pa /dev . +.Pp +The file system includes several directories, links, symbolic links +and devices, some of which can also be written. +In a chroot'ed +environment, +.Xr devfs 8 +can be used to create a new +.Pa /dev +mount point. +.Pp +The +.Xr mknod 8 +tool can be used to recover deleted device entries under +.Nm . +.Pp +The +.Xr fdescfs 4 +filesystem is an alternate means for populating +.Pa /dev/fd . +The character devices that both +.Nm +and +.Xr fdescfs 4 +present in +.Pa /dev/fd +correspond to the open file descriptors of the process +accessing the directory. +.Nm +only creates files for the standard file descriptors +.Pa 0 , +.Pa 1 +and +.Pa 2 . +.Xr fdescfs 4 +creates files for all open descriptors. +.Pp +The options are as follows: +.Bl -tag -width indent +.It Fl o Ar options +Use the specified mount +.Ar options , +as described in +.Xr mount 8 . +The following devfs file system-specific options are available: +.Bl -tag -width indent +.It Cm ruleset Ns No = Ns Ar ruleset +Set ruleset number +.Ar ruleset +as the current ruleset for the mount-point and apply all its rules. +If the ruleset number +.Ar ruleset +does not exist, an empty ruleset with the number +.Ar ruleset +is created. +See +.Xr devfs 8 +for more information on working with devfs rulesets. +.El +.El +.Sh FILES +.Bl -tag -width /dev/XXXX -compact +.It Pa /dev +The normal +.Nm +mount point. +.El +.Sh EXAMPLES +To mount a +.Nm +volume located on +.Pa /mychroot/dev : +.Pp +.Dl "mount -t devfs devfs /mychroot/dev" +.Sh SEE ALSO +.Xr fdescfs 4 , +.Xr devfs 8 , +.Xr mount 8 , +.Xr make_dev 9 +.Sh HISTORY +The +.Nm +file system first appeared in +.Fx 2.0 . +It became the preferred method for accessing devices in +.Fx 5.0 +and the only method in +.Fx 6.0 . +The +.Nm +manual page first appeared in +.Fx 2.2 . +.Sh AUTHORS +The +.Nm +manual page was written by +.An Mike Pritchard Aq Mt mpp@FreeBSD.org . diff --git a/share/man/man4/disk.4 b/share/man/man4/disk.4 index 6451ff0e7370..97eeb9b718d4 100644 --- a/share/man/man4/disk.4 +++ b/share/man/man4/disk.4 @@ -57,7 +57,7 @@ Operations to block devices such as .Xr lseek 2 , .Xr read 2 , and -.Xr write +.Xr write 2 may only be performed at file offsets that are integral multiple of this size. .It Dv DIOCGMEDIASIZE @@ -111,8 +111,6 @@ the case for multipathing for example, GEOM classes that consume a single provider and provide single provider, like .Xr geli 8 , -and -.Xr gbde 8 , the identifier should be formed by attaching that provider's class name to the ident of the underlying provider, .It diff --git a/share/man/man4/ds1307.4 b/share/man/man4/ds1307.4 index ae8884934f09..46d22663e50c 100644 --- a/share/man/man4/ds1307.4 +++ b/share/man/man4/ds1307.4 @@ -22,12 +22,12 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 7, 2015 +.Dd December 10, 2024 .Dt DS1307 4 .Os .Sh NAME .Nm ds1307 -.Nd 64 x 8, serial, i2c real-time clock +.Nd 64 x 8, serial, i2c real-time clock (RTC) .Sh SYNOPSIS .Cd "device iic" .Cd "device iicbus" diff --git a/share/man/man4/ds3231.4 b/share/man/man4/ds3231.4 index 8734e82b4e69..52322eec6eb9 100644 --- a/share/man/man4/ds3231.4 +++ b/share/man/man4/ds3231.4 @@ -22,12 +22,12 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 12, 2016 +.Dd December 10, 2024 .Dt DS3231 4 .Os .Sh NAME .Nm ds3231 -.Nd Extremely Accurate i2c-integrated RTC/TCXO/Crystal +.Nd Extremely Accurate i2c-integrated real-time clock (RTC)/TCXO/Crystal .Sh SYNOPSIS .Cd "device iic" .Cd "device iicbus" diff --git a/share/man/man4/dtrace_dtrace.4 b/share/man/man4/dtrace_dtrace.4 new file mode 100644 index 000000000000..b8c31005b47e --- /dev/null +++ b/share/man/man4/dtrace_dtrace.4 @@ -0,0 +1,191 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 Mateusz Piotrowski <0mp@FreeBSD.org> +.\" +.Dd July 14, 2025 +.Dt DTRACE_DTRACE 4 +.Os +.Sh NAME +.Nm dtrace_dtrace +.Nd a DTrace provider for BEGIN, END, and ERROR probes +.Sh SYNOPSIS +.Nm dtrace Ns Cm :::BEGIN +.Nm dtrace Ns Cm :::END +.Nm dtrace Ns Cm :::ERROR +.Sh DESCRIPTION +The +.Nm dtrace +provider implements three special probes related to the life cycle of the +DTrace program itself. +.Ss dtrace:::BEGIN +The +.Nm dtrace Ns Cm :::BEGIN +probe fires at the beginning of a +.Xr dtrace 1 , +program before tracing has begun. +It provides a convenient place for initializing variables +and printing column headers. +.Pp +Variables such as +.Va stack +or +.Va execname +cannot be relied upon in the execution context of the +.Nm dtrace Ns Cm :::BEGIN +probe. +.Ss dtrace:::END +The +.Nm dtrace Ns Cm :::END +probe fires at the end of a +.Xr dtrace 1 +program, when all tracing has stopped. +.Ss dtrace:::ERROR +The +.Nm dtrace Ns Cm :::ERROR +probe fires when an unexpected runtime error occurs in another probe. +.Pp +The following table describes the arguments to +.Nm dtrace Ns Cm :::ERROR . +.Bl -column -offset indent "Argument" "Definition" +.It Sy Argument Ta Sy Definition +.It Fa arg1 Ta Enabled probe identifier (EPID) +of the probe where the runtime error occurred +.It Fa arg2 Ta Index of the action statement that caused the error +.It Fa arg3 Ta DIF offset into the action if available (otherwise -1) +.It Fa arg4 Ta Fault type +.It Fa arg5 Ta Accessed address (or 0 if not applicable) when +.Va arg4 +is of fault type +.Dv DTRACEFLT_BADADDR , DTRACEFLT_BADALIGN , DTRACEFLT_KPRIV , +or +.Dv DTRACEFLT_UPRIV +.El +.Pp +The fault types are: +.Bl -tag -offset indent -width "DTRACEFLT_NOSCRATCH" -compact +.It Dv DTRACEFLT_UNKNOWN +Unknown fault +.It Dv DTRACEFLT_BADADDR +Bad address +.It Dv DTRACEFLT_BADALIGN +Bad alignment +.It Dv DTRACEFLT_ILLOP +Illegal operation +.It Dv DTRACEFLT_DIVZERO +Divide-by-zero +.It Dv DTRACEFLT_NOSCRATCH +Out of scratch space +.It Dv DTRACEFLT_KPRIV +Illegal kernel access +.It Dv DTRACEFLT_UPRIV +Illegal user access +.It Dv DTRACEFLT_TUPOFLOW +Tuple stack overflow +.It Dv DTRACEFLT_BADSTACK +Bad stack +.El +.Sh FILES +.Bl -tag -width '<sys/dtrace.h>' +.It In sys/dtrace.h +The header file containing the definitions of DTrace fault types. +.El +.Sh EXAMPLES +.Ss Example 1 : Custom Column Headers +The following script uses the +.Nm dtrace Ns Cm :::BEGIN +probe to print column headers. +Note the pragma line setting the +.Ql quiet +option to disable the default column headers. +.Bd -literal -offset 2n +#pragma D option quiet + +dtrace:::BEGIN +{ + printf(" %12s %-20s %-20s %s\en", + "DELTA(us)", "OLD", "NEW", "TIMESTAMP"); +} +.Ed +.Ss Example 2 : Handling Runtime Errors with dtrace:::ERROR +The following script causes a runtime error by dereferencing a pointer +on address +.Ad 19930908 +in the +.Cm BEGIN +probe. +As a result, the +.Cm ERROR +probe fires and prints out +.Dq Oops +along with the probe arguments. +At that point, the program ends and fires the +.Cm END +probe. +.\" It might look weird to define ERROR first, but that is on purpose. +.\" This way the probe IDs and EPIDs are a bit more mixed up +.\" and are easier to understand. +.Bd -literal -offset 2n +ERROR +{ + printf("Oops\en"); + printf("EPID (arg1): %d\en", arg1); + printf("Action index (arg2): %d\en", arg2); + printf("DIF offset (arg3): %d\en", arg3); + printf("Fault type (arg4): %d\en", arg4); + printf("Accessed address (arg5): %X\en", arg5); + exit(1); +} +BEGIN +{ + *(int *)0x19931101; +} +END { + printf("Bye"); +} +.Ed +.Pp +This script will result in the following output: +.Bd -literal -offset 2n +CPU ID FUNCTION:NAME + 2 3 :ERROR Oops +EPID (arg1): 2 +Action index (arg2): 1 +DIF offset (arg3): 16 +Fault type: 1 +arg5: 19931101 + +dtrace: error on enabled probe ID 2 (ID 1: dtrace:::BEGIN): invalid address (0x19931101) in action #1 at DIF offset 16 + 2 2 :END Bye +.Ed +.Sh SEE ALSO +.Xr dtrace 1 , +.Xr tracing 7 +.Rs +.%B The illumos Dynamic Tracing Guide +.%O Chapter dtrace Provider +.%D 2008 +.%U https://illumos.org/books/dtrace/chp-dtrace.html +.Re +.Sh AUTHORS +This manual page was written by +.An Mateusz Piotrowski Aq Mt 0mp@FreeBSD.org . +.Sh CAVEATS +The +.Nm dtrace Ns Cm :::ERROR +probe arguments cannot be accessed through the typed +.Va args[] +array. +.Pp +.Xr dtrace 1 +will not fire the +.Nm dtrace Ns Cm :::ERROR +probe recursively. +If an error occurs in one of the action statements of the +.Nm dtrace Ns Cm :::ERROR , +then +.Xr dtrace 1 +will abort further processing of +the +.Nm dtrace Ns Cm :::ERROR +probe's actions. diff --git a/share/man/man4/dtrace_fbt.4 b/share/man/man4/dtrace_fbt.4 new file mode 100644 index 000000000000..3e35bb8c5bbc --- /dev/null +++ b/share/man/man4/dtrace_fbt.4 @@ -0,0 +1,332 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 Mateusz Piotrowski <0mp@FreeBSD.org> +.\" +.Dd July 16, 2025 +.Dt DTRACE_FBT 4 +.Os +.Sh NAME +.Nm dtrace_fbt +.Nd a DTrace provider for dynamic kernel tracing based on function boundaries +.Sh SYNOPSIS +.Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:entry +.Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:return +.Sh DESCRIPTION +The Function Boundary Tracing +.Pq Nm fbt +provider instruments the entry and return of almost every kernel function +corresponding to an +.Xr elf 5 +symbol in the kernel and loaded kernel modules. +.Pp +.Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:entry +fires whenever the +.Ar function +is called. +.Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:return +fires when the +.Ar function +returns. +.Pp +The +.Ar module +in the probe description is either the name of the loaded kernel module +or +.Ql kernel +for functions compiled into the kernel. +.Ss Function Boundary Instrumentation +The +.Nm fbt +will always instrument a function's entry, but +its return will be intsrumented so long as it can find a +.Ql ret +instruction. +.Pp +In some cases, +.Nm fbt +cannot instrument a function's entry and/or return. +Refer to subsection +.Sx Frame Pointer +for more details. +.Ss Probe Arguments +The arguments of the entry probe +.Pq Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:entry +are the arguments of the traced function call. +.Bl -column -offset indent "Entry Probe Argument" "Definition" +.It Sy Entry Probe Argument Ta Sy Definition +.It Fa args[0] Ta Function's first argument, typed +.Pq e.g., Xr malloc 9 Ap s Ft size_t Fa size +.It Fa args[1] Ta Function's second argument, typed +.Pq e.g., Xr malloc 9 Ap s Ft struct malloc_type Fa *type +.It Fa args[2] Ta Function's third argument, typed +.Pq e.g., Xr malloc 9 Ap s Ft int Fa flags +.It Fa ... Ta ... +.El +.Pp +The arguments of the return probe +.Pq Nm fbt Ns Cm \&: Ns Ar module Ns Cm \&: Ns Ar function Ns Cm \&:return +are +.Fa args[0] +.Po +the offset of the firing return instruction within the function; +useful to tell apart two different return statements in a single function +.Pc +and +.Fa args[1] +.Pq the return value, if any . +.Bl -column -offset indent "Return Probe Argument" "Definition" +.It Sy Return Probe Argument Ta Sy Definition +.It Fa args[0] Ta Offset of the traced return instruction +.It Fa args[1] Ta Function's return value +.Po e.g., a kernel virtual address if returning from a successful +.Xr malloc 9 +.Pc +.El +.Pp +Subsection +.Sx Example 2 : Getting Details About Probe's Arguments +shows how to get probe's argument count and types directly with +.Xr dtrace 1 +without having to resort to the reading function's source code +or documentation. +.Sh EXAMPLES +.Ss Example 1 : Listing Available FBT Probes +The following example shows how to list all the available +.Nm fbt +probes. +.Bd -literal -offset 2n +# dtrace -l -P fbt + ID PROVIDER MODULE FUNCTION NAME +[...] +31868 fbt kernel hammer_time entry +31869 fbt kernel hammer_time return +[...] +.Ed +.Pp +Since +.Fn hammer_time +is a part of the kernel and not a separate loaded module, the +.Ar module +column displays +.Ql kernel . +.Ss Example 2 : Getting Details About Probe's Arguments +The following example shows how to generate a program stability report of +.Xr malloc 9 Ap s +entry and return probes. +Those reports are useful to view +the probe's number of arguments and their types. +.Bd -literal -offset 2n +# dtrace -l -v -n fbt::malloc:entry +[...] + Argument Types + args[0]: size_t + args[1]: struct malloc_type * + args[2]: int +.Ed +.Pp +The count and types of +.Nm fbt Ns Cm \&::malloc:entry +arguments +match the function signature of +.Xr malloc 9 : +.Va args[0] +is +.Ft size_t , +.Va args[1] +is +.Ft "struct malloc_type *" , +and +.Va "args[2]" +is +.Ft int . +.Bd -literal -offset 2n +# dtrace -l -v -n fbt::malloc:return +[...] + Argument Types + args[0]: int + args[1]: void * +.Ed +.Pp +The +.Cm return +probe reports two arguments and their types: +the return instruction offset +.Pq the usual Ft int +and the function's return value, which in this case is +.Ft void * , +as +.Xr malloc 9 +returns a kernel virtual address. +.Ss Example 3 : Counting Kernel Slab Memory Allocation by Function +.Bd -literal -offset 2n +# dtrace -n 'fbt::kmem*:entry { @[probefunc] = count(); }' +dtrace: description 'fbt::kmem*:entry ' matched 47 probes +^C + kmem_alloc_contig 1 + kmem_alloc_contig_domainset 1 + kmem_cache_reap_active 1 + kmem_alloc_contig_pages 2 + kmem_free 2 + kmem_std_destructor 19 + kmem_std_constructor 26 + kmem_cache_free 151 + kmem_cache_alloc 181 +.Ed +.Ss Example 4 : Counting Kernel Slab Memory Allocation by Calling Function +.Bd -literal -offset 2n +# dtrace -q -n 'fbt::kmem*:entry { @[caller] = count(); } END { printa("%40a %@16d\en", @); }' +^C + kernel`contigmalloc+0x33 1 + kernel`free+0xd3 1 + kernel`kmem_alloc_contig+0x29 1 +kernel`kmem_alloc_contig_domainset+0x19a 1 + zfs.ko`arc_reap_cb_check+0x16 1 +.Ed +.Ss Example 5 : Counting Kernel malloc()'s by Calling Function +.Bd -literal -offset 2n +# dtrace -q -n 'fbt::malloc:entry { @[caller] = count(); } END { printa("%45a %@16d\en", @); }' +^C + kernel`devclass_get_devices+0xa8 1 + kernel`sys_ioctl+0xb7 1 + dtrace.ko`dtrace_ioctl+0x15c1 1 + dtrace.ko`dtrace_ioctl+0x972 2 + dtrace.ko`dtrace_dof_create+0x35 2 + kernel`kern_poll_kfds+0x2f0 4 + kernel`kern_poll_kfds+0x28a 19 +.Ed +.Ss Example 6 : Counting Kernel malloc()'s by Kernel Stack Trace +.Bd -literal -offset 2n +# dtrace -q -n 'fbt::malloc:entry { @[stack()] = count(); }' +^C + dtrace.ko`dtrace_dof_create+0x35 + dtrace.ko`dtrace_ioctl+0x827 + kernel`devfs_ioctl+0xd1 + kernel`VOP_IOCTL_APV+0x2a + kernel`vn_ioctl+0xb6 + kernel`devfs_ioctl_f+0x1e + kernel`kern_ioctl+0x286 + kernel`sys_ioctl+0x12f + kernel`amd64_syscall+0x169 + kernel`0xffffffff81092b0b + 2 +.Ed +.Ss Example 7 : Summarizing vmem_alloc()'s by Arena Name and Size Distribution +.Bd -literal -offset 2n +# dtrace -q -n 'fbt::vmem_alloc:entry { @[args[0]->vm_name] = quantize(arg1); }' +^C + + kernel arena dom + value ------------- Distribution ------------- count + 2048 | 0 + 4096 |@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4 + 8192 |@@@@@@@@@@@@@ 2 + 16384 | 0 +.Ed +.Ss Example 8 : Measuring Total Time Spent Executing a Function +This DTrace script measures the total time spent in +.Fn vm_page* +kernel functions. +The +.Fn quantize +aggregation organizes the measurements into power-of-two buckets, +providing a time distribution in nanoseconds for each function. +.Bd -literal -offset 2n +fbt::vm_page*:entry { + self->start = timestamp; +} + +fbt::vm_page*:return /self->start/ { + @[probefunc] = quantize(timestamp - self->start); + self->start = 0; +} +.Ed +.Sh SEE ALSO +.Xr dtrace 1 , +.Xr dtrace_kinst 4 , +.Xr tracing 7 +.Rs +.%A Brendan Gregg +.%A Jim Mauro +.%B DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X and FreeBSD +.%I Prentice Hall +.%P pp. 898\(en903 +.%D 2011 +.%U https://www.brendangregg.com/dtracebook/ +.Re +.Rs +.%B The illumos Dynamic Tracing Guide +.%O Chapter fbt Provider +.%D 2008 +.%U https://illumos.org/books/dtrace/chp-fbt.html#chp-fbt +.Re +.Sh AUTHORS +This manual page was written by +.An Mateusz Piotrowski Aq Mt 0mp@FreeBSD.org . +.Sh CAVEATS +.Ss Stability and Portability +.Nm fbt +probes are by definition tightly coupled to kernel code; if the code underlying +a script changes, the script may fail to run or may produce incorrect results. +Scripts written for one version of +.Fx +might not work on others, +and almost certainly will not work on other operating systems. +.Pp +Individual +.Nm fbt +probes often do not correspond nicely to logical system events. +For example, consider a DTrace script which prints the destination +address of every IP packet as the kernel hands them over +to the network card driver (NIC). +An +.Nm fbt Ns -based +implementation of such a script is a discouragingly difficult task: +it involves instrumenting at least four different functions in different parts +of the IPv4 and IPv6 code. +At the same time, with the +.Xr dtrace_ip 4 +provider the script is a simple one-liner: +.Dl dtrace -n 'ip:::send {printf("%s", args[2]->ip_daddr);}' +.Pp +Make sure to review available +.Xr dtrace 1 +providers first +before implementing a custom script with the +.Nm fbt +provider. +If none of the DTrace providers offer the desired probes, +consider adding new statically-defined tracing probes +.Pq Xr SDT 9 . +.Ss Frame Pointer +Inline functions are not instrumentable by +.Nm fbt +as they lack a frame pointer. +A developer might explicitly disable inlining by adding the +.Ql __noinline +attribute to a function definition, +but of course this requires a recompilation of the kernel. +Building the kernel with +.Fl fno-omit-frame-pointer +is another way of preserving frame pointers. +Note, that sometimes compilers will omit the frame pointer in leaf functions, +even when configured with +.Fl fno-omit-frame-pointer . +.Pp +Function returns via a tail call are also not instrumentable by +.Nm fbt . +As a result, +a function might have an entry probe +and a mix of instrumented and uninstrumentable returns. +.Pp +Use +.Xr dtrace_kinst 4 +to trace arbitrary instructions inside kernel functions +and work around some of the +limitations +of +.Nm fbt . +.Ss Tracing DTrace +The +.Nm fbt +provider cannot attach to functions inside DTrace provider kernel modules. diff --git a/share/man/man4/dtrace_kinst.4 b/share/man/man4/dtrace_kinst.4 index 9debbc1bd106..c2187689749b 100644 --- a/share/man/man4/dtrace_kinst.4 +++ b/share/man/man4/dtrace_kinst.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 27, 2023 +.Dd July 16, 2025 .Dt DTRACE_KINST 4 .Os .Sh NAME @@ -43,10 +43,13 @@ creates probes on-demand, meaning it searches for and parses the function's instructions each time .Xr dtrace 1 is run, and not at module load time. -This is in contrast to FBT's load-time parsing, since +This is in contrast to +.Xr dtrace_fbt 4 Ap s +load-time parsing, since .Nm kinst can potentially create thousands of probes for just a single function, instead -of up to two (entry and return) in the case of FBT. +of up to two (entry and return) in the case of +.Xr dtrace_fbt 4 . A result of this is that .Cm dtrace -l -P kinst will not match any probes. @@ -79,7 +82,8 @@ Trace all instructions in # dtrace -n 'kinst::amd64_syscall:' .Ed .Sh SEE ALSO -.Xr dtrace 1 +.Xr dtrace 1 , +.Xr dtrace_fbt 4 .Sh HISTORY The .Nm kinst diff --git a/share/man/man4/dtrace_profile.4 b/share/man/man4/dtrace_profile.4 new file mode 100644 index 000000000000..07f86663d60a --- /dev/null +++ b/share/man/man4/dtrace_profile.4 @@ -0,0 +1,129 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 Mateusz Piotrowski <0mp@FreeBSD.org> +.\" +.Dd July 14, 2025 +.Dt DTRACE_PROFILE 4 +.Os +.Sh NAME +.Nm dtrace_profile +.Nd a DTrace provider for firing probes at a given time interval +.Sh SYNOPSIS +.Nm profile Ns Cm :::profile- Ns Ar rate Ns Op Ar unit +.Nm profile Ns Cm :::tick- Ns Ar rate Ns Op Ar unit +.Sh DESCRIPTION +The +.Nm profile +provider implements three special probes related to the life cycle of the +DTrace program itself. +.Ss Probes +The +.Nm profile Ns Cm :::profile +probes fire on all CPUs and are suitable for measuring the whole system +periodically. +.Pp +The +.Nm profile Ns Cm :::tick +probes fire on a single CPU, potentially a different one every time. +They are useful, e.g., for printing partial results periodically. +.Ss Rate and Time Units +The +.Nm profile +provider probes will fire at the specified +.Ar rate . +.Pp +The default unit is +.Cm hz . +The +.Nm profile +provider supports the following time units: +.Bl -column -offset indent "ns, nsec" "Definition" +.It Sy Time Unit Ta Sy Definition +.It Cm ns , nsec Ta nanoseconds +.It Cm us , usec Ta microseconds +.It Cm ms , msec Ta milliseconds +.It Cm s , sec Ta seconds +.It Cm m , min Ta minutes +.It Cm h , hour Ta hours +.It Cm d , day Ta days +.It Cm hz Ta Hertz (frequency per second) +.El +.Ss Probe Arguments +The arguments of the +.Nm profile +provider probes +are: +.Bl -tag -width arg0 +.It Va arg0 +The PC (program counter) in the kernel when the probe triggered, +or 0 if the process was not in the kernel at that time. +.It Va arg1 +The PC in the user process when the probe triggered, +or 0 if the process was in the kernel when the probe triggered. +.El +.Pp +Use arguments +.Va arg0 +and +.Va arg1 +to tell if the +.Nm profile +provider probe fired in the kernel or in the userspace context. +.Sh IMPLEMENTATION NOTES +The +.Xr sysctl 8 +variable +.Va kern.dtrace.profile.aframes +controls the number of skipped artificial frames for +the +.Nm profile +provider. +.Sh EXAMPLES +.Ss Example 1 : Profiling On-CPU Kernel Stack Traces +The following DTrace one-liner uses the +.Nm profile +provider to collect stack traces over 60 seconds. +.\" XXX: Keep on one line for easier copy-pasting. +.Bd -literal -offset indent +dtrace -x stackframes=100 -n 'profile-197 /arg0/ {@[stack()] = count();} tick-60s {exit(0);} +.Ed +.Pp +The system is profiled at the 197 Hz to avoid sampling in lockstep +with other periodic activities. +This unnatural frequency minimizes the chance of overlapping with other events. +.Pp +Option +.Fl x Cm stackframes=100 +increases the maximum number of kernel stack frames to unwind during +.Fn stack . +.Pp +Checking if +.Ar arg0 +is not zero makes sure that profiling happens +when the program is in the kernel context. +.Pp +Refer to +.Lk https://www.brendangregg.com/flamegraphs.html +to learn about generating flame graphs from the obtained stack traces. +.Sh SEE ALSO +.Xr dtrace 1 , +.Xr tracing 7 +.Rs +.%B The illumos Dynamic Tracing Guide +.%O Chapter profile Provider +.%D 2008 +.%U https://www.illumos.org/books/dtrace/chp-profile.html +.Re +.Rs +.%A Brendan Gregg +.%A Jim Mauro +.%B DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X and FreeBSD +.%I Prentice Hall +.%P pp. 24\(en25 +.%D 2011 +.%U https://www.brendangregg.com/dtracebook/ +.Re +.Sh AUTHORS +This manual page was written by +.An Mateusz Piotrowski Aq Mt 0mp@FreeBSD.org . diff --git a/share/man/man4/dummymbuf.4 b/share/man/man4/dummymbuf.4 new file mode 100644 index 000000000000..08926d2824c6 --- /dev/null +++ b/share/man/man4/dummymbuf.4 @@ -0,0 +1,211 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 Igor Ostapenko <pm@igoro.pro> +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" Note: The date here should be updated whenever a non-trivial +.\" change is made to the manual page. +.Dd January 6, 2025 +.Dt DUMMYMBUF 4 +.Os +.Sh NAME +.Nm dummymbuf +.Nd "mbuf alteration pfil hooks" +.Sh SYNOPSIS +To compile the driver into the kernel, +place the following line in the +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device dummymbuf" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +dummymbuf_load="YES" +.Ed +.Sh DESCRIPTION +This module is intended to test networking code in the face of unusual mbuf +layouts. +The special +.Xr pfil 9 +hooks are provided for mbuf alteration and can be listed with +.Xr pfilctl 8 +as follows: +.Bd -literal -offset indent + Hook Type + dummymbuf:ethernet Ethernet + dummymbuf:inet6 IPv6 + dummymbuf:inet IPv4 +.Ed +.Pp +To activate a hook it must be linked to the respective +.Xr pfil 9 +head. +.Xr pfilctl 8 +can be used for the linking. +.Pp +Each time a hook is invoked it reads a single shared set of +.Sx RULES +from +.Va net.dummymbuf.rules +sysctl. +The rules are evaluated sequentially and each matching rule performs the +specified operation over the mbuf. +.Pp +After every successfully applied operation the +.Va net.dummymbuf.hits +sysctl counter is increased. +.Pp +A hook returns an altered mbuf for further processing, but it drops a packet +if rules parsing or an operation fails. +Also, the first mbuf of the original chain may be changed. +.Pp +The module is +.Xr VNET 9 +based, hence every +.Xr jail 2 +provides its own set of hooks and sysctl variables. +.Sh RULES +The set of rules is a semicolon separated list. +An empty string is treated as a parsing failure. +A rule conceptually has two parts, filter and operation, with the following +syntax: +.Bd -literal -offset indent +{inet | inet6 | ethernet} {in | out} <ifname> <opname>[ <opargs>]; +.Ed +.Ss Filter +The first word of a rule matches +.Xr pfil 9 +type. +The second matches packet's direction, and the third matches the network +interface a packet is coming from. +.Ss Operation +An operation may have arguments separated from its name by space. +The available operations are: +.Bl -tag -width indent +.It pull-head <number-of-bytes> +Unconditionally creates a brand new cluster-based mbuf and links it to be the +first mbuf of the original mbuf chain, with respective packet header moving. +After, the given number of bytes are pulled from the original mbuf chain. +.Pp +If it is asked to pull 0 bytes then the first mbuf of the resulting chain will +be left empty. +Asking to pull more than +.Dv MCLBYTES +is treated as an operation failure. +If a mbuf chain has less data than asked then the entire packet is pulled with +tail mbuf(s) left empty. +.Pp +As a result, only the layout of a mbuf chain is altered, its content logically +is left intact. +.It enlarge <number-of-bytes> +Unconditionally replace the mbuf with an mbuf of the specified size. +.El +.Sh SYSCTL VARIABLES +The following variables are available: +.Bl -tag -width indent +.It Va net.dummymbuf.rules +A string representing a single set of +.Sx RULES +shared among all +.Nm +hooks. +.It Va net.dummymbuf.hits +Number of times a rule has been applied. +It is reset to zero upon writing. +.El +.Sh EXAMPLES +As it was intended, +.Nm +can be found useful for firewall testing. +A mbuf chain could be altered before it hits a firewall to test that the latter +can handle a case respectively. +Thus, it is important to have correct sequence of hooks. +A test case should prepare and enable a firewall first to get its hooks linked. +After, the +.Xr pfilctl 8 +should be used to link +.Nm +hook(s) to put them in front of a firewall. +.Pp +The following links +.Va dummymbuf:inet6 +hook for inbound and puts it in front of other hooks: +.Bd -literal -offset indent +pfilctl link -i dummymbuf:inet6 inet6 +.Ed +.Pp +And this does the same for outbound: +.Bd -literal -offset indent +pfilctl link -o -a dummymbuf:inet6 inet6 +.Ed +.Pp +For instance, we want to test a scenario in which the very first mbuf in a +chain has zero m_len, to verify that a firewall can correctly read the +packet data despite that. +The following set of rules does it for inbound and outbound: +.Bd -literal -offset indent +sysctl net.dummymbuf.rules="inet6 in em0 pull-head 0; inet6 out em0 pull-head 0;" +.Ed +.Pp +It is encouraged to verify +.Va net.dummymbuf.hits +sysctl counter along with other test assertions to make sure that +.Nm +really does its work and there is no false positive due to misconfiguration. +It is a good idea to reset it before the action: +.Bd -literal -offset indent +sysctl net.dummymbuf.hits=0 +.Ed +.Pp +It is equally important to cleanup the things after the test case: +.Bd -literal -offset indent +pfilctl unlink -i dummymbuf:inet6 inet6 +pfilctl unlink -o dummymbuf:inet6 inet6 +sysctl net.dummymbuf.rules="" +.Ed +.Pp +If a test case operates within a temporary vnet then explicit cleanup can be +omitted, the +.Nm +facilities will vanish along with its vnet instance. +.Sh DIAGNOSTICS +.Bl -diag +.It "dummymbuf: <filter match>: rule parsing failed: <the rule in question>" +If everything looks fine then extra spaces removal may help due to the parser +is kept very simple. +.It "dummymbuf: <filter match>: mbuf operation failed: <the rule in question>" +Incorrect operation argument has been found, mbuf allocation has failed, etc. +.El +.Sh SEE ALSO +.Xr jail 2 , +.Xr pfilctl 8 , +.Xr mbuf 9 , +.Xr pfil 9 , +.Xr VNET 9 +.Sh AUTHORS +The module and this manual page were written by +.An Igor Ostapenko Aq Mt pm@igoro.pro . diff --git a/share/man/man4/dummynet.4 b/share/man/man4/dummynet.4 index 81b1b33efb6e..ad82cb80011d 100644 --- a/share/man/man4/dummynet.4 +++ b/share/man/man4/dummynet.4 @@ -59,9 +59,9 @@ pipes. .Xr setsockopt 2 , .Xr if_bridge 4 , .Xr ip 4 , -.Xr ipfw 8 , -.Xr dnctl 8 , .Xr pf.conf 5 , +.Xr dnctl 8 , +.Xr ipfw 8 , .Xr sysctl 8 .Sh HISTORY The diff --git a/share/man/man4/e6000sw.4 b/share/man/man4/e6000sw.4 new file mode 100644 index 000000000000..92a3b5c8ed0b --- /dev/null +++ b/share/man/man4/e6000sw.4 @@ -0,0 +1,46 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt E6000SW 4 +.Sh NAME +.Nm e6000sw +.Nd Marvell 88E6000 series Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd e6000sw +.Sh DESCRIPTION +The +.Nm +driver supports Marvell Gigabit Ethernet switch controllers. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6190X +.It +Marvell 88E6190 +.It +Marvell 88E6176 +.It +Marvell 88E6172 +.It +Marvell 88E6341 +.It +Marvell 88E6141 +.El +.Sh SEE ALSO +.Xr e6060sw 4 , +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 11.0 . diff --git a/share/man/man4/e6060sw.4 b/share/man/man4/e6060sw.4 index 407138abe378..74736f65fe80 100644 --- a/share/man/man4/e6060sw.4 +++ b/share/man/man4/e6060sw.4 @@ -23,12 +23,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 5, 2017 +.Dd May 10, 2025 .Dt E6060SW 4 .Os .Sh NAME .Nm e6060sw -.Nd driver for Marvell 88E6060 and 88E6065 fast ethernet switch chip +.Nd Marvell 88E6060/88E6063/88E6065 Fast Ethernet switch driver .Sh SYNOPSIS .Cd "device mdio" .Cd "device etherswitch" @@ -44,6 +44,19 @@ This driver use smi interface by ethernet interface. 88E6060 support is only port vlan. 88E6065 support is port and dot1q vlan. dot1q support group base tag/untag. +.Sh HARDWARE +The +.Nm +driver supports the following Fast Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Marvell 88E6060 +.It +Marvell 88E6063 +.It +Marvell 88E6065 +.El .Sh EXAMPLES Configure dot1q vlan on 88E6065 by etherswitchcfg command. .Pp diff --git a/share/man/man4/efidev.4 b/share/man/man4/efidev.4 index 684a93340d7f..defae1f31bea 100644 --- a/share/man/man4/efidev.4 +++ b/share/man/man4/efidev.4 @@ -34,7 +34,7 @@ .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: -.Bd -ragged -offset -indent +.Bd -ragged -offset indent .Cd "options EFIRT" .Ed .Pp diff --git a/share/man/man4/ena.4 b/share/man/man4/ena.4 index 50a180871627..cb5b9367da43 100644 --- a/share/man/man4/ena.4 +++ b/share/man/man4/ena.4 @@ -1,6 +1,6 @@ .\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" Copyright (c) 2015-2023 Amazon.com, Inc. or its affiliates. +.\" Copyright (c) 2015-2024 Amazon.com, Inc. or its affiliates. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -27,12 +27,12 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE .\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd June 4, 2021 +.Dd November 14, 2024 .Dt ENA 4 .Os .Sh NAME .Nm ena -.Nd "FreeBSD kernel driver for Elastic Network Adapter (ENA) family" +.Nd AWS EC2 Elastic Network Adapter (ENA) driver .Sh SYNOPSIS To compile this driver into the kernel, place the following line in the @@ -93,7 +93,9 @@ framework is provided by the driver. Kernel must be built with the DEV_NETMAP option to be able to use this feature. .Sh HARDWARE -Supported PCI vendor ID/device IDs: +The +.Nm +driver supports the following PCI vendor ID/device IDs: .Pp .Bl -bullet -compact .It @@ -133,17 +135,17 @@ This can further lead to OS instability, together with ENA driver reset and NVMe timeouts. If network performance is critical and memory capacity is sufficient, the 9k mbufs can be used. -.It Va hw.ena.force_large_llq_headers -Force the driver to use large LLQ headers (224 bytes). -The default is 0. +.It Va hw.ena.force_large_llq_header +Force the driver to use large (224 bytes) or regular (96 bytes) LLQ header size. +The default value is 2 and the recommended LLQ header size will be used. If the node value is set to 0, the regular size LLQ header will be used, which is 96B. In some cases, the packet header can be bigger than this (for example - IPv6 with multiple extensions). -In such a situation, the large LLQ headers should be used by setting this node -value to 1. -This will take effect only if the device supports both LLQ and large LLQ -headers. +In such a situation, the large LLQ header size which is 224B should be used, +and can be forced by setting this node value to 1. +Using large LLQ header size will take effect only if the device supports +both LLQ and large LLQ headers. Otherwise, it will fallback to the no LLQ mode or regular header size. .Pp Increasing LLQ header size reduces the size of the Tx queue by half, so it may diff --git a/share/man/man4/enc.4 b/share/man/man4/enc.4 index 87ff46878266..86f14d2bf290 100644 --- a/share/man/man4/enc.4 +++ b/share/man/man4/enc.4 @@ -126,7 +126,7 @@ The special value 0x4 can be configured in the .Ar ipsec_bpf_mask and packets will be also captured after firewall processing. .Sh EXAMPLES -To see the packets the processed via +To see the packets processed via .Xr ipsec 4 , adjust the .Xr sysctl 8 diff --git a/share/man/man4/enic.4 b/share/man/man4/enic.4 index 257a95fa9d32..1783b05dfa12 100644 --- a/share/man/man4/enic.4 +++ b/share/man/man4/enic.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd Sept 7, 2022 +.Dd September 7, 2022 .Dt ENIC 4 .Os .Sh NAME diff --git a/share/man/man4/etherswitch.4 b/share/man/man4/etherswitch.4 index aeb5e484e7cf..ba8e32c00750 100644 --- a/share/man/man4/etherswitch.4 +++ b/share/man/man4/etherswitch.4 @@ -48,14 +48,13 @@ driver provides a framework for Ethernet switch devices. device nodes .El .Sh SEE ALSO +.Xr adm6996fc 4 , +.Xr ar40xx 4 , .Xr arswitch 4 , -.Xr iicbus 4 , -.Xr ip17x 4 , -.Xr rtl8366rb 4 , +.Xr e6000sw 4 , .Xr e6060sw 4 , -.Xr adm6996fc 4 , +.Xr iicbus 4 , .Xr ksz8995ma 4 , -.Xr ukswitch 4 , .Xr etherswitchcfg 8 .Sh HISTORY The diff --git a/share/man/man4/ext2fs.4 b/share/man/man4/ext2fs.4 new file mode 100644 index 000000000000..816ea942d29f --- /dev/null +++ b/share/man/man4/ext2fs.4 @@ -0,0 +1,104 @@ +.\" +.\" Copyright (c) 2006 Craig Rodrigues +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 30, 2018 +.Dt EXT2FS 4 +.Os +.Sh NAME +.Nm ext2fs +.Nd "ext2/ext3/ext4 file system" +.Sh SYNOPSIS +To link into the kernel: +.Bd -ragged -offset indent +.Cd "options EXT2FS" +.Ed +.Pp +To load as a kernel loadable module: +.Pp +.Dl "kldload ext2fs" +.Sh DESCRIPTION +The +.Nm +driver will permit the +.Fx +kernel to access +ext2 +file systems and its derivatives. +It currently implements most of the features required by +.Em ext3 +and +.Em ext4 +file systems. +Support for Extended Attributes in +.Em ext4 +is experimental. +Journalling and encryption are currently not supported. +.Sh EXAMPLES +To mount a +.Nm +volume located on +.Pa /dev/ada1s1 : +.Pp +.Dl "mount -t ext2fs /dev/ada1s1 /mnt" +.Sh SEE ALSO +.Xr nmount 2 , +.Xr unmount 2 , +.Xr fstab 5 , +.Xr mount 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 2.2 . +.Sh AUTHORS +.An -nosplit +The +.Nm +kernel implementation is derived from code written, +or modified, +by +.An Godmar Back +using the UFS CSRG sources for CMU Mach. +.Pp +.An John Dyson +did the initial port to +.Fx . +.An Aditya Sarawgi +merged important parts of the allocation code from a clean-room +.Nx +implementation. +.An Zheng Liu +and +.An Fedor Uporov +implemented the read and write support respectively for +.Em ext4 +filesystems. +The +.Fx +community has contributed a huge amount of modifications. +.Pp +The initial version of this manual page was written by +.An Craig Rodrigues Aq Mt rodrigc@FreeBSD.org . diff --git a/share/man/man4/fd.4 b/share/man/man4/fd.4 index f91c0e0501fb..06cc12d25696 100644 --- a/share/man/man4/fd.4 +++ b/share/man/man4/fd.4 @@ -78,11 +78,11 @@ are ignored. By default, .Pa /dev/fd is provided by -.Xr devfs 5 , +.Xr devfs 4 , which provides nodes for the first three file descriptors. Some sites may require nodes for additional file descriptors; these can be made available by mounting -.Xr fdescfs 5 +.Xr fdescfs 4 on .Pa /dev/fd . .Sh FILES @@ -93,6 +93,6 @@ on .It Pa /dev/stderr .El .Sh SEE ALSO -.Xr tty 4 , -.Xr devfs 5 , -.Xr fdescfs 5 +.Xr devfs 4 , +.Xr fdescfs 4 , +.Xr tty 4 diff --git a/share/man/man4/fdescfs.4 b/share/man/man4/fdescfs.4 new file mode 100644 index 000000000000..f8bf413fc274 --- /dev/null +++ b/share/man/man4/fdescfs.4 @@ -0,0 +1,218 @@ +.\" Copyright (c) 2021 The FreeBSD Foundation +.\" +.\" Copyright (c) 1996 +.\" Mike Pritchard <mpp@FreeBSD.org>. All rights reserved. +.\" +.\" Copyright (c) 1992, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. +.\" All rights reserved. +.\" +.\" This code is derived from software donated to Berkeley by +.\" Jan-Simon Pendry. +.\" +.\" Parts of this documentation was written by +.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd Jul 11, 2023 +.Dt FDESCFS 4 +.Os +.Sh NAME +.Nm fdescfs +.Nd file-descriptor file system +.Sh SYNOPSIS +.Bd -literal +fdescfs /dev/fd fdescfs rw 0 0 +.Ed +.Sh DESCRIPTION +The file-descriptor file system, or +.Nm , +provides access to the per-process file descriptor +namespace in the global file system namespace. +The conventional mount point is +.Pa /dev/fd . +.Pp +The file system's contents +appear as a list of numbered files +which correspond to the open files of the process reading the +directory. +The files +.Pa /dev/fd/0 +through +.Pa /dev/fd/# +refer to file descriptors which can be accessed through the file +system. +.Pp +The following mount options can be used when mounting +.Nm +filesystem: +.Bl -tag -width linrdlnk +.It Cm nodup +For file descriptors referencing vnodes, instead of the +.Xr dup 2 +semantic described above, implement re-opening of the referenced vnode. +See below for more details. +.It Cm linrdlnk +Report the type of the +.Nm +vnode as +.Dv VLNK +instead of +.Fx +traditional +.Dv VCHR . +For +.Xr linux 4 +ABI compatibility mount +.Nm +volume with the +.Cm linrdlnk +option. +.It Cm rdlnk +Treat +.Nm +vnodes as symbolic links consistently, in particular, follow +the resolved name for the name lookups. +This option is strictly stronger than the +.Cm linrdlnk +option, it changes not only the type returned by +.Xr stat 2 , +but also causes the +.Nm +files to behave as symlinks. +.El +.Pp +For +.Nm +mounted without the +.Cm nodup +mount option, +if the file descriptor is open and the mode the file is being opened +with is a subset of the mode of the existing descriptor, the call: +.Bd -literal -offset indent +fd = open("/dev/fd/0", mode); +.Ed +.Pp +and the call: +.Bd -literal -offset indent +fd = fcntl(0, F_DUPFD, 0); +.Ed +.Pp +are equivalent. +Flags to the +.Xr open 2 +call other than +.Dv O_RDONLY , +.Dv O_WRONLY +and +.Dv O_RDWR +are ignored. +.Pp +For +.Nm +mounted with the +.Cm nodup +option, and file descriptor referencing a vnode, the call: +.Bd -literal -offset indent +fd = open("/dev/fd/0", mode); +.Ed +.Pp +reopens the referenced vnode with the specified +.Fa mode . +In other words, the +.Fn open +call above is equivalent to +.Bd -literal -offset indent +fd = openat(0, "", O_EMPTY_PATH, mode); +.Ed +.Pp +In particular, if the file descriptor was opened with the +.Dv O_PATH +flag, then either +.Dv O_EMPTY_PATH +or +.Fn open +over +.Nm +mount with +.Cm nodup +option allows one to convert it to a regularly opened file, +assuming that the current permissions allow the requested +.Fa mode . +.Pp +.Em "Note:" +.Pa /dev/fd/0 , +.Pa /dev/fd/1 +and +.Pa /dev/fd/2 +files are created by default when devfs alone is mounted. +.Nm +creates entries for all file descriptors opened by the process. +.Sh FILES +.Bl -tag -width /dev/stderr -compact +.It Pa /dev/fd/# +.El +.Sh EXAMPLES +To mount a +.Nm +volume located on +.Pa /dev/fd : +.Pp +.Dl "mount -t fdescfs none /dev/fd" +.Pp +For +.Xr linux 4 +ABI compatibility: +.Pp +.Dl "mount -t fdescfs -o linrdlnk none /compat/linux/dev/fd" +.Pp +For substitute of +.Dv O_EMPTY_PATH +flag use: +.Pp +.Dl "mount -t fdescfs -o nodup none /dev/fdpath" +.Sh SEE ALSO +.Xr devfs 4 , +.Xr mount 8 +.Sh HISTORY +The +.Nm +file system first appeared in +.Bx 4.4 . +The +.Nm +manual page first appeared in +.Fx 2.2 . +.Sh AUTHORS +.An -nosplit +The +.Nm +manual page was written by +.An Mike Pritchard Aq Mt mpp@FreeBSD.org , +and was based on the +manual page written by +.An Jan-Simon Pendry . diff --git a/share/man/man4/ffs.4 b/share/man/man4/ffs.4 new file mode 100644 index 000000000000..5f8787d6fefc --- /dev/null +++ b/share/man/man4/ffs.4 @@ -0,0 +1,332 @@ +.\" Copyright (c) 2001 Networks Associates Technology, Inc. +.\" All rights reserved. +.\" +.\" This software was developed for the FreeBSD Project by Chris +.\" Costello at Safeport Network Services and NAI Labs, the Security +.\" Research Division of Network Associates, Inc. under DARPA/SPAWAR +.\" contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS +.\" research program. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd January 19, 2025 +.Dt FFS 4 +.Os +.Sh NAME +.Nm ffs +.Nd Berkeley fast file system +.Sh SYNOPSIS +In the kernel configuration file: +.Cd "options FFS" +.Cd "options QUOTA" +.Cd "options SOFTUPDATES" +.Cd "options SUIDDIR" +.Cd "options UFS_ACL" +.Cd "options UFS_DIRHASH" +.Cd "options UFS_EXTATTR" +.Cd "options UFS_EXTATTR_AUTOSTART" +.Cd "options UFS_GJOURNAL" +.Pp +In +.Xr fstab 5 : +.Bd -literal -compact +/dev/disk0a /mnt ufs rw 1 1 +.Ed +.Sh DESCRIPTION +The Berkeley fast file system +provides facilities to store file system data onto a disk device. +.Nm +has been optimized over the years +for speed and reliability +and is the default +.Fx +file system. +.Ss Quotas +.Bl -tag -width 2n +.It Cd "options QUOTA" +This option allows system administrators +to set limits on disk usage +on a per-user basis. +Quotas can be used only on file systems +mounted with the +.Cm quota +option; +see +.Xr quota 1 +and +.Xr edquota 8 . +.El +.Ss Soft Updates +.Bl -tag -width 2n +.It Cd "options SOFTUPDATES" +The soft updates feature tracks writes to the disk +and enforces metadata update dependencies +(e.g., updating free block maps) +to ensure that the file system remains consistent. +.Pp +To create a new file system with the soft updates +enabled, +use +.Xr newfs 8 +command: +.Pp +.D1 Nm newfs Fl U Ar fs +.Pp +.Ar fs +can be either a mount point listed in +.Xr fstab 5 +.Pq e.g. , Pa /usr , +or a disk device +.Pq e.g., Pa /dev/da0a . +.Pp +It is possible to enable soft updates on an +.Em unmounted +file system by using +.Xr tunefs 8 +command: +.Pp +.D1 Nm tunefs Fl n Cm enable Ar fs +.Pp +Soft updates can also add journaling that reduces the time spent by +.Xr fsck_ffs 8 +cleaning up a filesystem after a crash from several minutes to a few seconds. +The journal is placed in an inode named +.Pa .sujournal , +and is kept as a circular log of segments containing +records that describe metadata operations. +.Pp +To create a new file system with both the soft updates +and soft updates journaling enabled, +use the following command: +.Pp +.D1 Nm newfs Fl j Ar fs +.Pp +This runs +.Xr tunefs 8 +command after +.Xr newfs 8 +command with +.Fl U +flag enabled. +It is possible to enable soft updates journaling on an +.Em unmounted +file system by using +.Xr tunefs 8 +command: +.Pp +.D1 Nm tunefs Fl j Cm enable Ar fs +.Pp +This flag automatically enables the soft updates feature +when it is not enabled. +Note that this +.Xr tunefs 8 +command will fail if a file +.Pa .sujournal +already exists before enabling the soft updates journaling. +.El +.Ss File Ownership Inheritance +.Bl -tag -width 2n +.It Cd "options SUIDDIR" +For use in file sharing environments +on networks including +.Tn "Microsoft Windows" +and +.Tn "Apple Macintosh" +computers, +this option allows files on file systems +mounted with the +.Cm suiddir +option +to inherit the ownership of its directory, +i.e., +.Dq "if it's my directory, it must be my file." +.El +.Ss Access Control Lists +.Bl -tag -width 2n +.It Cd "options UFS_ACL" +Access control lists allow the association of +fine-grained discretionary access control information +with files and directories. +This option requires the presence of the +.Dv UFS_EXTATTR +option, and it is recommended that +.Dv UFS_EXTATTR_AUTOSTART +is included as well, +so that ACLs are enabled atomically upon mounting the file system. +.El +.Pp +In order to enable support for ACLs, +two extended attributes must be available in the +.Dv EXTATTR_NAMESPACE_SYSTEM +namespace: +.Pa posix1e.acl_access , +which holds the access ACL, +and +.Pa posix1e.acl_default , +which holds the default ACL for directories. +If you are using file system extended attributes, +the following commands may be used to +allocate space for and create the necessary EA backing files +for ACLs in the root of each file system. +In these examples, the root file system is used; +see +.Sx "Extended Attributes" +for more details. +.Bd -literal -offset indent +mkdir -p /.attribute/system +cd /.attribute/system +extattrctl initattr -p / 388 posix1e.acl_access +extattrctl initattr -p / 388 posix1e.acl_default +.Ed +.Pp +On the next mount of the root file system, +the attributes will be automatically started if +.Dv UFS_EXTATTR_AUTOSTART +is included in the kernel configuration, +and ACLs will be enabled. +.Ss Directory Hashing +.Bl -tag -width 2n +.It Cd "options UFS_DIRHASH" +Implements a hash-based lookup scheme for directories +in order to speed up accesses to very large directories. +.El +.Ss Extended Attributes +.Bl -tag -width 2n +.It Cd "options UFS_EXTATTR" +Extended attributes allow the association of +additional arbitrary metadata with files and directories, +which can be assigned and retrieved from userland +as well as from within the kernel; see +.Xr extattrctl 8 . +.It Cd "options UFS_EXTATTR_AUTOSTART" +If this option is defined, +.Nm +will search for a +.Pa .attribute +subdirectory of the file system root during the mount operation. +If found, extended attribute support will be +automatically started for that file system. +.El +.Ss GEOM-based Journaling +.Bl -tag -width 2n +.It Cd "options UFS_GJOURNAL" +Implements a block level journaling of a UFS file system, +which is for both data and metadata. +To enable this, +create a +.Xr gjournal 8 +GEOM provider for a block device by using the +following command: +.Pp +.D1 Nm gjournal label Ar da0 +.Pp +In this example, +.Pa /dev/da0 +is used as the target block device, +and +.Pa /dev/da0.journal +is created. +Then create a new file system by using +.Xr newfs 8 +with the block level journaling flag and mount it: +.Pp +.D1 Nm newfs Fl J Ar /dev/da0.journal +.D1 Nm mount Fl o Cm async Ar /dev/da0.journal Ar /mnt +.Pp +.Cm async +option is not mandatory but recommended for better performance +because the journaling guarantees the consistency of an +.Cm async +mount. +.Pp +It is also possible to enable the block level journaling +on an existing file system. +To do so, +use +.Xr gjournal 8 +utility to label the underlying block device and +.Xr tunefs 8 +utility to enable the block level journaling flag: +.Pp +.D1 Nm gjournal label Ar da0 +.D1 Nm tunefs Fl J Cm enable Ar /dev/da0.journal +.D1 Nm mount Fl o Cm async Ar /dev/da0.journal Ar /mnt +.El +.Ss Xr sysctl 8 MIBs +The following +.Xr sysctl 8 +MIBs are defined for use with +.Nm : +.Bl -hang -width ".Va vfs.ffs.doreallocblk" +.It Va vfs.ffs.doasyncfree +Asynchronously write out modified i-node and indirect blocks +upon reallocating file system blocks to be contiguous. +.Pq Default: 1 . +.It Va vfs.ffs.doreallocblks +Enable support for the rearrangement of blocks +to be contiguous. +.Pq Default: 1 . +.It Va vfs.ffs.prttimechgs +Print a console message when timestamps for UFS1 filesystems are found +to be in the future and are changed to be the present time. +.Pq Default: 0 . +.El +.Sh HISTORY +The +.Nm +manual page first appeared in +.Fx 4.5 . +.Sh SEE ALSO +.Xr quota 1 , +.Xr acl 3 , +.Xr extattr 3 , +.Xr edquota 8 , +.Xr extattrctl 8 , +.Xr fsck_ffs 8 , +.Xr sysctl 8 , +.Xr tunefs 8 +.Rs +.%A M. McKusick +.%A W. Joy +.%A S. Leffler +.%A R. Fabry +.%D August 1984 +.%T "A Fast File System for UNIX" +.%J "ACM Transactions on Computer Systems" +.%N 2 +.%V 3 +.%P 181-197 +.Re +.Rs +.%A M. McKusick +.%D June 2000 +.%T "Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem" +.%J "Proceedings of the Freenix Track at the 1999 Usenix Annual Technical Conference" +.%P 71-84 +.Re +.Rs +.%A M. McKusick +.%A J. Roberson +.%D May 2010 +.%T "Journaled Soft-updates" +.%J "BSD Canada Conference 2010 (BSDCan)" +.Re diff --git a/share/man/man4/filemon.4 b/share/man/man4/filemon.4 index 2561e1e89bf5..34cb322dec90 100644 --- a/share/man/man4/filemon.4 +++ b/share/man/man4/filemon.4 @@ -29,13 +29,15 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2023 +.Dd April 19, 2025 .Dt FILEMON 4 .Os .Sh NAME .Nm filemon .Nd the filemon device .Sh SYNOPSIS +.Cd device filemon +.Pp .In dev/filemon/filemon.h .Sh DESCRIPTION The @@ -70,7 +72,7 @@ The next log entry may be lacking an absolute path or be inaccurate. .It Ql D .Xr unlink 2 .It Ql E -.Xr exec 2 +.Xr execve 2 .It Ql F .Xr fork 2 , .Xr vfork 2 diff --git a/share/man/man4/firewire.4 b/share/man/man4/firewire.4 index 8c4b65eb25bb..99aadb308fc3 100644 --- a/share/man/man4/firewire.4 +++ b/share/man/man4/firewire.4 @@ -29,7 +29,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd June 6, 2022 +.Dd January 23, 2025 .Dt FIREWIRE 4 .Os .Sh NAME @@ -49,6 +49,11 @@ module at boot time, place the following line in .Bd -literal -offset indent firewire_load="YES" .Ed +.Sh DEPRECATION NOTICE +The +.Nm +driver is slated to be removed prior to +.Fx 16.0 . .Sh DESCRIPTION .Fx provides machine-independent bus support and raw drivers for diff --git a/share/man/man4/ftgpio.4 b/share/man/man4/ftgpio.4 index e31457673fa5..7a5562841732 100644 --- a/share/man/man4/ftgpio.4 +++ b/share/man/man4/ftgpio.4 @@ -40,8 +40,8 @@ is a driver for the GPIO controller found on Fintek Super I/O chips. .Xr gpio 3 , .Xr gpio 4 , .Xr gpioled 4 , -.Xr gpioctl 8 .Xr superio 4 , +.Xr gpioctl 8 .Sh HISTORY The .Nm diff --git a/share/man/man4/fusefs.4 b/share/man/man4/fusefs.4 new file mode 100644 index 000000000000..33c31f355e09 --- /dev/null +++ b/share/man/man4/fusefs.4 @@ -0,0 +1,136 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2019 The FreeBSD Foundation +.\" +.\" This documentation was written by BFF Storage Systems, LLC under +.\" sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.Dd July 31, 2019 +.Dt FUSEFS 4 +.Os +.Sh NAME +.Nm fusefs +.Nd "File system in USErspace" +.Sh SYNOPSIS +To link into the kernel: +.Bd -ragged -offset indent +.Cd "options FUSEFS" +.Ed +.Pp +To load as a loadable kernel module: +.Pp +.Dl "kldload fusefs" +.Sh DESCRIPTION +The +.Nm +driver implements a file system that is serviced by a userspace program. +.Pp +There are many uses for +.Nm . +Userspace daemons can access libraries or programming languages that cannot run +in kernel-mode, for example. +.Nm +is also useful for developing and debugging file systems, because a crash of +the daemon will not take down the entire operating system. +Finally, the +.Nm +API is portable. +Many daemons can run on multiple operating systems with minimal modifications. +.Sh SYSCTL VARIABLES +The following +.Xr sysctl 8 +variables are available: +.Bl -tag -width indent +.It Va vfs.fusefs.kernelabi_major +Major version of the FUSE kernel ABI supported by this driver. +.It Va vfs.fusefs.kernelabi_minor +Minor version of the FUSE kernel ABI supported by this driver. +.It Va vfs.fusefs.data_cache_mode +Controls how +.Nm +will cache file data for pre-7.23 file systems. +A value of 0 will disable caching entirely. +Every data access will be forwarded to the daemon. +A value of 1 will select write-through caching. +Reads will be cached in the VFS layer as usual. +Writes will be immediately forwarded to the daemon, and also added to the cache. +A value of 2 will select write-back caching. +Reads and writes will both be cached, and writes will occasionally be flushed +to the daemon by the page daemon. +Write-back caching is usually unsafe, especially for FUSE file systems that +require network access. +.Pp +FUSE file systems using protocol 7.23 or later specify their cache behavior +on a per-mountpoint basis, ignoring this sysctl. +.It Va vfs.fusefs.stats.filehandle_count +Current number of open FUSE file handles. +.It Va vfs.fusefs.stats.lookup_cache_hits +Total number of lookup cache hits. +.It Va vfs.fusefs.stats.lookup_cache_misses +Total number of lookup cache misses. +.It Va vfs.fusefs.stats.node_count +Current number of allocated FUSE vnodes. +.It Va vfs.fusefs.stats.ticket_count +Current number of allocated FUSE tickets, which is roughly equal to the number +of FUSE operations currently being processed by daemons. +.\" Undocumented sysctls +.\" ==================== +.\" vfs.fusefs.enforce_dev_perms: I don't understand it well enough. +.\" vfs.fusefs.iov_credit: I don't understand it well enough +.\" vfs.fusefs.iov_permanent_bufsize: I don't understand it well enough +.El +.Sh SEE ALSO +.Xr mount_fusefs 8 +.Sh HISTORY +The +.Nm fuse +driver was written as the part of the +.Fx +implementation of the FUSE userspace file system framework (see +.Lk https://github.com/libfuse/libfuse ) +and first appeared in the +.Pa sysutils/fusefs-kmod +port, supporting +.Fx 6.0 . +It was added to the base system in +.Fx 10.0 , +and renamed to +.Nm +for +.Fx 12.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm fuse +driver was originally written by +.An Csaba Henk +as a Google Summer of Code project in 2005. +It was further developed by +.An Ilya Putsikau +during Google Summer of Code 2011, and that version was integrated into the +base system by +.An Attilio Rao Aq Mt attilio@FreeBSD.org . +.Pp +This manual page was written by +.An Alan Somers Aq Mt asomers@FreeBSD.org . diff --git a/share/man/man4/gbde.4 b/share/man/man4/gbde.4 deleted file mode 100644 index 79acfbe81444..000000000000 --- a/share/man/man4/gbde.4 +++ /dev/null @@ -1,302 +0,0 @@ -.\" -.\" Copyright (c) 2002 Poul-Henning Kamp -.\" Copyright (c) 2002 Networks Associates Technology, Inc. -.\" All rights reserved. -.\" -.\" This software was developed for the FreeBSD Project by Poul-Henning Kamp -.\" and NAI Labs, the Security Research Division of Network Associates, Inc. -.\" under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the -.\" DARPA CHATS research program. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd October 19, 2002 -.Dt GBDE 4 -.Os -.Sh NAME -.Nm gbde -.Nd Geom Based Disk Encryption -.Sh SYNOPSIS -.Cd "options GEOM_BDE" -.Sh DESCRIPTION -.Bf -symbolic -NOTICE: -Please be aware that this code has not yet received much review -and analysis by qualified cryptographers and therefore should be considered -a slightly suspect experimental facility. -.Pp -We cannot at this point guarantee that the on-disk format will not change -in response to reviews or bug-fixes, so potential users are advised to -be prepared that -.Xr dump 8 Ns / Ns Xr restore 8 -based migrations may be called for in the future. -.Ef -.Pp -The objective of this facility is to provide a high degree of -denial of access to the contents of a -.Dq cold -storage device. -.Pp -Be aware that if the computer is compromised while up and running -.Em and -the storage device is actively attached and opened with a valid -pass-phrase, this facility offers no protection or denial of access -to the contents of the storage device. -.Pp -If, on the other hand, the device is -.Dq cold , -it should present a formidable -challenge for an attacker to gain access to the contents in the absence of -a valid pass-phrase. -.Pp -Four cryptographic barriers must be passed to gain access to the data, -and only a valid pass-phrase will yield this access. -.Pp -When the pass-phrase is entered, it is hashed with SHA2 into a 512 bit -.Dq key-material . -This is a way of producing cryptographic usable keys from a typically -.No all- Ns Tn ASCII -pass-phrase of an unpredictable user-selected length. -.Ss First barrier: the location of the \&"lock-sector". -During initialization, up to four independent but mutually aware -.Dq lock -sectors are written to the device in randomly chosen -locations. -These lock-sectors contain the 2048 random bit master-key and a number -of parameters of the layout geometry (more on this later). -Since the entire device will contain isotropic data, there is no -short-cut to rapidly determine which sequence of bytes contain a lock-sector. -.Pp -To locate a lock-sector, a small piece of data called the -.Dq metadata -and the key-material must be available. -The key-material decrypts the -metadata, which contains the byte offset on the device where the -corresponding lock-sector is located. -If the metadata is lost or unavailable but the key-material is at -hand, it would be feasible to do a brute force scan where each byte offset -of the device is checked to see if it contains the lock-sector data. -.Ss Second barrier: decryption of the master-key using key-material. -The lock-sector contains an encrypted copy of an architecture neutral -byte-sequence which encodes the fields of the lock-structure. -The order in which these fields are encoded is determined from the key-material. -The encoded byte stream is encrypted with 256bit AES in CBC mode. -.Ss Third barrier: decryption of the sector key. -For each sector, an MD5 hash over a -.Dq salt -from the lock-sector and the sector number is used to -.Dq cherry-pick -a subset of the master key, -which hashed together with the sector offset through MD5 produces the -.Dq kkey , -the key which encrypts the sector key. -.Ss Fourth barrier: decryption of the sector data. -The actual payload of the sector is encrypted with 128 bit AES in CBC mode -using a single-use random bits key. -.Ss Examining the reverse path -Assuming an attacker knows an amount of plaintext and has managed to -locate the corresponding encrypted sectors on the device, gaining access -to the plaintext context of other sectors is a daunting task: -.Pp -First he will have to derive from the encrypted sector and the known plain -text the sector key(s) used. -At the time of writing, it has been speculated that it could maybe be -possible to break open AES in only 2^80 operations; even so, that is still -a very impossible task. -.Pp -Armed with one or more sector keys, our patient attacker will then go -through essentially the same exercise, using the sector key and the -encrypted sector key to find the key used to encrypt the sector key. -.Pp -Armed with one or more of these -.Dq kkeys , -our attacker has to -run them backwards through MD5. -Even though he knows that the input to MD5 was 24 bytes and has the value -of 8 of these bytes from the sector number, he is still faced with 2^128 -equally likely possibilities. -.Pp -Having successfully done that, our attacker has successfully discovered -up to 16 bytes of the master-key, but is still unaware which 16 bytes, -and in which other sectors any of these known bytes contribute to the kkey. -.Pp -To unravel the last bit, the attacker has to guess the 16 byte random-bits -salt stored in the lock-sector to recover the indexes into the masterkey. -.Pp -Any attacker with access to the necessary machine power to even attempt -this attack will be better off attempting to brute-force the pass-phrase. -.Ss Positive denial facilities -Considering the infeasibility of the above attack, -gaining access to the pass-phrase will be of paramount importance for an -attacker, -and a number of scenarios can be imagined where undue pressure will be -applied to an individual to divulge the pass-phrase. -.Pp -A -.Dq Blackening -feature provides a way for the user, given a moment of -opportunity, to destroy the master-key in such a way that the pass-phrase -will be acknowledged as good but access to the data will still be -denied. -.Ss A practical analogy -For persons who think cryptography is only slightly more interesting than -watching silicon sublimate the author humbly offers this analogy to the -keying scheme for a protected device: -.Pp -Imagine an installation with a vault with walls of several hundred meters -thick solid steel. -This vault can only be feasibly accessed using the -single key, which has a complexity comparable to a number with 600 digits. -.Pp -This key exists in four copies, each of which is stored in one of -four small safes, each of which can be opened -with unique key which has a complexity comparable to an 80 digit -number. -.Pp -In addition to the masterkey, each of the four safes also contains -the exact locations of all four key-safes which are located in -randomly chosen places on the outside surface of the vault where they -are practically impossible to detect when they are closed. -.Pp -Finally, each safe contains four switches which are wired to a bar -of dynamite inside each of the four safes. -.Pp -In addition to this, a keyholder after opening his key-safe is -also able to install a copy of the master-key and re-key any of -key-safes (including his own). -.Pp -In normal use, the user will open the safe for which he has the key, -take out the master-key and access the vault. -When done, he will lock up the master-key in the safe again. -.Pp -If a keyholder-X for some reason distrusts keyholder-Y, she -has the option of opening her own safe, flipping one of the switches -and detonating the bar of dynamite in safe-Y. -This will obliterate the master-key in that safe and thereby deny -keyholder-Y access to the vault. -.Pp -Should the facility come under attack, any of the keyholders can detonate -all four bars of dynamite and thereby make sure that access to the -vault is denied to everybody, keyholders and attackers alike. -Should the facility fall to the enemy, and a keyholder be forced to apply -his personal key, he can do so in confidence that the contents of his safe -will not yield access to the vault, and the enemy will hopefully realize -that applying further pressure on the personnel will not give access to -the vault. -.Pp -The final point to make here is that it is perfectly possible to -make a detached copy of any one of these keys, including the master -key, and deposit or hide it as one sees fit. -.Ss Steganography support -When the device is initialized, it is possible to restrict the encrypted -data to a single contiguous area of the device. -If configured with care, this area could masquerade as some sort of -valid data or as random trash left behind by the systems operation. -.Pp -This can be used to offer a plausible deniability of existence, where -it will be impossible to prove that this specific area of the device -is in fact used to store encrypted data and not just random junk. -.Pp -The main obstacle in this is that the output from any encryption algorithm -worth its salt is so totally random looking that it stands out like a sore -thumb amongst practically any other sort of data which contains at least -some kind of structure or identifying byte sequences. -.Pp -Certain file formats like ELF contain multiple distinct sections, and it -would be possible to locate things just right in such a way that a device -contains a partition with a file system with a large executable, -.Pq Dq "a backup copy of my kernel" -where a non-loaded ELF section is laid out -consecutively on the device and thereby could be used to contain a -.Nm -encrypted device. -.Pp -Apart from the ability to instruct -.Nm -which those sectors are, no support is provided for creating such a setup. -.Ss Deployment suggestions -For personal use, it may be wise to make a backup copy of the masterkey -or use one of the four keys as a backup. -Fitting protection of this key is up to yourself, your local circumstances and -your imagination. -.Pp -For company or institutional use, it is strongly advised to make a copy -of the master-key and put it under whatever protection you have at your -means. -If you fail to do this, a disgruntled employee can deny you access to -the data -.Dq "by accident" . -(The employee can still intentionally deny access by applying another -encryption scheme to the data, but that problem has no technical solution.) -.Ss Cryptographic strength -This section lists the specific components which contribute to the cryptographic -strength of -.Nm . -.Pp -The payload is encrypted with AES in CBC mode using a 128 bit random -single-use key -.Pq Dq "the skey" . -AES is well documented. -.Pp -No IV is used in the encryption of the sectors, the assumption being -that since the key is random bits and single-use, an IV adds nothing to the -security of AES. -.Pp -The random key is produced with -.Xr arc4rand 9 -which is believed to do a respectable job at producing unpredictable bytes. -.Pp -The skey is stored on the device in a location which can be derived from -the location of the encrypted payload data. -The stored copy is encrypted with AES in CBC mode using a 128 bit key -.Pq Dq "the kkey" -derived -from a subset of the master key chosen by the output of an MD5 hash -over a 16 byte random bit static salt and the sector offset. -Up to 6.25% of the masterkey (16 bytes out of 2048 bits) will be selected -and hashed through MD5 with the sector offset to generate the kkey. -.Pp -Up to four copies of the master-key and associated geometry information -is stored on the device in static randomly chosen sectors. -The exact location inside the sector is randomly chosen. -The order in which the fields are encoded depends on the key-material. -The encoded byte-stream is encrypted with AES in CBC mode using 256 bit -key-material. -.Pp -The key-material is derived from the user-entered pass-phrase using -512 bit SHA2. -.Pp -No chain is stronger than its weakest link, which usually is poor pass-phrases. -.Sh SEE ALSO -.Xr gbde 8 -.Sh HISTORY -This software was developed for the -.Fx -Project by -.An Poul-Henning Kamp -and NAI Labs, the Security Research Division of Network Associates, Inc.\& -under DARPA/SPAWAR contract N66001-01-C-8035 -.Pq Dq CBOSS , -as part of the -DARPA CHATS research program. -.Sh AUTHORS -.An Poul-Henning Kamp Aq Mt phk@FreeBSD.org diff --git a/share/man/man4/geom.4 b/share/man/man4/geom.4 index c0f3bb23499d..18ecf7e5f852 100644 --- a/share/man/man4/geom.4 +++ b/share/man/man4/geom.4 @@ -32,14 +32,13 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 6, 2023 +.Dd July 8, 2024 .Dt GEOM 4 .Os .Sh NAME .Nm GEOM .Nd "modular disk I/O request transformation framework" .Sh SYNOPSIS -.Cd options GEOM_BDE .Cd options GEOM_CACHE .Cd options GEOM_CONCAT .Cd options GEOM_ELI diff --git a/share/man/man4/gif.4 b/share/man/man4/gif.4 index 959510451011..ad33d5d21e81 100644 --- a/share/man/man4/gif.4 +++ b/share/man/man4/gif.4 @@ -1,6 +1,7 @@ .\" $KAME: gif.4,v 1.28 2001/05/18 13:15:56 itojun Exp $ .\" .\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. +.\" Copyright (C) 2024 Hiroki Sato <hrs@FreeBSD.org> .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -27,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 21, 2018 +.Dd July 14, 2025 .Dt GIF 4 .Os .Sh NAME @@ -67,8 +68,8 @@ variable in .Pp To use .Nm , -the administrator needs to configure the protocol and addresses used for the outer -header. +the administrator needs to configure the protocol and addresses used for +the outer header. This can be done by using .Xr ifconfig 8 .Cm tunnel , @@ -79,8 +80,7 @@ The administrator also needs to configure the protocol and addresses for the inner header, with .Xr ifconfig 8 . Note that IPv6 link-local addresses -(those that start with -.Li fe80:: ) +.Pq those that start with Li fe80\&:\&: will be automatically configured whenever possible. You may need to remove IPv6 link-local addresses manually using .Xr ifconfig 8 , @@ -89,12 +89,139 @@ if you want to disable the use of IPv6 as the inner header Finally, you must modify the routing table to route the packets through the .Nm interface. +.Ss MTU Configuration and Path MTU Discovery +The +.Nm +interface uses the fixed length, +.Li 1280 , +to determine whether the outgoing IPv6 packets are split. +This means the MTU value configured on the interface will be ignored +when the outer protocol is IPv6. +When the +.Dv NOCLAMP +interface flag is set, +.Nm +uses the same configured value as IPv4 communications. +This behavior prevents potential issues when the path MTU is +smaller than the interface MTU. +This section describes the reason why the default behavior is different. +The +.Dv NOCLAMP +interface flag can be set using the following command: +.Pp +.Dl ifconfig Ar gif0 Cm noclamp +.Pp +and clear the flag using the following: +.Pp +.Dl ifconfig Ar gif0 Cm -noclamp +.Pp +where +.Ar gif0 +is the actual interface name. +.Pp +A tunnel interface always has an implicit smaller MTU for the inner protocol +than the outer protocol because of the additional header. +Note that the interface MTU on a +.Nm +interface, +the default value is +.Li 1280 , +is used as MTU for the outer protocol. +This means that the MTU for the inner protocol varies depending on the +outer protocol header length. +If an outgoing packet bigger than the inner protocol MTU arrives at a +.Nm +interface for encapsulation, +it will be split into fragments. +Specifically, +if IPv4 is used as the outer protocol, +the inner is 20 octets smaller than the interface MTU. +In the case of the default interface MTU, +.Li 1280 , +inner packets bigger than +.Li 1260 +will be fragmented. +In the case of IPv6, +the inner is 40 octets smaller than the outer. +.Pp +This fragmentation is not harmful though it can degrade the +performance. +Note that while an increased MTU on +.Nm +interface helps to mitigate this reduced performance issue, +it can also cause packet losses on the intermediate narrowest path +between the two communication endpoints in IPv6. +IPv6 allows fragmentation only on the sender, +not on the routers in the communication path. +A big outgoing packet will be dropped on a router with a smaller MTU. .Pp +In normal IPv6 communication, +an ICMPv6 Packet Too Big error will be sent back to the sender, +who can adjust the packet length and re-send it. +This process is performed in the upper protocols than L3, +such as TCP, +and makes the packet length shorter so that packets go through +the path without fragmentation. +This behavior is known as path MTU discovery. +.Pp +When using a +.Nm +interface, +the Packet Too Big message is generated for the outer protocol. +Since the +.Nm +interface does not translate this error to the inner protocol, +the inner protocol sees it just as a packet loss with no useful +information to adjust the length of the next packets. +In this situation, +path MTU discovery does not work, +and communications of the inner protocol +become stalled. +.Pp +In order to avoid this, +a +.Nm +interface silently splits a packet of over 1240 octets into fragments to make +the outer protocol packets equal or shorter than 1280 octets, +even when the interface MTU is configured as larger than 1280. +Note that this occurs only when the outer protocol is IPv6. +.Li 1280 +is the smallest MTU in IPv6 and guarantees no packet loss occurs +on intermediate routers. +.Pp +As mentioned earlier, +the performance is sub-optimal if the actual path MTU is larger than +.Li 1280 . +A typical confusing scenario is as follows. The .Nm -device can be configured to be ECN friendly. -This can be configured by -.Dv IFF_LINK1 . +interface can have Ethernet, +whose MTU is usually 1500, +as the inner protocol. +It is called an EtherIP tunnel, +and can be configured by adding the +.Nm +interface as a member of +.Xr if_bridge 4 +interface. +The +.Xr if_bridge 4 +interface forcibly changes the MTU of the +.Nm +interface with those for the other member interfaces, +which are likely 1500. +In this case, +a situation in which the MTU of the +.Nm +interface is 1500 but fragmentation in 1280 octets always occurs. +.Pp +The default behavior is most conservative to prevent confusing packet loss. +Depending on the network configuration, +enabling the +.Dv NOCLAMP +interface flag might be helpful for better performance. +It is crucial to ensure that the path MTU is equal to or larger than +the interface MTU when enabling this flag. .Ss ECN friendly behavior The .Nm @@ -169,6 +296,7 @@ variable to the desired level of nesting. .Sh SEE ALSO .Xr gre 4 , +.Xr if_bridge 4 , .Xr inet 4 , .Xr inet6 4 , .Xr ifconfig 8 @@ -199,7 +327,8 @@ There are many tunnelling protocol specifications, all defined differently from each other. The .Nm -device may not interoperate with peers which are based on different specifications, +device may not interoperate with peers which are based on different +specifications, and are picky about outer header fields. For example, you cannot usually use .Nm @@ -219,11 +348,14 @@ to 1240 or smaller, when the outer header is IPv6 and the inner header is IPv4. .Pp The .Nm -device does not translate ICMP messages for the outer header into the inner header. +device does not translate ICMP messages for the outer header into the inner +header. .Pp In the past, .Nm had a multi-destination behavior, configurable via -.Dv IFF_LINK0 +.Dv NOCLAMP flag. The behavior is obsolete and is no longer supported. +This flag is now used to determine whether performing fragmentation when +the outer protocol is IPv6. diff --git a/share/man/man4/gve.4 b/share/man/man4/gve.4 index 54e59b86108b..c5627e929044 100644 --- a/share/man/man4/gve.4 +++ b/share/man/man4/gve.4 @@ -1,6 +1,6 @@ .\" SPDX-License-Identifier: BSD-3-Clause .\" -.\" Copyright (c) 2023 Google LLC +.\" Copyright (c) 2023-2024 Google LLC .\" .\" Redistribution and use in source and binary forms, with or without modification, .\" are permitted provided that the following conditions are met: @@ -26,7 +26,7 @@ .\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS .\" SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd April 26, 2023 +.Dd May 20, 2025 .Dt GVE 4 .Os .Sh NAME @@ -79,6 +79,19 @@ binds to a single PCI device ID presented by gVNIC: .It 0x1AE0:0x0042 .El +.Sh EXAMPLES +.Pp +Change the TX queue count to 4 for the gve0 interface: +.D1 sysctl dev.gve.0.num_tx_queues=4 +.Pp +Change the RX queue count to 4 for the gve0 interface: +.D1 sysctl dev.gve.0.num_rx_queues=4 +.Pp +Change the TX ring size to 512 for the gve0 interface: +.D1 sysctl dev.gve.0.tx_ring_size=512 +.Pp +Change the RX ring size to 512 for the gve0 interface: +.D1 sysctl dev.gve.0.rx_ring_size=512 .Sh DIAGNOSTICS The following messages are recorded during driver initialization: .Bl -diag @@ -127,7 +140,6 @@ Tx queue-specific allocation failures: .It "Failed to alloc desc ring for tx ring %d" .It "Failed to vmap fifo, qpl_id = %d" .El -.El .Pp The following messages are recorded when the interface detach fails: .Bl -diag @@ -168,6 +180,12 @@ These messages are seen if any admin queue command fails: .It "Unknown AQ command opcode %d" .El .Pp +These messages appear if a TX timeout is detected: +.Bl -diag +.It "Found %d timed out packet(s) on txq%d, kicking it for completions" +.It "Found %d timed out packet(s) on txq%d with its last kick %ld sec ago which is less than the cooldown period %d. Resetting device" +.El +.Pp These messages are recorded when the device is being reset due to an error: .Bl -diag .It "Scheduling reset task!" @@ -193,22 +211,99 @@ These two messages correspond to the NIC alerting the driver to link state chang .Pp Apart from these messages, the driver exposes per-queue packet and error counters as sysctl nodes. Global (across queues) counters can be read using -.Xr netstat 8 . +.Xr netstat 1 . +.Sh SYSCTL VARIABLES +.Nm +exposes the following +.Xr sysctl 8 +variables: +.Bl -tag -width indent +.It Va hw.gve.driver_version +The driver version. +This is read-only. +.It Va hw.gve.queue_format +The queue format in use. +This is read-only. +.It Va hw.gve.disable_hw_lro +Setting this boot-time tunable to 1 disables Large Receive Offload (LRO) in the NIC. +The default value is 0, which means hardware LRO is enabled by default. +The software LRO stack in the kernel is always used. +This sysctl variable needs to be set before loading the driver, using +.Xr loader.conf 5 . +.It Va hw.gve.allow_4k_rx_buffers +Setting this boot-time tunable to 1 enables support for 4K RX Buffers. +The default value is 0, which means 2K RX Buffers will be used. +4K RX Buffers are only supported on DQO_RDA and DQO_QPL queue formats. +When enabled, 4K RX Buffers will be used either when HW LRO is enabled +or mtu is greated than 2048. +This sysctl variable needs to be set before loading the driver, using +.Xr loader.conf 5 . +.It Va dev.gve.X.num_rx_queues and dev.gve.X.num_tx_queues +Run-time tunables that represent the number of currently used RX/TX queues. +The default value is the max number of RX/TX queues the device can support. +.Pp +This call turns down the interface while setting up the new queues, +which may potentially cause any new packets to be dropped. +This call can fail if the system is not able to provide the driver with enough resources. +In that situation, the driver will revert to the previous number of RX/TX queues. +If this also fails, a device reset will be triggered. +.Pp +Note: sysctl nodes for queue stats remain available even if a queue is removed. +.Pp +.It Va dev.gve.X.rx_ring_size and dev.gve.X.tx_ring_size +Run-time tunables that represent the current ring size for RX/TX queues. +The default value is set to device defaults for ring size. +.Pp +This call turns down the interface while setting up the queues with the new ring size, +which may potentially cause any new packets to be dropped. +This call can fail if the system is not able to provide the driver with enough resources. +In that situation, the driver will try to revert to the previous ring size for RX/TX queues. +If this also fails, the device will be in an unhealthy state and will need to be reloaded. +This value must be a power of 2 and within the defined range. +.Pp +.El .Sh LIMITATIONS .Nm does not support the transmission of VLAN-tagged packets. All VLAN-tagged traffic is dropped. +.Sh QUEUE FORMATS +.Nm +features different datapath modes called queue formats: +.Pp +.Bl -bullet -compact +.It +GQI_QPL: "QPL" stands for "Queue Page List" and refers to the fact that +hardware expects a fixed bounce buffer and cannot access arbitrary memory. +GQI is the older descriptor format. +The G in "GQI" refers to an older generation of hardware, and the "QI" +stands for "Queue In-order" referring to the fact that the NIC sends +Tx and Rx completions in the same order as the one in which the corresponding +descriptors were posted by the driver. +.It +DQO_RDA: DQO is the descriptor format required to take full advantage of +next generation VM shapes. +"RDA" stands for "Raw DMA Addressing" and refers to the fact that hardware +can work with DMA-ed packets and does not expect them to be copied into or +out of a fixed bounce buffer. +The D in "DQO" refers to a newer generation of hardware, and the "QO" +stands for "Queue Out-of-order" referring to the fact that the NIC might +send Tx and Rx completions in an order different from the one in which +the corresponding descriptors were posted by the driver. +.It +DQO_QPL: The next generation descriptor format in the "QPL" mode. +.El .Sh SUPPORT Please email gvnic-drivers@google.com with the specifics of the issue encountered. -.El .Sh SEE ALSO +.Xr netstat 1 , +.Xr loader.conf 5 , .Xr ifconfig 8 , -.Xr netstat 8 +.Xr sysctl 8 .Sh HISTORY The .Nm device driver first appeared in -.Fx 14.0 . +.Fx 13.3 . .Sh AUTHORS The .Nm diff --git a/share/man/man4/hidraw.4 b/share/man/man4/hidraw.4 index 4631e253c1ef..0353e49a7425 100644 --- a/share/man/man4/hidraw.4 +++ b/share/man/man4/hidraw.4 @@ -27,7 +27,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd August 6, 2023 +.Dd April 27, 2025 .Dt HIDRAW 4 .Os .Sh NAME @@ -198,7 +198,7 @@ specified by .Va buf . .It Dv HIDIOCGRAWPHYS(len) Pq Vt "char[] buf" Get the newbus path to the device. -.\For Bluetooth devices, it returns the hardware (MAC) address of the device. +.\"For Bluetooth devices, it returns the hardware (MAC) address of the device. Copies a maximum of .Va len bytes of the newbus device path @@ -206,10 +206,12 @@ into the memory specified by .Va buf . .It Dv HIDIOCGFEATURE(len) Pq Vt "void[] buf" -Get a feature report from the device. +.It Dv HIDIOCGINPUT(len) Pq Vt "void[] buf" +.It Dv HIDIOCGOUTPUT(len) Pq Vt "void[] buf" +Get respectively a feature, input or output report from the device. Copies a maximum of .Va len -bytes of the feature report data into the memory specified by +bytes of the report data into the memory specified by .Va buf . The first byte of the supplied buffer should be set to the report number of the requested report. @@ -218,7 +220,9 @@ The report will be returned starting at the first byte of the buffer (ie: the report number is not returned). This call may fail if the device does not support this feature. .It Dv HIDIOCSFEATURE(len) Pq Vt "void[] buf" -Set a feature Report in the device. +.It Dv HIDIOCSINPUT(len) Pq Vt "void[] buf" +.It Dv HIDIOCSOUTPUT(len) Pq Vt "void[] buf" +Set respectively a feature, input or output Report in the device. The value of the report is specified by the .Va buf and the diff --git a/share/man/man4/hv_netvsc.4 b/share/man/man4/hv_netvsc.4 index 226fa016f695..e5c7004713c5 100644 --- a/share/man/man4/hv_netvsc.4 +++ b/share/man/man4/hv_netvsc.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2012 Microsoft Corp. .\" All rights reserved. diff --git a/share/man/man4/hwt.4 b/share/man/man4/hwt.4 new file mode 100644 index 000000000000..299332c72542 --- /dev/null +++ b/share/man/man4/hwt.4 @@ -0,0 +1,144 @@ +.\" +.\" Copyright (c) 2025 Ruslan Bukin <br@bsdpad.com> +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd July 12, 2025 +.Dt HWT 4 +.Os +.Sh NAME +.Nm hwt +.Nd Hardware Trace Framework +.Sh SYNOPSIS +.Cd "options HWT_HOOKS" +.Cd "device hwt" +.Pp +At least one of: +.Cd "device intel_pt" +.Pq amd64 +.Cd "device coresight" +.Pq arm64 +.Cd "device spe" +.Pq arm64 +.Pp +In +.Xr rc.conf 5 : +.Cd kld_list="hwt" +.Sh DESCRIPTION +The +.Nm +framework provides infrastructure for hardware-assisted tracing. +It collects detailed information about software execution and stores it as +events in highly compressed format into DRAM. +The events cover information about control flow changes of a program, whether +branches taken or not, exceptions taken, timing information, cycles elapsed and +more. +The information collected allows to reconstruct entire program flow of a given +application without noticeable performance impact. +.Sh HARDWARE +The framework supports several tracing technologies found on +.Cd arm64 +and +.Cd amd64 +systems: +.Pp +.Bl -bullet -compact +.It +ARM Coresight +.It +ARM Statistical Profiling Extension (SPE) +.It +Intel Processor Trace (PT) +.El +.Pp +The +.Nm +framework supports two modes of operation: +.Bl -tag -width "Thread mode" +.It Em CPU mode +Capture CPU activity in kernel mode. +.It Em Thread mode +Capture activity of each of a process's threads in user mode. +.El +.Sh MANAGEMENT +When loaded into kernel, the +.Nm +framework provides +.Pa /dev/hwt +character device. +The only +.Xr ioctl 2 +request it accepts is +.Dv HWT_IOC_ALLOC . +This request allocates kernel tracing context (CTX) based on requested mode of +operation, set of CPUs and/or pid. +.Pp +Upon successful CTX allocation, the ioctl returns a CTX identification +number (ident). +.Pp +Each CTX is then managed using its own dedicated character device found at +.Pa "/dev/hwt_${ident}_${d}", +where ident is a unique identification number of tracing context, d is either +cpu_id (in HWT CPU mode) or process pid (in HWT Thread mode). +.Sh HOOKS +During tracing of a target process, HWT records runtime events such as threads +creation, exec and mmap system calls. +These events are logged as "records" within a particular CTX associated with +traced process. +.Pp +Additionally, HWT can suspend the target thread upon exec or mmap system calls +if requested by the user. +This pause allows user-space tools to retrieve the records and adjust tracing +settings before execution continues. +This feature is especially useful when address range filtering is enabled, +allowing tracing of specific functions within the target executable or a +dynamic library. +.Sh KERNEL OPTIONS +The following options in the kernel configuration file are mandatory and +related to +.Nm +operation: +.Pp +.Bl -tag -width ".Dv HWT_HOOKS" -compact +.It Dv HWT_HOOKS +Enable kernel hooks. +.El +.Sh IOCTL INTERFACE +Once a CTX is allocated, its management character device accepts several +.Xr ioctl 2 +requests: +.Bl -tag -width "HWT_IOC_RECORD_GET" +.It Dv HWT_IOC_START +Start tracing. +In HWT CPU mode the tracing does actually start with this +.Xr ioctl 2 +request. +In the Thread mode, the tracing "running" flag set, but tracing begins after +scheduler switches the target thread onto CPU and return to user mode. +.It Dv HWT_IOC_STOP +Stop tracing of the particular CTX. +.It Dv HWT_IOC_RECORD_GET +Copy all or part of records collected during hook invocation and associated +with this CTX to userspace. +.It Dv HWT_IOC_BUFPTR_GET +Get current pointer in buffer that is filled by tracing units in real-time. +.It Dv HWT_IOC_SET_CONFIG +Set architecture-specific config (optional). +.It Dv HWT_IOC_WAKEUP +Wake up a thread that has been put to sleep by HWT framework hooks. +.It Dv HWT_IOC_SVC_BUF +For SPE-only, the kernel is waiting for userspace to notify that it has copied +out a buffer to avoid data loss/overwriting buffers. +.El +.Sh SEE ALSO +.Xr tracing 7 , +.Xr hwt 8 +.Sh HISTORY +The +.Nm +framework first appeared in +.Fx 15.0 . +.Sh AUTHORS +.An Ruslan Bukin Aq Mt br@FreeBSD.org +.An Bojan Novković Aq Mt bnovkov@freebsd.org +.An Zachary Leaf Aq Mt zachary.leaf@arm.com diff --git a/share/man/man4/iavf.4 b/share/man/man4/iavf.4 index 2e265a5a2fbb..d55e084e82cc 100644 --- a/share/man/man4/iavf.4 +++ b/share/man/man4/iavf.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-3-Clause +.\" .\" Copyright (c) 2013-2018, Intel Corporation .\" All rights reserved. .\" @@ -29,12 +32,12 @@ .\" .\" * Other names and brands may be claimed as the property of others. .\" -.Dd January 30, 2019 +.Dd May 21, 2024 .Dt IAVF 4 .Os .Sh NAME .Nm iavf -.Nd "Intel Adaptive Virtual Function driver" +.Nd "Intel Ethernet Adaptive Virtual Function Driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: @@ -51,87 +54,300 @@ if_iavf_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for the PCI Virtual Functions from the 700 Series of -ethernet devices and newer product families. -The driver supports Jumbo Frames, TX/RX checksum offload, -TCP segmentation offload (TSO), Large Receive Offload (LRO), VLAN -tag insertion/extraction, VLAN checksum offload, VLAN TSO, and -Receive Side Steering (RSS), all for both IPv4 and IPv6. -For further hardware information and questions related to hardware -requirements, see -.Pa http://support.intel.com/ . -.Pp -Support for Jumbo Frames is provided via the interface MTU setting. -Selecting an MTU larger than 1500 bytes with the +driver provides support for any PCI Virtual Function created from certain +Intel Ethernet devices. +This driver is compatible with virtual functions bound to devices based on the +following: +.Pp +.Bl -bullet -compact +.It +Intel\(rg Ethernet Controller E810\-C +.It +Intel\(rg Ethernet Controller E810\-XXV +.It +Intel\(rg Ethernet Connection E822\-C +.It +Intel\(rg Ethernet Connection E822\-L +.It +Intel\(rg Ethernet Connection E823\-C +.It +Intel\(rg Ethernet Connection E823\-L +.It +Intel\(rg Ethernet Controller I710 +.It +Intel\(rg Ethernet Controller X710 +.It +Intel\(rg Ethernet Controller XL710 +.It +Intel\(rg Ethernet Network Connection X722 +.It +Intel\(rg Ethernet Controller XXV710 +.It +Intel\(rg Ethernet Controller V710 +.El +.Pp +The associated Physical Function (PF) drivers for this VF driver are: +.Pp +.Bl -bullet -compact +.It +.Xr ice 4 +.It +.Xr ixl 4 +.El +.Pp +For questions related to hardware requirements, refer to the documentation +supplied with your Intel Ethernet Adapter. +All hardware requirements listed apply to use with +.Fx . +.Ss The VF Driver +The VF driver is normally used in a virtualized environment where a host driver +manages SR\-IOV, and provides a VF device to the guest. +.Pp +In the +.Fx +guest, the iavf driver would be loaded and will function using +the VF device assigned to it. +.Pp +The VF driver provides most of the same functionality as the core driver, but +is actually a subordinate to the host. +Access to many controls is accomplished by a request to the host via what is +called the "Admin queue." +These are startup and initialization events, however; once in operation, the +device is self\-contained and should achieve near native performance. +.Pp +Some notable limitations of the VF environment: +.Bl -bullet +.It +The PF can configure the VF to allow promiscuous mode, using a configuration +parameter in +.Xr iovctl.conf 5 ; +otherwise, promiscuous mode will not work +.It +Media info is not available from the PF, so the active media will always be +displayed as auto in .Xr ifconfig 8 -utility configures the adapter to receive and transmit Jumbo Frames. -The maximum MTU size for Jumbo Frames is 9706. +.El +.Ss Adaptive Virtual Function +Adaptive Virtual Function (AVF) allows the virtual function driver, or VF, to +adapt to changing feature sets of the physical function driver (PF) with which +it is associated. +This allows system administrators to update a PF without having to update all +the VFs associated with it. +All AVFs have a single common device ID and branding string. .Pp -Offloads are also controlled via the interface, for instance, -checksumming for both IPv4 and IPv6 can be set and unset, TSO4 -and/or TSO6, and finally LRO can be set and unset. +AVFs have a minimum set of features known as "base mode," but may provide +additional features depending on what features are available in the PF with +which the AVF is associated. +The following are base mode features: +.Bl -bullet -compact +.It +4 Queue Pairs (QP) and associated Configuration Status Registers (CSRs) +for Tx/Rx +.It +iavf descriptors and ring format +.It +Descriptor write\-back completion +.It +1 control queue, with iavf descriptors, CSRs and ring format +.It +5 MSI\-X interrupt vectors and corresponding iavf CSRs +.It +1 Interrupt Throttle Rate (ITR) index +.It +1 Virtual Station Interface (VSI) per VF +.It +1 Traffic Class (TC), TC0 +.It +Receive Side Scaling (RSS) with 64 entry indirection table and key, +configured through the PF +.It +1 unicast MAC address reserved per VF +.It +8 MAC address filters for each VF on an Intel\(rg Ethernet 800 Series device +.It +16 MAC address filters for each VF on an Intel\(rg Ethernet 700 Series device +.It +Stateless offloads \- non\-tunneled checksums +.It +AVF device ID +.It +HW mailbox is used for VF to PF communications +.El +.Sh CONFIGURATION AND TUNING +.Ss Important System Configuration Changes +It is important to note that 100G operation can generate high +numbers of interrupts, often incorrectly being interpreted as +a storm condition in the kernel. +It is suggested that this be resolved by setting +.Va hw.intr_storm_threshold +to 0. .Pp -For more information on configuring this device, see -.Xr ifconfig 8 . +The default is 1000. .Pp -.Em NOTE : -This +Best throughput results are seen with a large MTU; use 9706 if possible. +The default number of descriptors per ring is 1024. +Increasing this may improve performance, depending on your use case. +.Ss Configuring for no iflib +.Xr iflib 4 +is a common framework for network interface drivers for +.Fx +that uses a shared set of sysctl names. +.Pp +The default .Nm -driver is only for Virtual Functions. -For 700 series Physical Functions, use the -.Xr ixl 4 -driver. -.Sh LOADER TUNABLES -Tunables can be set at the -.Xr loader 8 -prompt before booting the kernel or stored in -.Xr loader.conf 5 . -.Bl -tag -width indent -.It Va hw.iavf.rx_itr -The RX interrupt rate value, set to 62 (124 usec) by default. -.It Va hw.iavf.tx_itr -The TX interrupt rate value, set to 122 (244 usec) by default. -.It Va hw.iavf.enable_head_writeback -When the driver is finding the last TX descriptor processed by the hardware, -use a value written to memory by the hardware instead of scanning the -descriptor ring for completed descriptors. -Disabled by default; this mimics the "legacy" TX behavior found in -.Xr ixgbe 4 . -to ensure compatibility with future, non-700 series VF devices. +driver depends on it, but it can be compiled without it. +.Ss Jumbo Frames +Jumbo Frames support is enabled by changing the Maximum Transmission Unit (MTU) +to a value larger than the default value of 1500. +.Pp +Use the +.Xr ifconfig 8 +command to increase the MTU size. +.Pp +To confirm the MTU used between two specific devices, use +.Xr route 8 : +.Bd -literal -offset indent +route get <destination_IP_address> +.Ed +.Pp +NOTE: +.Bl -bullet +.It +The maximum MTU setting for jumbo frames is 9706. +This corresponds to the maximum jumbo frame size of 9728 bytes. +.It +This driver will attempt to use multiple page-sized buffers to receive +each jumbo packet. +This should help to avoid buffer starvation issues when allocating receive +packets. +.It +Packet loss may have a greater impact on throughput when you use jumbo +frames. +If you observe a drop in performance after enabling jumbo frames, enabling +flow control may mitigate the issue. .El -.Sh SUPPORT -For general information and support, -go to the Intel support website at: -.Pa http://support.intel.com/ . +.Ss Checksum Offload +Checksum offloading supports both TCP and UDP packets and is supported for both +transmit and receive. +.Pp +TSO (TCP Segmentation Offload) supports both IPv4 and IPv6. +Both of these features are enabled and disabled via +.Xr ifconfig 8 . .Pp -If an issue is identified with this driver with a supported adapter, -email all the specific information related to the issue to -.Mt freebsd@intel.com . +NOTE: +.Bl -bullet -compact +.It +TSO requires Tx checksum; if Tx checksum is disabled then TSO will also +be disabled. +.El +.Ss LRO +LRO (Large Receive Offload) may provide Rx performance improvement. +However, it is incompatible with packet\-forwarding workloads. +You should carefully evaluate the environment and enable LRO when possible. +.Ss Rx and Tx Descriptor Rings +Allows you to set the Rx and Tx descriptor rings independently. +Set them via these +.Xr iflib 4 +sysctls: +.Bl -tag -width indent +.It dev.iavf.#.iflib.override_nrxds +.It dev.iavf.#.iflib.override_ntxds +.El +.Ss Link\-Level Flow Control (LFC) +The VF driver does not have access to flow control settings. +It must be managed from the host side. .Sh SEE ALSO .Xr arp 4 , +.Xr ice 4 , +.Xr iflib 4 , .Xr ixl 4 , .Xr netintro 4 , .Xr vlan 4 , -.Xr ifconfig 8 , -.Xr iflib 9 +.Xr ifconfig 8 +.Pp +See the +.Dq Intel\(rg Ethernet Adapters and Devices User Guide +for additional information on features. +It is available on the Intel website at either of the following: +.Bl -bullet +.It +.Lk https://cdrdv2.intel.com/v1/dl/getContent/705831 +.It +.Lk https://www.intel.com/content/www/us/en/download/19373/adapter\-user\-guide\-for\-intel\-ethernet\-adapters.html +.El +.Pp +For information on how to identify your adapter, and for the latest Intel +network drivers, refer to the Intel Support website: +.Aq Lk http://www.intel.com/support +.Sh CAVEATS +.Ss Driver Buffer Overflow Fix +The fix to resolve CVE\-2016\-8105, referenced in Intel SA\-00069 +.Aq Lk https://www.intel.com/content/www/us/en/security\-center/advisory/intel\-sa\-00069.html , +is included in this and future versions of the driver. +.Ss Network Memory Buffer Allocation +.Fx +may have a low number of network memory buffers (mbufs) by default. +If your mbuf value is too low, it may cause the driver to fail to initialize +and/or cause the system to become unresponsive. +You can check to see if the system is mbuf\-starved by running +.Li "netstat -m" . +Increase the number of mbufs by editing the lines below in +.Xr sysctl.conf 5 : +.Bd -literal -offset indent +kern.ipc.nmbclusters +kern.ipc.nmbjumbop +kern.ipc.nmbjumbo9 +kern.ipc.nmbjumbo16 +kern.ipc.nmbufs +.Ed +.Pp +The amount of memory that you allocate is system specific, and may require +some trial and error. +Also, increasing the following in +.Xr sysctl.conf 5 +could help increase +network performance: +.Bd -literal -offset indent +kern.ipc.maxsockbuf +net.inet.tcp.sendspace +net.inet.tcp.recvspace +net.inet.udp.maxdgram +net.inet.udp.recvspace +.Ed +.Ss UDP Stress Test Dropped Packet Issue +Under small packet UDP stress with the +.Nm +driver, the system may drop UDP packets due to socket buffers being full. +Setting the PF driver's Flow Control variables to the minimum may resolve the +issue. +.Ss Disable LRO when routing/bridging +LRO must be turned off when forwarding traffic. +.Sh SUPPORT +For general information, go to the Intel support website at +.Aq Lk http://www.intel.com/support/ . +.Pp +If an issue is identified with the released source code on a supported kernel +with a supported adapter, email the specific information related to the issue +to +.Aq Mt freebsd@intel.com . +.Sh LEGAL +Intel\(rg is a trademark or registered trademark of Intel Corporation +or its subsidiaries in the United States and / or other countries. +.Pp +Other names and brands may be claimed as the property of others. .Sh HISTORY The .Nm device driver first appeared in -.Fx 10.1 . -under the name "ixlv" +.Fx 10.1 +under the name +.Nm ixlv . It was converted to use -.Xr iflib 9 -and changed to its current name in -.Fx 12 . +.Xr iflib 4 +and renamed in +.Fx 12.4 . .Sh AUTHORS -.An -nosplit The .Nm -driver was written by -.An Jack Vogel Aq Mt jfv@freebsd.org -and -.An Eric Joyner Aq Mt erj@freebsd.org . -.Sh CAVEATS -This driver is supposed to function on VFs spawned from future network devices by Intel, -but at the time of this writing, has only been tested on the 700 series VFs. +driver was written by the +.An Intel Corporation Aq Mt freebsd@intel.com diff --git a/share/man/man4/ice.4 b/share/man/man4/ice.4 new file mode 100644 index 000000000000..3f7a9017756d --- /dev/null +++ b/share/man/man4/ice.4 @@ -0,0 +1,1087 @@ +.\"- +.\" SPDX-License-Identifier: BSD-3-Clause +.\" +.\" Copyright (c) 2019-2020, Intel Corporation +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms of the Software, with or +.\" without modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright notice, +.\" this list of conditions and the following disclaimer. +.\" +.\" 2. Redistributions in binary form must reproduce the above copyright notice, +.\" this list of conditions and the following disclaimer in the documentation +.\" and/or other materials provided with the distribution. +.\" +.\" 3. Neither the name of the Intel Corporation nor the names of its +.\" contributors may be used to endorse or promote products derived from +.\" this Software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" * Other names and brands may be claimed as the property of others. +.\" +.Dd March 28, 2025 +.Dt ICE 4 +.Os +.Sh NAME +.Nm ice +.Nd "Intel\(rg Ethernet 800 Series Driver" +.Sh SYNOPSIS +To compile this driver into the kernel, place the following lines in your +kernel configuration file: +.Bd -literal -offset indent +.Cd device iflib +.Cd device ice +.Ed +.Pp +To load the driver as a module at boot time, place the following lines in +.Xr loader.conf 5 : +.Bd -literal -offset indent +if_ice_load="YES" +.Ed +.Sh DESCRIPTION +.Ss Features +The +.Nm +driver provides support for any PCI Express adapter or LOM +(LAN On Motherboard) +in the Intel\(rg Ethernet 800 Series. +As of this writing, the series includes devices with these model numbers: +.Pp +.Bl -bullet -compact +.It +Intel\(rg Ethernet Controller E810\-C +.It +Intel\(rg Ethernet Controller E810\-XXV +.It +Intel\(rg Ethernet Connection E822\-C +.It +Intel\(rg Ethernet Connection E822\-L +.It +Intel\(rg Ethernet Connection E823\-C +.It +Intel\(rg Ethernet Connection E823\-L +.It +Intel\(rg Ethernet Connection E825\-C +.It +Intel\(rg Ethernet Connection E830\-C +.It +Intel\(rg Ethernet Connection E830\-CC +.It +Intel\(rg Ethernet Connection E830\-L +.It +Intel\(rg Ethernet Connection E830\-XXV +.El +.Pp +For questions related to hardware requirements, refer to the documentation +supplied with your adapter. +.Pp +Support for Jumbo Frames is provided via the interface MTU setting. +Selecting an MTU larger than 1500 bytes with the +.Xr ifconfig 8 +utility configures the adapter to receive and transmit Jumbo Frames. +The maximum MTU size for Jumbo Frames is 9706. +For more information, see the +.Sx Jumbo Frames +section. +.Pp +This driver version supports VLANs. +For information on enabling VLANs, see +.Xr vlan 4 . +For additional information on configuring VLANs, see +.Xr ifconfig 8 Ap s +.Dq VLAN Parameters +section. +.Pp +Offloads are also controlled via the interface, for instance, checksumming for +both IPv4 and IPv6 can be set and unset, TSO4 and/or TSO6, and finally LRO can +be set and unset. +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Pp +The associated Virtual Function (VF) driver for this driver is +.Xr iavf 4 . +.Pp +The associated RDMA driver for this driver is +.Xr irdma 4 . +.Ss Dynamic Device Personalization +The DDP package loads during device initialization. +The driver looks for the +.Sy ice_ddp +module and checks that it contains a valid DDP package file. +.Pp +If the driver is unable to load the DDP package, the device will enter Safe +Mode. +Safe Mode disables advanced and performance features and supports only +basic traffic and minimal functionality, such as updating the NVM or +downloading a new driver or DDP package. +Safe Mode only applies to the affected physical function and does not impact +any other PFs. +See the +.Dq Intel\(rg Ethernet Adapters and Devices User Guide +for more details on DDP and Safe Mode. +.Pp +If you encounter issues with the DDP package file, you may need to download +an updated driver or +.Sy ice_ddp +module. +See the log messages for more information. +.Pp +You cannot update the DDP package if any PF drivers are already loaded. +To overwrite a package, unload all PFs and then reload the driver with the +new package. +.Pp +You can only use one DDP package per driver, even if you have more than one +device installed that uses the driver. +.Pp +Only the first loaded PF per device can download a package for that device. +.Ss Jumbo Frames +Jumbo Frames support is enabled by changing the Maximum Transmission Unit (MTU) +to a value larger than the default value of 1500. +.Pp +Use +.Xr ifconfig 8 +to increase the MTU size. +.Pp +The maximum MTU setting for jumbo frames is 9706. +This corresponds to the maximum jumbo frame size of 9728 bytes. +.Pp +This driver will attempt to use multiple page sized buffers to receive +each jumbo packet. +This should help to avoid buffer starvation issues when allocating receive +packets. +.Pp +Packet loss may have a greater impact on throughput when you use jumbo +frames. +If you observe a drop in performance after enabling jumbo frames, enabling +flow control may mitigate the issue. +.Ss Remote Direct Memory Access +Remote Direct Memory Access, or RDMA, allows a network device to transfer data +directly to and from application memory on another system, increasing +throughput and lowering latency in certain networking environments. +.Pp +The ice driver supports both the iWARP (Internet Wide Area RDMA Protocol) and +RoCEv2 (RDMA over Converged Ethernet) protocols. +The major difference is that iWARP performs RDMA over TCP, while RoCEv2 uses +UDP. +.Pp +Devices based on the Intel\(rg Ethernet 800 Series do not support RDMA when +operating in multiport mode with more than 4 ports. +.Pp +For detailed installation and configuration information for RDMA, see +.Xr irdma 4 . +.Ss RDMA Monitoring +For debugging/testing purposes, you can use sysctl to set up a mirroring +interface on a port. +The interface can receive mirrored RDMA traffic for packet +analysis tools like +.Xr tcpdump 1 . +This mirroring may impact performance. +.Pp +To use RDMA monitoring, you may need to reserve more MSI\-X interrupts. +Before the +.Nm +driver loads, configure the following tunable provided by +.Xr iflib 4 : +.Bd -literal -offset indent +dev.ice.<interface #>.iflib.use_extra_msix_vectors=4 +.Ed +.Pp +You may need to adjust the number of extra MSI\-X interrupt vectors. +.Pp +To create/delete the interface: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.create_interface=1 +sysctl dev.ice.<interface #>.delete_interface=1 +.Ed +.Pp +The mirrored interface receives both LAN and RDMA traffic. +Additional filters can be configured in tcpdump. +.Pp +To differentiate the mirrored interface from the primary interface, the network +interface naming convention is: +.Bd -literal -offset indent +<driver name><port number><modifier><modifier unit number> +.Ed +.Pp +For example, +.Dq Li ice0m0 +is the first mirroring interface on +.Dq Li ice0 . +.Ss Data Center Bridging +Data Center Bridging (DCB) is a configuration Quality of Service +implementation in hardware. +It uses the VLAN priority tag (802.1p) to filter traffic. +That means that there are 8 different priorities that traffic can be filtered +into. +It also enables priority flow control (802.1Qbb) which can limit or eliminate +the number of dropped packets during network stress. +Bandwidth can be allocated to each of these priorities, which is enforced at +the hardware level (802.1Qaz). +.Pp +DCB is normally configured on the network using the DCBX protocol (802.1Qaz), a +specialization of LLDP (802.1AB). The +.Nm +driver supports the following mutually exclusive variants of DCBX support: +.Bl -bullet -compact +.It +Firmware\-based LLDP Agent +.It +Software\-based LLDP Agent +.El +.Pp +In firmware\-based mode, firmware intercepts all LLDP traffic and handles DCBX +negotiation transparently for the user. +In this mode, the adapter operates in +.Dq willing +DCBX mode, receiving DCB settings from the link partner (typically a +switch). +The local user can only query the negotiated DCB configuration. +For information on configuring DCBX parameters on a switch, please consult the +switch manufacturer'ss documentation. +.Pp +In software\-based mode, LLDP traffic is forwarded to the network stack and user +space, where a software agent can handle it. +In this mode, the adapter can operate in +.Dq nonwilling +DCBX mode and DCB configuration can be both queried and set locally. +This mode requires the FW\-based LLDP Agent to be disabled. +.Pp +Firmware\-based mode and software\-based mode are controlled by the +.Dq fw_lldp_agent +sysctl. +Refer to the Firmware Link Layer Discovery Protocol Agent section for more +information. +.Pp +Link\-level flow control and priority flow control are mutually exclusive. +The ice driver will disable link flow control when priority flow control +is enabled on any traffic class (TC). +It will disable priority flow control when link flow control is enabled. +.Pp +To enable/disable priority flow control in software\-based DCBX mode: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.pfc=1 (or 0 to disable) +.Ed +.Pp +Enhanced Transmission Selection (ETS) allows you to assign bandwidth to certain +TCs, to help ensure traffic reliability. +To view the assigned ETS configuration, use the following: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.ets_min_rate +.Ed +.Pp +To set the minimum ETS bandwidth per TC, separate the values by commas. +All values must add up to 100. +For example, to set all TCs to a minimum bandwidth of 10% and TC 7 to 30%, +use the following: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.ets_min_rate=10,10,10,10,10,10,10,30 +.Ed +.Pp +To set the User Priority (UP) to a TC mapping for a port, separate the values +by commas. +For example, to map UP 0 and 1 to TC 0, UP 2 and 3 to TC 1, UP 4 and +5 to TC 2, and UP 6 and 7 to TC 3, use the following: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.up2tc_map=0,0,1,1,2,2,3,3 +.Ed +.Ss L3 QoS mode +The +.Nm +driver supports setting DSCP\-based Layer 3 Quality of Service (L3 QoS) +in the PF driver. +The driver initializes in L2 QoS mode by default; L3 QoS is disabled by +default. +Use the following sysctl to enable or disable L3 QoS: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.pfc_mode=1 (or 0 to disable) +.Ed +.Pp +If you disable L3 QoS mode, it returns to L2 QoS mode. +.Pp +To map a DSCP value to a traffic class, separate the values by commas. +For example, to map DSCPs 0\-3 and DSCP 8 to DCB TCs 0\-3 and 4, respectively: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.dscp2tc_map.0\-7=0,1,2,3,0,0,0,0 +sysctl dev.ice.<interface #>.dscp2tc_map.8\-15=4,0,0,0,0,0,0,0 +.Ed +.Pp +To change the DSCP mapping back to the default traffic class, set all the +values back to 0. +.Pp +To view the currently configured mappings, use the following: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.dscp2tc_map +.Ed +.Pp +L3 QoS mode is not available when FW\-LLDP is enabled. +.Pp +You also cannot enable FW\-LLDP if L3 QoS mode is active. +.Pp +Disable FW\-LLDP before switching to L3 QoS mode. +.Pp +Refer to the +.Sx Firmware Link Layer Discovery Protocol Agent +section in this README for more information on disabling FW\-LLDP. +.Ss Firmware Link Layer Discovery Protocol Agent +Use sysctl to change FW\-LLDP settings. +The FW\-LLDP setting is per port and persists across boots. +.Pp +To enable the FW\-LLDP Agent: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.fw_lldp_agent=1 +.Ed +.Pp +To disable the FW\-LLDP Agebt: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.fw_lldp_agent=0 +.Ed +.Pp +To check the current LLDP setting: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.fw_lldp_agent +.Ed +.Pp +You must enable the UEFI HII LLDP Agent attribute for this setting +to take effect. +If the +.Dq LLDP AGENT +attribute is set to disabled, you cannot enable the FW\-LLDP Agent from the +driver. +.Ss Link\-Level Flow Control (LFC) +Ethernet Flow Control (IEEE 802.3x) can be configured with sysctl to enable +receiving and transmitting pause frames for +.Nm . +When transmit is enabled, pause frames are generated when the receive packet +buffer crosses a predefined threshold. +When receive is enabled, the transmit unit will halt for the time delay +specified in the firmware when a pause frame is received. +.Pp +Flow Control is disabled by default. +.Pp +Use sysctl to change the flow control settings for a single interface without +reloading the driver: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.fc +.Ed +.Pp +The available values for flow control are: +.Bd -literal -offset indent +0 = Disable flow control +1 = Enable Rx pause +2 = Enable Tx pause +3 = Enable Rx and Tx pause +.Ed +.Pp +Verify that link flow control was negotiated on the link by checking the +interface entry in +.Xr ifconfig 8 +and looking for the flags +.Dq txpause +and/or +.Dq rxpause +in the +.Dq media +status. +.Pp +The +.Nm +driver requires flow control on both the port and link partner. +If flow control is disabled on one of the sides, the port may appear to +hang on heavy traffic. +.Pp +For more information on priority flow control, refer to the +.Sx Data Center Bridging +section. +.Pp +The VF driver does not have access to flow control. +It must be managed from the host side. +.Ss Forward Error Correction +Forward Error Correction (FEC) improves link stability but increases latency. +Many high quality optics, direct attach cables, and backplane channels can +provide a stable link without FEC. +.Pp +For devices to benefit from this feature, link partners must have FEC enabled. +.Pp +If you enable the sysctl +.Em allow_no_fec_modules_in_auto +Auto FEC negotiation will include +.Dq No FEC +in case your link partner does not have FEC enabled or is not FEC capable: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.allow_no_fec_modules_in_auto=1 +.Ed +.Pp +NOTE: This flag is currently not supported on the Intel\(rg Ethernet 830 +Series. +.Pp +To show the current FEC settings that are negotiated on the link: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.negotiated_fec +.Ed +.Pp +To view or set the FEC setting that was requested on the link: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.requested_fec +.Ed +.Pp +To see the valid FEC modes for the link: +.Bd -literal -offset indent +sysctl \-d dev.ice.<interface #>.requested_fec +.Ed +.Ss Speed and Duplex Configuration +You cannot set duplex or autonegotiation settings. +.Pp +To have your device change the speeds it will use in auto-negotiation or +force link with: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.advertise_speed=<mask> +.Ed +.Pp +Supported speeds will vary by device. +Depending on the speeds your device supports, valid bits used in a speed mask +could include: +.Bd -literal -offset indent +0x0 \- Auto +0x2 \- 100 Mbps +0x4 \- 1 Gbps +0x8 \- 2.5 Gbps +0x10 \- 5 Gbps +0x20 \- 10 Gbps +0x80 \- 25 Gbps +0x100 \- 40 Gbps +0x200 \- 50 Gbps +0x400 \- 100 Gbps +0x800 \- 200 Gbps +.Ed +.Ss Disabling physical link when the interface is brought down +When the +.Va link_active_on_if_down +sysctl is set to +.Dq 0 , +the port's link will go down when the interface is brought down. +By default, link will stay up. +.Pp +To disable link when the interface is down: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.link_active_on_if_down=0 +.Ed +.Ss Firmware Logging +The +.Nm +driver allows for the generation of firmware logs for supported categories of +events, to help debug issues with Customer Support. +Refer to the +.Dq Intel\(rg Ethernet Adapters and Devices User Guide +for an overview of this feature and additional tips. +.Pp +At a high level, to capture a firmware log: +.Bl -enum -compact +.It +Set the configuration for the firmware log. +.It +Perform the necessary steps to generate the issue you are trying to debug. +.It +Capture the firmware log. +.It +Stop capturing the firmware log. +.It +Reset your firmware log settings as needed. +.It +Work with Customer Support to debug the issue. +.El +.Pp +NOTE: Firmware logs are generated in a binary format and must be decoded by +Customer Support. +Information collected is related only to firmware and hardware for debug +purposes. +.Pp +Once the driver is loaded, it will create the +.Va fw_log +sysctl node under the debug section of the driver's sysctl list. +The driver groups these events into categories, called +.Dq modules . +Supported modules include: +.Pp +.Bl -tag -offset indent -compact -width "task_dispatch" +.It Va general +General (Bit 0) +.It Va ctrl +Control (Bit 1) +.It Va link +Link Management (Bit 2) +.It Va link_topo +Link Topology Detection (Bit 3) +.It Va dnl +Link Control Technology (Bit 4) +.It Va i2c +I2C (Bit 5) +.It Va sdp +SDP (Bit 6) +.It Va mdio +MDIO (Bit 7) +.It Va adminq +Admin Queue (Bit 8) +.It Va hdma +Host DMA (Bit 9) +.It Va lldp +LLDP (Bit 10) +.It Va dcbx +DCBx (Bit 11) +.It Va dcb +DCB (Bit 12) +.It Va xlr +XLR (function\-level resets; Bit 13) +.It Va nvm +NVM (Bit 14) +.It Va auth +Authentication (Bit 15) +.It Va vpd +Vital Product Data (Bit 16) +.It Va iosf +Intel On\-Chip System Fabric (Bit 17) +.It Va parser +Parser (Bit 18) +.It Va sw +Switch (Bit 19) +.It Va scheduler +Scheduler (Bit 20) +.It Va txq +TX Queue Management (Bit 21) +.It Va acl +ACL (Access Control List; Bit 22) +.It Va post +Post (Bit 23) +.It Va watchdog +Watchdog (Bit 24) +.It Va task_dispatch +Task Dispatcher (Bit 25) +.It Va mng +Manageability (Bit 26) +.It Va synce +SyncE (Bit 27) +.It Va health +Health (Bit 28) +.It Va tsdrv +Time Sync (Bit 29) +.It Va pfreg +PF Registration (Bit 30) +.It Va mdlver +Module Version (Bit 31) +.El +.Pp +You can change the verbosity level of the firmware logs. +You can set only one log level per module, and each level includes the +verbosity levels lower than it. +For instance, setting the level to +.Dq normal +will also log warning and error messages. +Available verbosity levels are: +.Pp +.Bl -item -offset indent -compact +.It +0 = none +.It +1 = error +.It +2 = warning +.It +3 = normal +.It +4 = verbose +.El +.Pp +To set the desired verbosity level for a module, use the following sysctl +command and then register it: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.debug.fw_log.severity.<module>=<level> +.Ed +.Pp +For example: +.Bd -literal -offset indent +sysctl dev.ice.0.debug.fw_log.severity.link=1 +sysctl dev.ice.0.debug.fw_log.severity.link_topo=2 +sysctl dev.ice.0.debug.fw_log.register=1 +.Ed +.Pp +To log firmware messages after booting, but before the driver initializes, use +.Xr kenv 1 +to set the tunable. +The +.Va on_load +setting tells the device to register the variable as soon as possible during +driver load. +For example: +.Bd -literal -offset indent +kenv dev.ice.0.debug.fw_log.severity.link=1 +kenv dev.ice.0.debug.fw_log.severity.link_topo=2 +kenv dev.ice.0.debug.fw_log.on_load=1 +.Ed +.Pp +To view the firmware logs and redirect them to a file, use the following +command: +.Bd -literal -offset indent +dmesg > log_output +.Ed +.Pp +NOTE: Logging a large number of modules or too high of a verbosity level will +add extraneous messages to dmesg and could hinder debug efforts. +.Ss Debug Dump +Intel\(rg Ethernet 800 Series devices support debug dump, which allows you to +obtain runtime register values from the firmware for +.Dq clusters +of events and then write the results to a single dump file, for debugging +complicated issues in the field. +.Pp +This debug dump contains a snapshot of the device and its existing hardware +configuration, such as switch tables, transmit scheduler tables, and other +information. +Debug dump captures the current state of the specified cluster(s) and is a +stateless snapshot of the whole device. +.Pp +NOTE: Like with firmware logs, the contents of the debug dump are not +human\-readable. +You must work with Customer Support to decode the file. +.Pp +Debug dump is per device, not per PF. +.Pp +Debug dump writes all information to a single file. +.Pp +To generate a debug dump file in +.Fx +do the following: +.Pp +Specify the cluster(s) to include in the dump file, using a bitmask and the +following command: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.debug.dump.clusters=<bitmask> +.Ed +.Pp +To print the complete cluster bitmask and parameter list to the screen, +pass the +.Fl d +argument. +For example: +.Bd -literal -offset indent +sysctl \-d dev.ice.0.debug.dump.clusters +.Ed +.Pp +Possible bitmask values for +.Va clusters +are: +.Bl -bullet -compact +.It +0 \- Dump all clusters (only supported on Intel\(rg Ethernet E810 Series and +Intel\(rg Ethernet E830 Series) +.It +0x1 \- Switch +.It +0x2 \- ACL +.It +0x4 \- Tx Scheduler +.It +0x8 \- Profile Configuration +.It +0x20 \- Link +.It +0x80 \- DCB +.It +0x100 \- L2P +.It +0x400000 \- Manageability Transactions (only supported on Intel\(rg Ethernet +E810 Series) +.El +.Pp +For example, to dump the Switch, DCB, and L2P clusters, use the following: +.Bd -literal -offset indent +sysctl dev.ice.0.debug.dump.clusters=0x181 +.Ed +.Pp +To dump all clusters, use the following: +.Bd -literal -offset indent +sysctl dev.ice.0.debug.dump.clusters=0 +.Ed +.Pp +NOTE: Using 0 will skip Manageability Transactions data. +.Pp +If you don't specify a cluster, the driver will dump all clusters to a +single file. +Issue the debug dump command, using the following: +.Bd -literal -offset indent +sysctl \-b dev.ice.<interface #>.debug.dump.dump=1 > dump.bin +.Ed +.Pp +NOTE: The driver will not receive the command if you do not write +.Dq 1 +to the sysctl. +.Pp +Replace +.Dq dump.bin +above with the file name you want to use. +.Pp +To clear the +.Va clusters +mask before a subsequent debug dump and then do the dump: +.Bd -literal -offset indent +sysctl dev.ice.0.debug.dump.clusters=0 +sysctl dev.ice.0.debug.dump.dump=1 +.Ed +.Ss Debugging PHY Statistics +The ice driver supports the ability to obtain the values of the PHY registers +from Intel(R) Ethernet 810 Series devices in order to debug link and +connection issues during runtime. +.Pp +The driver allows you to obtain information about: +.Bl -bullet +.It +Rx and Tx Equalization parameters +.It +RS FEC correctable and uncorrectable block counts +.El +.Pp +Use the following sysctl to read the PHY registers: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.debug.phy_statistics +.Ed +.Pp +NOTE: The contents of the registers are not human\-readable. +Like with firmware logs and debug dump, you must work with Customer Support +to decode the file. +.Ss Transmit Balancing +Some Intel(R) Ethernet 800 Series devices allow you to enable a transmit +balancing feature to improve transmit performance under certain conditions. +When the feature is enabled, you should experience more consistent transmit +performance across queues and/or PFs and VFs. +.Pp +By default, transmit balancing is disabled in the NVM. +To enable this feature, use one of the following to persistently change the +setting for the device: +.Bl -bullet +.It +Use the Ethernet Port Configuration Tool (EPCT) to enable the +.Va tx_balancing +option. +Refer to the EPCT readme for more information. +.It +Enable the Transmit Balancing device setting in UEFI HII. +.El +.Pp +When the driver loads, it reads the transmit balancing setting from the NVM and +configures the device accordingly. +.Pp +NOTE: The user selection for transmit balancing in EPCT or HII is persistent +across reboots. +You must reboot the system for the selected setting to take effect. +.Pp +This setting is device wide. +.Pp +The driver, NVM, and DDP package must all support this functionality to +enable the feature. +.Ss Thermal Monitoring +Intel(R) Ethernet 810 Series and Intel(R) Ethernet 830 Series devices can +display temperature data (in degrees Celsius) via: +.Bd -literal -offset indent +sysctl dev.ice.<interface #>.temp +.Ed +.Ss Network Memory Buffer Allocation +.Fx +may have a low number of network memory buffers (mbufs) by default. +If the number of mbufs available is too low, it may cause the driver to fail +to initialize and/or cause the system to become unresponsive. +You can check to see if the system is mbuf\-starved by running +.Ic netstat Fl m . +Increase the number of mbufs by editing the lines below in +.Pa /etc/sysctl.conf : +.Bd -literal -offset indent +kern.ipc.nmbclusters +kern.ipc.nmbjumbop +kern.ipc.nmbjumbo9 +kern.ipc.nmbjumbo16 +kern.ipc.nmbufs +.Ed +.Pp +The amount of memory that you allocate is system specific, and may require some +trial and error. +Also, increasing the following in +.Pa /etc/sysctl.conf +could help increase network performance: +.Bd -literal -offset indent +kern.ipc.maxsockbuf +net.inet.tcp.sendspace +net.inet.tcp.recvspace +net.inet.udp.maxdgram +net.inet.udp.recvspace +.Ed +.Ss Additional Utilities +There are additional tools available from Intel to help configure and update +the adapters covered by this driver. +These tools can be downloaded directly from Intel at +.Lk https://downloadcenter.intel.com , +by searching for their names: +.Bl -bullet +.It +To change the behavior of the QSFP28 ports on E810-C adapters, use the Intel +.Sy Ethernet Port Configuration Tool - FreeBSD . +.It +To update the firmware on an adapter, use the Intel +.Sy Non-Volatile Memory (NVM) Update Utility for Intel Ethernet Network Adapters E810 series - FreeBSD +.El +.Sh HARDWARE +The +.Nm +driver supports the Intel Ethernet 800 series. +Some adapters in this series with SFP28/QSFP28 cages +have firmware that requires that Intel qualified modules are used; these +qualified modules are listed below. +This qualification check cannot be disabled by the driver. +.Pp +The +.Nm +driver supports 100Gb Ethernet adapters with these QSFP28 modules: +.Pp +.Bl -bullet -compact +.It +Intel\(rg 100G QSFP28 100GBASE-SR4 E100GQSFPSR28SRX +.It +Intel\(rg 100G QSFP28 100GBASE-SR4 SPTMBP1PMCDF +.It +Intel\(rg 100G QSFP28 100GBASE-CWDM4 SPTSBP3CLCCO +.It +Intel\(rg 100G QSFP28 100GBASE-DR SPTSLP2SLCDF +.El +.Pp +The +.Nm +driver supports 25Gb and 10Gb Ethernet adapters with these SFP28 modules: +.Pp +.Bl -bullet -compact +.It +Intel\(rg 10G/25G SFP28 25GBASE-SR E25GSFP28SR +.It +Intel\(rg 25G SFP28 25GBASE-SR E25GSFP28SRX (Extended Temp) +.It +Intel\(rg 25G SFP28 25GBASE-LR E25GSFP28LRX (Extended Temp) +.El +.Pp +The +.Nm +driver supports 10Gb and 1Gb Ethernet adapters with these SFP+ modules: +.Pp +.Bl -bullet -compact +.It +Intel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSR +.It +Intel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSRG1P5 +.It +Intel\(rg 1G/10G SFP+ 10GBASE-SR E10GSFPSRG2P5 +.It +Intel\(rg 10G SFP+ 10GBASE-SR E10GSFPSRX (Extended Temp) +.It +Intel\(rg 1G/10G SFP+ 10GBASE-LR E10GSFPLR +.El +.Pp +Note that adapters also support all passive and active +limiting direct attach cables that comply with SFF-8431 v4.1 and +SFF-8472 v10.4 specifications. +.Pp +This is not an exhaustive list; please consult product documentation for an +up-to-date list of supported media. +.Ss Fiber optics and auto\-negotiation +Modules based on 100GBASE\-SR4, active optical cable (AOC), and active copper +cable (ACC) do not support auto\-negotiation per the IEEE specification. +To obtain link with these modules, auto\-negotiation must be turned off on the +link partner's switch ports. +.Ss PCI-Express Slot Bandwidth +Some PCIe x8 slots are actually configured as x4 slots. +These slots have insufficient bandwidth for full line rate with dual port and +quad port devices. +In addition, if you put a PCIe v4.0 or v3.0\-capable adapter into a PCIe v2.x +slot, you cannot get full bandwidth. +.Pp +The driver detects this situation and writes the following message in the +system log: +.Bd -literal -offset indent +PCI\-Express bandwidth available for this device may be insufficient for +optimal performance. +Please move the device to a different PCI\-e link with more lanes and/or +higher transfer rate. +.Ed +.Pp +If this error occurs, moving your adapter to a true PCIe x8 or x16 slot will +resolve the issue. +For best performance, install devices in the following PCI slots: +.Bl -bullet +.It +Any 100Gbps\-capable Intel(R) Ethernet 800 Series device: Install in a +PCIe v4.0 x8 or v3.0 x16 slot +.It +A 200Gbps\-capable Intel(R) Ethernet 830 Series device: Install in a +PCIe v5.0 x8 or v4.0 x16 slot +.El +.Sh LOADER TUNABLES +Tunables can be set at the +.Xr loader 8 +prompt before booting the kernel or stored in +.Xr loader.conf 5 . +See the +.Xr iflib 4 +man page for more information on using iflib sysctl variables as tunables. +.Bl -tag -width indent +.It Va hw.ice.enable_health_events +Set to 1 to enable firmware health event reporting across all devices. +Enabled by default. +.Pp +If enabled, when the driver receives a firmware health event message, it will +print out a description of the event to the kernel message buffer and if +applicable, possible actions to take to remedy it. +.It Va hw.ice.irdma +Set to 1 to enable the RDMA client interface, required by the +.Xr irdma 4 +driver. +Enabled by default. +.It Va hw.ice.rdma_max_msix +Set the maximum number of per-device MSI-X vectors that are allocated for use +by the +.Xr irdma 4 +driver. +Set to 64 by default. +.It Va hw.ice.debug.enable_tx_fc_filter +Set to 1 to enable the TX Flow Control filter across all devices. +Enabled by default. +.Pp +If enabled, the hardware will drop any transmitted Ethertype 0x8808 control +frames that do not originate from the hardware. +.It Va hw.ice.debug.enable_tx_lldp_filter +Set to 1 to enable the TX LLDP filter across all devices. +Enabled by default. +.Pp +If enabled, the hardware will drop any transmitted Ethertype 0x88cc LLDP frames +that do not originate from the hardware. +This must be disabled in order to use LLDP daemon software such as +.Xr lldpd 8 . +.It Va hw.ice.debug.ice_tx_balance_en +Set to 1 to allow the driver to use the 5-layer Tx Scheduler tree topology if +configured by the DDP package. +.Pp +Enabled by default. +.El +.Sh SYSCTL VARIABLES +.Bl -tag -width indent +.It Va dev.ice.#.current_speed +This is a display of the current link speed of the interface. +This is expected to match the speed of the media type in-use displayed by +.Xr ifconfig 8 . +.It Va dev.ice.#.fw_version +Displays the current firmware and NVM versions of the adapter. +This information should be submitted along with any support requests. +.It Va dev.ice.#.ddp_version +Displays the current DDP package version downloaded to the adapter. +This information should be submitted along with any support requests. +.It Va dev.ice.#.pba_number +Displays the Product Board Assembly Number. +May be used to help identify the type of adapter in use. +This sysctl may not exist depending on the adapter type. +.It Va dev.ice.#.hw.mac.* +This sysctl tree contains statistics collected by the hardware for the port. +.El +.Sh INTERRUPT STORMS +It is important to note that 100G operation can generate high +numbers of interrupts, often incorrectly being interpreted as +a storm condition in the kernel. +It is suggested that this be resolved by setting +.Va hw.intr_storm_threshold +to 0. +.Sh IOVCTL OPTIONS +The driver supports additional optional parameters for created VFs +(Virtual Functions) when using +.Xr iovctl 8 : +.Bl -tag -width indent +.It mac-addr Pq unicast-mac +Set the Ethernet MAC address that the VF will use. +If unspecified, the VF will use a randomly generated MAC address and +.Dq allow-set-mac +will be set to true. +.It mac-anti-spoof Pq bool +Prevent the VF from sending Ethernet frames with a source address +that does not match its own. +Enabled by default. +.It allow-set-mac Pq bool +Allow the VF to set its own Ethernet MAC address. +Disallowed by default. +.It allow-promisc Pq bool +Allow the VF to inspect all of the traffic sent to the port that it is created +on. +Disabled by default. +.It num-queues Pq uint16_t +Specify the number of queues the VF will have. +By default, this is set to the number of MSI\-X vectors supported by the VF +minus one. +.It mirror-src-vsi Pq uint16_t +Specify which VSI the VF will mirror traffic from by setting this to a value +other than \-1. +All traffic from that VSI will be mirrored to this VF. +Can be used as an alternative method to mirror RDMA traffic to another +interface than the method described in the +.Sx RDMA Monitoring +section. +Not affected by the +.Dq allow-promisc +parameter. +.It max-vlan-allowed Pq uint16_t +Specify maximum number of VLAN filters that the VF can use. +Receiving traffic on a VLAN requires a hardware filter which are a finite +resource; this is used to prevent a VF from starving other VFs or the PF of +filter resources. +By default, this is set to 16. +.It max-mac-filters Pq uint16_t +Specify maximum number of MAC address filters that the VF can use. +Each allowed MAC address requires a hardware filter which are a finite +resource; this is used to prevent a VF from starving other VFs or the PF of +filter resources. +The VF's default mac address does not count towards this limit. +By default, this is set to 64. +.El +.Pp +An up to date list of parameters and their defaults can be found by using +.Xr iovctl 8 +with the +.Fl S +option. +.Pp +For more information on standard and mandatory parameters, see +.Xr iovctl.conf 5 . +.Sh SUPPORT +For general information and support, go to the Intel support website at: +.Lk http://www.intel.com/support/ . +.Pp +If an issue is identified with this driver with a supported adapter, +email all the specific information related to the issue to +.Aq Mt freebsd@intel.com . +.Sh SEE ALSO +.Xr iflib 4 , +.Xr vlan 4 , +.Xr ifconfig 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 12.2 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Intel Corporation Aq Mt freebsd@intel.com . diff --git a/share/man/man4/icmp.4 b/share/man/man4/icmp.4 index 7bc844edd3c0..c8c92a794e24 100644 --- a/share/man/man4/icmp.4 +++ b/share/man/man4/icmp.4 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2022 +.Dd December 11, 2024 .Dt ICMP 4 .Os .Sh NAME @@ -169,10 +169,31 @@ Defaults to false. Enable/disable dropping of ICMP Redirect packets. Defaults to false. .It Va icmplim -.Pq Vt integer -Bandwidth limit for ICMP replies in packets/second. +.Pq Vt unsigned integer +Mean rate limit for replies in packets/second. +The actual limit is +.Va icmplim +plus a random jitter limited by +.Va icmplim_jitter . If set to zero, no limiting will occur. Defaults to 200. +.It Va icmplim_jitter +.Pq Vt unsigned integer +A random jitter between the negative of +.Va icmplim_jitter +and +.Va icmplim_jitter +is applied to +.Va icmplim +for limiting the sending rate of replies. +.Va icmplim_jitter +must be smaller than +.Va icmplim , +if +.Va icmplim +is not zero. +If set to zero, no jitter will be applied. +Defaults to 16. .It Va icmplim_output .Pq Vt boolean Enable/disable logging of ICMP replies bandwidth limiting. diff --git a/share/man/man4/igc.4 b/share/man/man4/igc.4 index cf36e584a679..a67ed1c15ee8 100644 --- a/share/man/man4/igc.4 +++ b/share/man/man4/igc.4 @@ -81,13 +81,29 @@ driver supports the following models: .Pp .Bl -bullet -compact .It +I220-V +.It +I221-V +.It I225-LM .It +I225-LMvP(2) +.It I225-V .It -I225-IT +I225-IT, I225-IT(2) +.It +I225-K, I225-K(2) +.It +I226-LM +.It +I226-LMvP +.It +I226-V +.It +I226-IT .It -I225-K +I226-K .El .Sh LOADER TUNABLES Tunables can be set at the @@ -100,21 +116,6 @@ Disable or enable hardware stripping of CRC field. This is mostly useful on BMC/IPMI shared interfaces where stripping the CRC causes remote access over IPMI to fail. Default 0 (enabled). -.It Va hw.igc.rx_int_delay -This value delays the generation of receive interrupts in units -of 1.024 microseconds. -The default value is 0, since adapters may hang with this feature being -enabled. -.It Va hw.igc.rx_abs_int_delay -If hw.igc.rx_int_delay is non-zero, this tunable limits the -maximum delay in which a receive interrupt is generated. -.It Va hw.igc.tx_int_delay -This value delays the generation of transmit interrupts in units -of 1.024 microseconds. -The default value is 64. -.It Va hw.igc.tx_abs_int_delay -If hw.igc.tx_int_delay is non-zero, this tunable limits the -maximum delay in which a transmit interrupt is generated. .It Va hw.igc.sbp Show bad packets when in promiscuous mode. Default is false. diff --git a/share/man/man4/iicsmb.4 b/share/man/man4/iicsmb.4 index b6f5e39ce5cc..ffa38000659f 100644 --- a/share/man/man4/iicsmb.4 +++ b/share/man/man4/iicsmb.4 @@ -1,5 +1,7 @@ -.\" Copyright (c) 1998, Nicolas Souchu -.\" All rights reserved. +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 1998, Nicolas Souchu. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -27,7 +29,7 @@ .Os .Sh NAME .Nm iicsmb -.Nd I2C to SMB bridge +.Nd I2C to SMBus bridge .Sh SYNOPSIS .Cd "device iicsmb" .Pp diff --git a/share/man/man4/inet.4 b/share/man/man4/inet.4 index a12dec49caea..08ca67a7edad 100644 --- a/share/man/man4/inet.4 +++ b/share/man/man4/inet.4 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 8, 2022 +.Dd December 31, 2024 .Dt INET 4 .Os .Sh NAME @@ -169,11 +169,11 @@ The following general variables are defined: .It Va accept_sourceroute Boolean: enable/disable accepting of source-routed IP packets (default false). .It Va allow_net0 -Boolean: allow experimental use of addresses in 0.0.0.0/8 as endpoints, -and allow forwarding of packets with these addresses. +Boolean: allow forwarding of, and ICMP responses to, packets with addresses in +0.0.0.0/8. .It Va allow_net240 -Boolean: allow experimental use of addresses in 240.0.0.0/4 as endpoints, -and allow forwarding of packets with these addresses. +Boolean: allow forwarding of, and ICMP responses to, packets with addresses in +240.0.0.0/4. .It Va curfrags Integer: Current number of IPv4 fragments across all reassembly queues in all VNETs (read-only). diff --git a/share/man/man4/intro.4 b/share/man/man4/intro.4 index 9b22e89ff6c3..e4caf6690efb 100644 --- a/share/man/man4/intro.4 +++ b/share/man/man4/intro.4 @@ -77,7 +77,7 @@ are accessed through sometimes also called .Em special files . They are located within instances of the -.Xr devfs 5 +.Xr devfs 4 filesystem, which is conventionally mounted on the directory .Pa /dev in the file system hierarchy @@ -85,7 +85,7 @@ in the file system hierarchy .Xr hier 7 ) . .Pp The -.Xr devfs 5 +.Xr devfs 4 filesystem creates or removes device nodes automatically according to the physical hardware recognized as present at any given time. For pseudo-devices, device nodes may be created and removed dynamically @@ -104,7 +104,7 @@ or set using the command. In the latter case, different rules may be used to make different sets of devices visible within different instances of the -.Xr devfs 5 +.Xr devfs 4 filesystem, which may be used, for example, to prevent jailed subsystems from accessing unsafe devices. Manual changes to device @@ -200,7 +200,7 @@ device. .Xr select 2 , .Xr socket 2 , .Xr write 2 , -.Xr devfs 5 , +.Xr devfs 4 , .Xr hier 7 , .Xr config 8 .Sh HISTORY diff --git a/share/man/man4/ip17x.4 b/share/man/man4/ip17x.4 new file mode 100644 index 000000000000..ac5c989020a5 --- /dev/null +++ b/share/man/man4/ip17x.4 @@ -0,0 +1,42 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 18, 2025 +.Dt IP17X 4 +.Sh NAME +.Nm ip17x +.Nd IC Plus IP17x series Fast Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd device etherswitch +.Cd device ip17x +.Sh DESCRIPTION +The +.Nm +driver supports the +IC Plus IP17X series Fast Ethernet switch controllers. +.Sh HARDWARE +The +.Nm +driver supports the following Fast Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +IC Plus IP178C +.It +IC Plus IP175D +.It +IC Plus IP175C +.It +IC Plus IP175A +.El +.Sh SEE ALSO +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 10.0 . diff --git a/share/man/man4/ipfirewall.4 b/share/man/man4/ipfirewall.4 index bfc571bcb595..691ed3d331c0 100644 --- a/share/man/man4/ipfirewall.4 +++ b/share/man/man4/ipfirewall.4 @@ -149,11 +149,11 @@ man page for a complete description of the capabilities and how to use it. .Sh SEE ALSO .Xr setsockopt 2 , +.Xr libalias 3 , .Xr divert 4 , .Xr ip 4 , .Xr ip6 4 , .Xr ipfw 8 , -.Xr libalias 3 , .Xr natd 8 , .Xr sysctl 8 , .Xr syslogd 8 , diff --git a/share/man/man4/ipsec.4 b/share/man/man4/ipsec.4 index c5c9ed863385..9fd6207c2f14 100644 --- a/share/man/man4/ipsec.4 +++ b/share/man/man4/ipsec.4 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 6, 2017 +.Dd March 4, 2025 .Dt IPSEC 4 .Os .Sh NAME @@ -182,7 +182,7 @@ is synonymous with which requires that a security association must exist for the packets to move, and not be dropped. These terms are defined in -.Xr ipsec_set_policy 8 . +.Xr ipsec_set_policy 3 . .Bl -column net.inet6.ipsec6.esp_trans_deflev integerxxx .It Sy "Name Type Changeable" .It "net.inet.ipsec.esp_trans_deflev integer yes" @@ -239,6 +239,7 @@ for tweaking the kernel's IPsec behavior: .It "net.inet.ipsec.debug integer yes" .It "net.inet.ipsec.natt_cksum_policy integer yes" .It "net.inet.ipsec.check_policy_history integer yes" +.It "net.inet.ipsec.random_id integer yes" .It "net.inet6.ipsec6.ecn integer yes" .It "net.inet6.ipsec6.debug integer yes" .El @@ -298,6 +299,9 @@ have been decrypted and authenticated. If this variable is set to a non-zero value, each packet handled by IPsec is checked against the history of IPsec security associations. The IPsec security protocol, mode, and SA addresses must match. +.It Li ipsec.random_id +Enables randomization of encapsulated IPv4 packets ID. +By default, ID randomization is not enabled. .El .Pp Variables under the @@ -333,8 +337,8 @@ routines from looking into the IP payload. .Xr ipsec_set_policy 3 , .Xr crypto 4 , .Xr enc 4 , -.Xr if_ipsec 4 , .Xr icmp6 4 , +.Xr if_ipsec 4 , .Xr intro 4 , .Xr ip6 4 , .Xr setkey 8 , diff --git a/share/man/man4/ipw.4 b/share/man/man4/ipw.4 index c1010b798290..0ebee0f1e6eb 100644 --- a/share/man/man4/ipw.4 +++ b/share/man/man4/ipw.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2004-2006 .\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. .\" @@ -23,12 +26,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 15, 2015 +.Dd November 10, 2024 .Dt IPW 4 .Os .Sh NAME .Nm ipw -.Nd "Intel PRO/Wireless 2100 IEEE 802.11 driver" +.Nd Intel PRO/Wireless 2100 IEEE 802.11a/b driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -57,19 +60,14 @@ legal.intel_ipw.license_ack=1 .Sh DESCRIPTION The .Nm -driver provides support for the -.Tn Intel -PRO/Wireless 2100 MiniPCI network adapter. -.Nm -supports +driver provides support for Intel PRO/Wireless 2100 802.11a/b +wireless network devices in .Cm station , .Cm adhoc , and .Cm monitor mode operation. Only one virtual interface may be configured at any time. -For more information on configuring this device, see -.Xr ifconfig 8 . .Pp This driver requires the firmware built with the .Nm ipwfw @@ -80,28 +78,34 @@ must be agreed by adding the following line to .Xr loader.conf 5 : .Pp .Dl "legal.intel_ipw.license_ack=1" +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver provides support for the +Intel PRO/Wireless 2100a/b MiniPCI network adapter. .Sh FILES -.Bl -tag -width ".Pa /usr/share/doc/legal/intel_ipw.LICENSE" -compact +.Bl -tag -width "/usr/share/doc/legal/intel_ipw.LICENSE" -compact .It Pa /usr/share/doc/legal/intel_ipw.LICENSE .Nm firmware license .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev ipw0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev ipw0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev ipw0 ssid my_net up" +.Dl ifconfig wlan create wlandev ipw0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev ipw0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -144,6 +148,7 @@ This should not happen. .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr networking 7 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh AUTHORS diff --git a/share/man/man4/isp.4 b/share/man/man4/isp.4 index 350a0ea59a64..6fea63fdd5d5 100644 --- a/share/man/man4/isp.4 +++ b/share/man/man4/isp.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-3-Clause +.\" .\" Copyright (c) 2009-2020 Alexander Motin <mav@FreeBSD.org> .\" Copyright (c) 2006 Marcus Alves Grando .\" Copyright (c) 1998-2001 Matthew Jacob, for NASA/Ames Research Center @@ -24,7 +27,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 27, 2023 +.Dd April 8, 2025 .Dt ISP 4 .Os .Sh NAME @@ -79,6 +82,23 @@ the tape drive. FC-Tape is automatically enabled when connecting controller that supports it to a target that supports it. It may be disabled using configuration and hint options described below. +.Sh HARDWARE +The +.Nm +driver supports the following optical Fibre Chanel adapters: +.Bl -column "Qlogic 2690/2692/2694 (2684/2692)" "Speed" "PCI-X" +.It Model: Ta Speed: Ta Bus: +.It Qlogic QLE2874 (2814) Ta 64Gb Ta PCIe +.It Qlogic QLE2870/QLE2872 (2812) Ta 64Gb Ta PCIe +.It Qlogic QLE2774 (2814) Ta 32Gb Ta PCIe +.It Qlogic QLE2770/QLE2772 (2812) Ta 32Gb Ta PCIe +.It Qlogic 2740/2742/2764 (2722/2714) Ta 32Gb Ta PCIe +.It Qlogic 2690/2692/2694 (2684/2692) Ta 16Gb Ta PCIe +.It Qlogic 267x/836x (2031/8031) FCoE Ta 16Gb Ta PCIe +.It Qlogic 256x (2532) Ta 8Gb Ta PCIe +.It Qlogic 246x (2432) Ta 4Gb Ta PCIe +.It Qlogic 2422 Ta 4Gb Ta PCI-X +.El .Sh FIRMWARE Firmware loading is supported and handled by .Xr firmware 9 . @@ -89,32 +109,6 @@ module. It is strongly recommended that you use the firmware available from .Xr ispfw 4 as it is the one that most likely has been tested with this driver. -.Sh HARDWARE -Cards supported by the -.Nm -driver include: -.Bl -tag -width xxxxxx -offset indent -.It Qlogic 2422 -Optical 4Gb Fibre Channel PCI-X cards. -.It Qlogic 246x (aka 2432) -Optical 4Gb Fibre Channel PCIe cards. -.It Qlogic 256x (aka 2532) -Optical 8Gb Fibre Channel PCIe cards. -.It Qlogic 267x/836x (aka 2031/8031) -Optical 16Gb FC/FCoE PCIe cards. -.It Qlogic 2690/2692/2694 (aka 2684/2692) -Optical 16Gb Fibre Channel PCIe cards. -.It Qlogic 2740/2742/2764 (aka 2722/2714) -Optical 32Gb Fibre Channel PCIe cards. -.It Qlogic QLE2770/QLE2772 (aka 2812) -Optical 32Gb Fibre Channel PCIe cards. -.It Qlogic QLE2774 (aka 2814) -Optical 32Gb Fibre Channel PCIe cards. -.It Qlogic QLE2870/QLE2872 (aka 2812) -Optical 64Gb Fibre Channel PCIe cards. -.It Qlogic QLE2874 (aka 2814) -Optical 64Gb Fibre Channel PCIe cards. -.El .Sh CONFIGURATION OPTIONS Target mode support for Fibre Channel adapters may be enabled with the .Pp @@ -141,6 +135,21 @@ Limit on number of Extended Message Signaled Interrupts (MSI-X) to be used. .It Va hint.isp. Ns Ar N Ns Va .fwload_disable A hint value to disable loading of firmware provided by .Xr ispfw 4 . +.It Va hint.isp. Ns Ar N Ns Va .fwload_force +A hint value to prefer firmware provided by +.Xr ispfw 4 , +even if it is older than the firmware in flash on the board. +If fwload_disable is also specified, fwload_force will be ignored. +.Pp +By default, with 27XX and newer controllers, the +.Xr isp 4 +driver will use the newer +firmware. +For older controllers, the +.Xr isp 4 +driver will use the firmware provided by +.Xr ispfw 4 +if it is available, and otherwise use the firmware in flash on the board. .It Va hint.isp. Ns Ar N Ns Va .ignore_nvram A hint value to ignore board NVRAM settings for. Otherwise use NVRAM settings. @@ -152,11 +161,11 @@ Supported values are: .Pp .Bl -tag -width ".Li lport-only" -compact .It Li lport -Prefer loopback and fallback to point to point. +Prefer arbitrated loop and fallback to point to point. .It Li nport -Prefer point to point and fallback to loopback. +Prefer point to point and fallback to arbitrated loop. .It Li lport-only -Loopback only. +Arbitrated loop only. .It Li nport-only Point to point only. .El diff --git a/share/man/man4/iwi.4 b/share/man/man4/iwi.4 index 9de9b3e6c490..31ef4ec83d32 100644 --- a/share/man/man4/iwi.4 +++ b/share/man/man4/iwi.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2004-2006 .\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. .\" @@ -23,12 +26,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 15, 2015 +.Dd November 10, 2024 .Dt IWI 4 .Os .Sh NAME .Nm iwi -.Nd "Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 driver" +.Nd Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 network driver .Sh SYNOPSIS To compile this driver into the kernel, include the following lines in your @@ -57,19 +60,14 @@ legal.intel_iwi.license_ack=1 .Sh DESCRIPTION The .Nm -driver provides support for -.Tn Intel -PRO/Wireless 2200BG/2915ABG MiniPCI and 2225BG PCI network adapters. -.Nm -supports +driver provides support for Intel PRO/Wireless 2200BG/2225BG/2915ABG +IEEE 802.11a/b/g wireless network devices in .Cm station , .Cm adhoc , and .Cm monitor mode operation. Only one virtual interface may be configured at any time. -For more information on configuring this device, see -.Xr ifconfig 8 . .Pp This driver requires the firmware built with the .Nm iwifw @@ -80,28 +78,42 @@ must be agreed by adding the following line to .Xr loader.conf 5 : .Pp .Dl "legal.intel_iwi.license_ack=1" +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver supports the following wireless network devices: +.Pp +.Bl -bullet -compact +.It +Intel PRO/Wireless 2200BG MiniPCI Network Connection +.It +Intel PRO/Wireless 2225BG PCI Network Connection +.It +Intel PRO/Wireless 2915ABG MiniPCI Network Connection +.El .Sh FILES -.Bl -tag -width ".Pa /usr/share/doc/legal/intel_iwi.LICENSE" -compact +.Bl -tag -width "/usr/share/doc/legal/intel_iwi.LICENSE" -compact .It Pa /usr/share/doc/legal/intel_iwi.LICENSE .Nm firmware license .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev iwi0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev iwi0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev iwi0 ssid my_net up" +.Dl ifconfig wlan create wlandev iwi0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev iwi0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -149,6 +161,7 @@ This should not happen. .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr networking 7 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh AUTHORS diff --git a/share/man/man4/iwlwifi.4 b/share/man/man4/iwlwifi.4 index 1cf61c0008b5..4a251f239a55 100644 --- a/share/man/man4/iwlwifi.4 +++ b/share/man/man4/iwlwifi.4 @@ -1,5 +1,7 @@ -.\"- -.\" Copyright (c) 2021-2023 The FreeBSD Foundation +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2021-2025 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -25,12 +27,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 21, 2023 +.Dd June 13, 2025 .Dt IWLWIFI 4 .Os .Sh NAME .Nm iwlwifi -.Nd Intel IEEE 802.11a/b/g/n/ac/ax wireless network driver +.Nd Intel IEEE 802.11a/b/g/n/ac/ax/be wireless network driver .Sh SYNOPSIS The driver will auto-load without any user interaction using .Xr devmatch 8 @@ -48,22 +50,94 @@ kld_list="${kld_list} if_iwlwifi" The driver should automatically load any .Xr iwlwififw 4 firmware needed for the particular chipset. +See section +.Sx "FILES" +below for how to install the firmware. .Pp -It is discouraged to load the driver from +It is not possible to load the driver from .Xr loader 8 . .Sh DESCRIPTION The .Nm -driver is derived from Intel's Linux iwlwifi driver and provides support for -all chipsets supported by the -.Em mvm -part of that driver. +driver provides support for Intel Wireless network devices. +.Pp +.Nm +is derived from Intel's Linux iwlwifi driver. +The +.Xr iwm 4 +and +.Xr iwx 4 +drivers together are approximately equivalent to Intel's Linux iwlwifi/mvm +driver. +.Pp +In addition +.Nm +already supports Intel's Linux iwlwifi/mld chipsets. .Pp +.Nm +still complements the +.Xr iwn 4 +driver which supports older chipsets and would be equivalent to +Intel's Linux iwlwifi/dvm, which +.Nm +does not support. +.Pp +The driver uses the +.\" No LinuxKPI man pages so no .Xr here. +.Sy linuxkpi_wlan +and +.Sy linuxkpi +compat framework to bridge between the Linux and +native +.Fx +driver code as well as to the native +.Xr net80211 4 +wireless stack. +.Sh HARDWARE +The +.Nm +driver supports PCIe devices from the +.Sy mvm +sub-driver with the following chipset generations: +.Pp +.\" awk -F\\t '{ print $5 }' ~/tmp/iwlwifi_pci_ids_name.txt | \ +.\" grep -v undefined | sort -V | uniq | grep -v ^$ | \ +.\" awk '{ printf ".It\n%s\n", $0 }' .Bl -bullet -compact -.\" --------------------------------------------------------------------- +.It +7000 +.It +8000 +.It +9000 +.It +22000 +.It +AX210 +.El +.Pp +The +.Nm +driver supports PCIe devices from the +.Sy mld +sub-driver with the following chipset generations: +.Pp +.Bl -bullet -compact +.It +BZ +.It +SC +.El +.Pp +These chipset generations match the following common device names: +.Pp +.Bl -bullet -compact +.\" -------------------------------------------------------------------- .\" This list is manually generated from a sysctl and post-processing. .\" Edits will be overwritten on next update. -.\" --------------------------------------------------------------------- +.\" awk -F\\t '{ if ($2 == "") { next; } if (seen[$2]) { next; } \ +.\" seen[$2]=1; printf ".It\n%s\n", $2; }' iwlwifi_pci_ids_name.txt +.\" -------------------------------------------------------------------- .It Intel(R) Dual Band Wireless AC 7260 .It @@ -171,50 +245,82 @@ Intel(R) Wi-Fi 6 AX101 .It Intel(R) Wi-Fi 6 AX203 .It -Intel(R) Wi-Fi 6E AX221 160MHz -.It Intel(R) Wi-Fi 6E AX231 160MHz .It -Intel(R) TBD Bz device +Intel(R) Wi-Fi 7 BE201 320MHz +.It +Intel(R) Wi-Fi 7 BE200 320MHz .It -Intel(R) Wi-Fi 6 AX204 160MHz +Intel(R) Wi-Fi 7 BE202 160MHz .It Intel(R) TBD Sc device -.\" --------------------------------------------------------------------- +.It +Intel(R) TBD Sc2 device +.It +Intel(R) TBD Sc2f device +.\" -------------------------------------------------------------------- .El -.Pp +.Sh LOADER TUNABLES +The .Nm -will be a successor to -.Xr iwm 4 -and may supersede that driver in the future. -It still complements the -.Xr iwn 4 -driver which supports older chipsets. +driver supports the following +.Xr loader 8 +tunable and read-only +.Xr sysctl 8 +variables: +.Bl -tag -width "compat.linuxkpi.iwlwifi_disable_11ac" +.It Va compat.linuxkpi.iwlwifi_11n_disable +Turn off 802.11n support in the driver. +Default +.Ql 1 . +.It Va compat.linuxkpi.iwlwifi_disable_11ac +Turn off 802.11ac support in the driver. +Default +.Ql 1 . +.El .Pp -The driver uses the -.\" No LinuxKPI man pages so no .Xr here. -.Em linuxkpi_wlan -and -.Em linuxkpi -compat framework to bridge between the Linux and -native +The names of the tunables are derived from the Linux iwlwifi driver +module parameters and are mapped automatically by +.Sy linuxkpi . +They were not adjusted so that they stay consistent with upstream +Linux, e.g., for documentation available and problem investigations. +This left their names inconsistent between themselves and incosistent to .Fx -driver code as well as to the native -.Xr net80211 4 -wireless stack. +style. .Pp -While +The tunables are automatically adjusted by the firmware package for +chipsets which can enable 11n and 11ac. +In case of problems a user may want to override the provided values +in +.Pa /boot/loader.conf.local +with the above defaults. +.Sh FILES +The .Nm -supports all 802.11 a/b/g/n/ac/ax -the compatibility code currently only supports 802.11 a/b/g modes. -Support for 802.11 n/ac is to come. 802.11ax and 6Ghz support are planned. -.Sh BUGS -Certainly. +driver requires firmware from +.Pa ports/net/wifi-firmware-iwlwifi-kmod . +This firmware package will be installed automatically with +.Xr fwget 8 +if the appropriate hardware is detected at installation or runtime. +.Pp +As a last resort for bootstrapping, individual firmware files can be +manually downloaded, e.g., on a different computer and transferred using a +.Xr umass 4 +device. +The firmware files can be found at +.Lk git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git +with names as requested by the driver. +Copies should be placed into the +.Pa /boot/firmware +directory. .Sh SEE ALSO .Xr iwlwififw 4 , .Xr iwm 4 , .Xr iwn 4 , +.Xr iwx 4 , .Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh HISTORY @@ -222,3 +328,14 @@ The .Nm driver first appeared in .Fx 13.1 . +802.11n and 802.11ac support for the 22000 and later chipsets first appeared in +.Fx 14.3 . +.Sh BUGS +Certainly. +.Pp +While +.Nm +supports 802.11a/b/g/n/ac/ax/be modes, +the compatibility code currently only supports 802.11a/b/g/n/ac modes. +802.11n/ac is only available on the 22000 and later chipset generations. +802.11ax/be and 6Ghz support are planned. diff --git a/share/man/man4/iwlwififw.4 b/share/man/man4/iwlwififw.4 index a377f6b51f78..45ee0e757c07 100644 --- a/share/man/man4/iwlwififw.4 +++ b/share/man/man4/iwlwififw.4 @@ -1,5 +1,7 @@ -.\"- -.\" Copyright (c) 2021-2023 The FreeBSD Foundation +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2021-2025 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -25,12 +27,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 21, 2023 -.Dt iwlwififw 4 +.Dd May 12, 2025 +.Dt IWLWIFIFW 4 .Os .Sh NAME .Nm iwlwififw -.Nd Firmware modules for Intel iwlwifi wireless network driver +.Nd Firmware for Intel iwlwifi wireless network driver .Sh SYNOPSIS The .Xr iwlwifi 4 @@ -38,1325 +40,1544 @@ driver should auto-load any firmware needed. It is discouraged to load the driver or firmware manually from .Xr loader 8 . .Sh DESCRIPTION -Multiple modules provide access to firmware for the various chipset -models supported by the +Firmware files are available from +.Xr ports 7 +for the various chipset models supported +by the .Xr iwlwifi 4 driver. +Modern chipsets often require a +.Pa .ucode +and an accompanying +.Pa .pnvm +file. +.Pp +One can use +.Xr fwget 8 +to install the correct firmware package. .Pp -.Bl -column -compact "Vendor" "Device" "Subv. " "Subd. " "Firmware-Prefix" +The list is provided as a reference as to with file prefix is needed for +a specific card as far as it can be determined and the port flavor. +.Pp +.Bl -column -compact "Vendor" "Device" "Subv. " "Subd. " "Flavor" "Firmware-Prefix" .It Ar Name -.It Ar Vendor Ta Ar Device Ta Ar Subv. Ta Ar Subd. Ta Ar Firmware-Prefix -.% --------------------------------------------------------------------- -.% This list is manually generated from a sysctl and post-processing. -.% Edits will be overwritten on next update. -.% --------------------------------------------------------------------- +.It Ar Vendor Ta Ar Device Ta Ar Subv. Ta Ar Subd. Ta Ar Flavor Ta Ar Firmware-Prefix +.\" --------------------------------------------------------------------- +.\" This list is manually generated from a sysctl and post-processing +.\" by sys/contrib/dev/iwlwifi/zzz_fw_ports_fwget.sh generating the list. +.\" Edits will be overwritten on next update. +.\" --------------------------------------------------------------------- +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless AC 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta 7000 Ta iwlwifi-7260 +.It "" +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta 7000 Ta iwlwifi-7260 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260 +.It Intel(R) Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260 +.It Intel(R) Wireless N 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3160 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta 7000 Ta iwlwifi-3160 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta 7000 Ta iwlwifi-7265D .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 3168 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta 7000 Ta iwlwifi-3168 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260 +.It Intel(R) Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless N 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 7265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta 7000 Ta iwlwifi-7265 .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless N 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 4165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 4165 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta 8000 Ta iwlwifi-8000C .It "" -.It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265 +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8275 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8275 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8275 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8275 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0012 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x0014 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta iwlwifi-8000C +.It Intel(R) Dual Band Wireless AC 8265 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x24fd Ta any Ta 0x9074 Ta 8000 Ta iwlwifi-8265 .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x271b Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x271c Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x30dc Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x31dc Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x9df0 Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa370 Ta any Ta any Ta 9000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2723 Ta any Ta any Ta 22000 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f1 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7f70 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2729 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7e40 Ta any Ta any Ta AX210 Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2727 Ta any Ta any Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x272d Ta any Ta any Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x272b Ta any Ta any Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless N 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 000000 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless N 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0090 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 4165 -.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0094 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 4165 -.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0098 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x009c Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00c0 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00c4 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00e0 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00e4 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00e8 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta iwlwifi-8000C +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x00ec Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0100 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0110 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0114 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0118 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x011c Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0310 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0314 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0510 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x0a10 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1671 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1672 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1771 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1772 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1791 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x1792 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x4090 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x40c4 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x40e0 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x4110 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa840 Ta any Ta 0x4314 Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7740 Ta any Ta any Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4d40 Ta any Ta any Ta BZ Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xe440 Ta any Ta any Ta SC Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xe340 Ta any Ta any Ta SC Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0012 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xd340 Ta any Ta any Ta SC Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0014 Ta iwlwifi-8265 +.It (unknown) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x6e70 Ta any Ta any Ta SC Ta (unknown) .It "" -.It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x9074 Ta iwlwifi-8265 +.It Killer (R) Wireless-AC 1550 Wireless Network Adapter (9260NGW) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta 0x1550 Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550 Wireless Network Adapter (9260NGW) 160MHz -.It 0x8086 Ta 0x2526 Ta any Ta 0x1550 Ta iwlwifi-9260-th-b0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x2526 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x2526 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x30dc Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x30dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x30dc Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x30dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x31dc Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x31dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x31dc Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x31dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa370 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0xa370 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa370 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0xa370 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1691 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1692 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f1 Ta any Ta 0x1692 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x51f1 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1691 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1692 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1691 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1692 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1691 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0 +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1692 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0 +.It Intel(R) Wireless-AC 9260-1 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x271c Ta any Ta 0x0214 Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9260-1 -.It 0x8086 Ta 0x271c Ta any Ta 0x0214 Ta iwlwifi-9260-th-b0-jf-b0 +.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7e40 Ta any Ta 0x1691 Ta AX210 Ta (null) .It "" -.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W) -.It 0x8086 Ta 0x7e40 Ta any Ta 0x1691 Ta (null) +.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7e40 Ta any Ta 0x1692 Ta AX210 Ta (null) .It "" -.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW) -.It 0x8086 Ta 0x7e40 Ta any Ta 0x1692 Ta (null) +.It Intel(R) Wi-Fi 6 AX200 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2723 Ta any Ta any Ta 22000 Ta iwlwifi-cc-a0 .It "" -.It Intel(R) Wi-Fi 6 AX200 160MHz -.It 0x8086 Ta 0x2723 Ta any Ta any Ta iwlwifi-cc-a0 +.It Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2723 Ta any Ta 0x1653 Ta 22000 Ta iwlwifi-cc-a0 .It "" -.It Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W) -.It 0x8086 Ta 0x2723 Ta any Ta 0x1653 Ta iwlwifi-cc-a0 +.It Killer(R) Wi-Fi 6 AX1650x 160MHz Wireless Network Adapter (200NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2723 Ta any Ta 0x1654 Ta 22000 Ta iwlwifi-cc-a0 .It "" -.It Killer(R) Wi-Fi 6 AX1650x 160MHz Wireless Network Adapter (200NGW) -.It 0x8086 Ta 0x2723 Ta any Ta 0x1654 Ta iwlwifi-cc-a0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x43f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x43f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x43f0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x43f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0a10 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0a10 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0xa0f0 Ta any Ta 0x6074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0xa0f0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x6074 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x6074 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x0310 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x02f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x02f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x02f0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x02f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x0310 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x06f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x06f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x06f0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x06f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x0310 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x34f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x34f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x34f0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x34f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x0310 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x3df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x3df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x3df0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x3df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x0070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x0074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x0078 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x007c Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x0310 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x1651 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW) -.It 0x8086 Ta 0x4df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0 +.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x1652 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W) -.It 0x8086 Ta 0x4df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x2074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x4070 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x4df0 Ta any Ta 0x6074 Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta 0x4df0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0090 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0020 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0020 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x2020 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x2020 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0024 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0024 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0310 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0310 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0510 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0510 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x0a10 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x0a10 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0xe020 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0xe020 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0xe024 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0xe024 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x4020 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x4020 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x6020 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x6020 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6 AX210 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x6024 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX210 160MHz -.It 0x8086 Ta 0x2725 Ta any Ta 0x6024 Ta iwlwifi-ty-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675w 160MHz Wireless Network Adapter (210D2W) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x1673 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675w 160MHz Wireless Network Adapter (210D2W) -.It 0x8086 Ta 0x2725 Ta any Ta 0x1673 Ta iwlwifi-ty-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675x 160MHz Wireless Network Adapter (210NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2725 Ta any Ta 0x1674 Ta AX210 Ta iwlwifi-ty-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675x 160MHz Wireless Network Adapter (210NGW) -.It 0x8086 Ta 0x2725 Ta any Ta 0x1674 Ta iwlwifi-ty-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x0090 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x0098 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX411 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x00b0 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Intel(R) Wi-Fi 6E AX411 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x0310 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x0510 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x0a10 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x0090 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x0098 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX411 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x00b0 Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Intel(R) Wi-Fi 6E AX411 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x0310 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x0510 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x0a10 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1551 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1552 Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2726 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x2726 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2726 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x2726 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f0 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x51f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f1 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x51f1 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x51f1 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x51f1 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x54f0 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x54f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7a70 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7a70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7af0 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7af0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7f70 Ta any Ta 0x1671 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7f70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7f70 Ta any Ta 0x1672 Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7f70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0 +.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7e40 Ta any Ta 0x1671 Ta AX210 Ta (null) .It "" -.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7e40 Ta any Ta 0x1671 Ta (null) +.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x7e40 Ta any Ta 0x1672 Ta AX210 Ta (null) .It "" -.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW) -.It 0x8086 Ta 0x7e40 Ta any Ta 0x1672 Ta (null) +.It Intel(R) Wireless-AC 9461 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9461 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9462 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9462 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9560 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9560 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta iwlwifi Ta iwlwifi-9000-pu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0 +.It Intel(R) Wireless-AC 9270 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9270 160MHz -.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9270 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9270 -.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9162 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9162 160MHz -.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9162 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9162 -.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9260 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9260 160MHz -.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9260 Ta Ta Ta Ta Ta +.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi Ta iwlwifi-9260-th-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9260 -.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0 +.It Intel(R) Wireless-AC 9461 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9461 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9462 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9462 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9560 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9560 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1551 Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-b0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1552 Ta 22000 Ta iwlwifi-Qu-b0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-b0-jf-b0 +.It Intel(R) Wireless-AC 9461 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9461 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9462 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9462 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9560 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9560 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1551 Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-c0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1552 Ta 22000 Ta iwlwifi-Qu-c0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-c0-jf-b0 +.It Intel(R) Wireless-AC 9461 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wireless-AC 9461 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wireless-AC 9462 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wireless-AC 9462 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wireless-AC 9560 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wireless-AC 9560 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0 +.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1551 Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-QuZ-a0-jf-b0 +.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta 0x1552 Ta 22000 Ta iwlwifi-QuZ-a0-jf-b0 .It "" -.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) -.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-QuZ-a0-jf-b0 +.It Intel(R) Wi-Fi 6 AX101 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX101 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX203 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-b0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX203 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0 +.It Intel(R) Wi-Fi 6 AX101 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX101 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0 +.It Intel(R) Wi-Fi 6 AX203 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX203 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-Qu-c0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0 +.It Intel(R) Wi-Fi 6 AX101 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX101 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX203 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX203 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta 22000 Ta iwlwifi-QuZ-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta (null) .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta (null) .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) Wi-Fi 6E AX231 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta (null) .It "" -.It Intel(R) Wi-Fi 6E AX221 160MHz -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) Wi-Fi 6 AX203 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6E AX231 160MHz -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) Wi-Fi 6 AX101 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX203 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0 +.It Intel(R) Wi-Fi 6 AX201 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-hr-b0 .It "" -.It Intel(R) Wi-Fi 6 AX101 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0 +.It Intel(R) Wi-Fi 6E AX211 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-gf-a0 .It "" -.It Intel(R) Wi-Fi 6 AX201 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0 +.It Intel(R) Wi-Fi 6E AX411 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-gf4-a0 .It "" -.It Intel(R) Wi-Fi 6E AX211 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf-a0 +.It Intel(R) Wireless-AC 9560 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) Wi-Fi 6E AX411 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf4-a0 +.It Intel(R) Wireless-AC 9560 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) TBD Bz device -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) Wireless-AC 9461 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wireless-AC 9462 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9560 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wireless-AC 9461 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9461 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wireless-AC 9462 Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta AX210 Ta iwlwifi-so-a0-jf-b0 .It "" -.It Intel(R) Wireless-AC 9462 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wi-Fi 7 BE201 320MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta BZ Ta (null) .It "" -.It Intel(R) Wireless-AC 9461 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wi-Fi 7 BE200 320MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta BZ Ta (null) .It "" -.It Intel(R) Wireless-AC 9462 -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0 +.It Intel(R) Wi-Fi 7 BE202 160MHz Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta BZ Ta (null) .It "" -.It Intel(R) Wi-Fi 6 AX204 160MHz -.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-mr-a0 +.It Intel(R) TBD Sc device Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta SC Ta (null) .It "" -.It Intel(R) Wi-Fi 6 AX204 160MHz -.It 0x8086 Ta any Ta any Ta any Ta (null) +.It Intel(R) TBD Sc2 device Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta SC Ta (null) .It "" -.It Intel(R) TBD Sc device -.It 0x8086 Ta any Ta any Ta any Ta (null) -.% --------------------------------------------------------------------- +.It Intel(R) TBD Sc2f device Ta Ta Ta Ta Ta +.It 0x8086 Ta any Ta any Ta any Ta SC Ta (null) +.\" --------------------------------------------------------------------- .El .Pp -.Em Note: +.Em Note : some devices can only be determined correctly at run-time based on hardware registers (or by other special magic not replicated in the above listing). .Sh FILES A copy of the .Xr iwlwifi 4 -firmware license is installed at -.Em /usr/share/doc/legal/intel_iwlwifi_firmware.LICENCE . +firmware license is installed along with the +.Pa wifi-firmware-iwlwifi-kmod +package or the +.Pa ports/net/wifi-firmware-iwlwifi-kmod +port (or each of its flavors). .Sh SEE ALSO .Xr iwlwifi 4 , +.Xr fwget 8 , .Xr firmware 9 .Sh HISTORY The .Nm firmware modules first appeared in -.Fx 13.1 . +.Fx 13.1 +and were removed before +.Fx 14.3 +and replaced by +.Xr ports 7 +based firmware packages. diff --git a/share/man/man4/iwm.4 b/share/man/man4/iwm.4 index b810f7016e54..5249959cd3f6 100644 --- a/share/man/man4/iwm.4 +++ b/share/man/man4/iwm.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2004-2006 .\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. .\" @@ -23,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 20, 2024 +.Dd November 10, 2024 .Dt IWM 4 .Os .Sh NAME @@ -31,8 +34,7 @@ .Nd Intel IEEE 802.11ac wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, -include the following lines in your -kernel configuration file: +include the following lines in your kernel configuration file: .Bd -ragged -offset indent .Cd "device iwm" .Cd "device pci" @@ -79,55 +81,59 @@ iwm9260fw_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It Intel Dual Band Wireless AC 3160 -.It Intel Dual Band Wireless AC 3165 -.It Intel Dual Band Wireless AC 3168 -.It Intel Dual Band Wireless AC 7260 -.It Intel Dual Band Wireless AC 7265 -.It Intel Dual Band Wireless AC 8260 -.It Intel Dual Band Wireless AC 8265 -.It Intel Dual Band Wireless AC 9260 -.It Intel Dual Band Wireless AC 9270 -.It Intel Dual Band Wireless AC 946X -.It Intel Dual Band Wireless AC 9560 -.El -.Pp -.Nm -supports +driver supports running most Intel Wireless AC series network devices in .Cm station mode operation. Only one virtual interface may be configured at any time. -For more information on configuring this device, see -.Xr ifconfig 8 . -.Pp This driver requires the firmware built with the -.Nm iwmfw +.Xr iwmfw 4 module to work. .Pp -Currently, +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh HARDWARE +The .Nm -only supports 802.11b and 802.11g modes. -It will not associate to access points that are configured to operate only -in 802.11n or 802.11ac modes. +driver supports the following PCIe Wi-Fi devices: +.Pp +.Bl -bullet -compact +.It +Intel Dual Band Wireless AC 3160 +.It +Intel Dual Band Wireless AC 3165 +.It +Intel Dual Band Wireless AC 3168 +.It +Intel Dual Band Wireless AC 7260 +.It +Intel Dual Band Wireless AC 7265 +.It +Intel Dual Band Wireless AC 8260 +.It +Intel Dual Band Wireless AC 8265 +.It +Intel Dual Band Wireless AC 9260 +.It +Intel Dual Band Wireless AC 9270 +.It +Intel Dual Band Wireless AC 946X +.It +Intel Dual Band Wireless AC 9560 +.El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev iwm0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev iwm0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev iwm0 ssid my_net up" +.Dl ifconfig wlan create wlandev iwm0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev iwm0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -155,15 +161,16 @@ Verify the .Xr iwmfw 4 firmware module is present. .It "iwm%d: could not load boot firmware" -An attempt to upload the boot firmware image to the onboard microcontroller -failed. +An attempt to upload the boot firmware image +to the onboard microcontroller failed. This should not happen. .It "iwm%d: could not load microcode" -An attempt to upload the microcode image to the onboard microcontroller failed. +An attempt to upload the microcode image +to the onboard microcontroller failed. This should not happen. .It "iwm%d: could not load main firmware" -An attempt to upload the main firmware image to the onboard microcontroller -failed. +An attempt to upload the main firmware image +to the onboard microcontroller failed. This should not happen. .El .Sh SEE ALSO @@ -174,5 +181,12 @@ This should not happen. .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr networking 7 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 +.Sh BUGS +Currently, +.Nm +only supports 802.11a/b/g modes. +It will not associate to access points that are configured to operate +only in 802.11n/ac modes. diff --git a/share/man/man4/iwn.4 b/share/man/man4/iwn.4 index 1d9f50c38fee..55692a5386a5 100644 --- a/share/man/man4/iwn.4 +++ b/share/man/man4/iwn.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2004-2006 .\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. .\" @@ -23,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 30, 2021 +.Dd October 17, 2024 .Dt IWN 4 .Os .Sh NAME @@ -87,38 +90,7 @@ iwn6050fw_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It Intel Centrino Advanced-N 6200 -.It Intel Centrino Advanced-N 6205 -.It Intel Centrino Advanced-N 6230 -.It Intel Centrino Advanced-N 6235 -.It Intel Centrino Advanced-N + WiMAX 6250 -.It Intel Centrino Ultimate-N 6300 -.It Intel Centrino Wireless-N 100 -.It Intel Centrino Wireless-N 105 -.It Intel Centrino Wireless-N 130 -.It Intel Centrino Wireless-N 135 -.It Intel Centrino Wireless-N 1000 -.It Intel Centrino Wireless-N 1030 -.It Intel Centrino Wireless-N 2200 -.It Intel Centrino Wireless-N 2230 -.It Intel Centrino Wireless-N 4965 -.It Intel Centrino Wireless-N 5100 -.It Intel Centrino Wireless-N 6150 -.It Intel Centrino Wireless-N 6200 -.It Intel Centrino Wireless-N 6250 -.It Intel Centrino Wireless-N + WiMAX 6150 -.It Intel Ultimate N WiFi Link 5300 -.It Intel Wireless WiFi Link 4965 -.It Intel WiFi Link 5100 -.It Intel WiMAX/WiFi Link 5150 -.It Intel WiMAX/WiFi Link 5350 -.El -.Pp -.Nm -supports +driver supports .Cm station and .Cm monitor @@ -130,27 +102,84 @@ For more information on configuring this device, see This driver requires the firmware built with the .Nm iwnfw module to work. +.Sh HARDWARE +The +.Nm +driver provides support for: +.Pp +.Bl -bullet -compact +.It +Intel Centrino Advanced-N 6200 +.It +Intel Centrino Advanced-N 6205 +.It +Intel Centrino Advanced-N 6230 +.It +Intel Centrino Advanced-N 6235 +.It +Intel Centrino Advanced-N + WiMAX 6250 +.It +Intel Centrino Ultimate-N 6300 +.It +Intel Centrino Wireless-N 100 +.It +Intel Centrino Wireless-N 105 +.It +Intel Centrino Wireless-N 130 +.It +Intel Centrino Wireless-N 135 +.It +Intel Centrino Wireless-N 1000 +.It +Intel Centrino Wireless-N 1030 +.It +Intel Centrino Wireless-N 2200 +.It +Intel Centrino Wireless-N 2230 +.It +Intel Centrino Wireless-N 4965 +.It +Intel Centrino Wireless-N 5100 +.It +Intel Centrino Wireless-N 6150 +.It +Intel Centrino Wireless-N 6200 +.It +Intel Centrino Wireless-N 6250 +.It +Intel Centrino Wireless-N + WiMAX 6150 +.It +Intel Ultimate N WiFi Link 5300 +.It +Intel Wireless WiFi Link 4965 +.It +Intel WiFi Link 5100 +.It +Intel WiMAX/WiFi Link 5150 +.It +Intel WiMAX/WiFi Link 5350 +.El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): .Bd -literal -offset indent -ifconfig wlan create wlandev iwn0 inet 192.168.0.20 \e +# ifconfig wlan create wlandev iwn0 inet 192.168.0.20 \e netmask 0xffffff00 .Ed .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ql my_net : .Pp -.Dl "ifconfig wlan create wlandev iwn0 ssid my_net up" +.Dl # ifconfig wlan create wlandev iwn0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent -ifconfig wlan create wlandev iwn0 ssid my_net \e +# ifconfig wlan create wlandev iwn0 ssid my_net \e wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: .Bd -literal -offset indent -ifconfig wlan create wlandev iwn0 wlanmode adhoc ssid my_net \e +# ifconfig wlan create wlandev iwn0 wlanmode adhoc ssid my_net \e wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 .Ed .Sh DIAGNOSTICS @@ -191,6 +220,7 @@ This should not happen. .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr networking 7 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh AUTHORS diff --git a/share/man/man4/iwx.4 b/share/man/man4/iwx.4 new file mode 100644 index 000000000000..7cd54d61b920 --- /dev/null +++ b/share/man/man4/iwx.4 @@ -0,0 +1,157 @@ +.\" +.\" SPDX-License-Identifier: ISC +.\" +.\" $OpenBSD: iwx.4,v 1.21 2025/03/27 15:12:14 jmc Exp $ +.\" +.\" Copyright (c) 2020 Stefan Sperling <stsp@openbsd.org> +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd May 2, 2025 +.Dt IWX 4 +.Os +.Sh NAME +.Nm iwx +.Nd Intel WiFi 6 IEEE 802.11ax wireless network driver +.Sh SYNOPSIS +.Cd device iwx +.Cd device wlan +.Pp +In +.Xr rc.conf 5 : +.Cd devmatch_blocklist="if_iwlwifi" +.Cd kld_list="if_iwx" +.Pp +In +.Xr sysctl.conf 5 : +.Cd dev.iwx.?.debug=0xffffffff +.Sh DESCRIPTION +The +.Nm +driver supports the Intel Wi-Fi 6 series of M.2 +wireless network adapters. +If the appropriate hardware is detected, and +.Xr iwlwifi 4 +is blacklisted in +.Xr rc.conf 5 , +the driver will be automatically loaded with +.Xr devmatch 8 . +The +.Nm +driver can be configured at runtime with +.Xr ifconfig 8 +or at boot with +.Xr rc.conf 5 . +.Pp +These are the modes the +.Nm +driver can operate in: +.Bl -tag -width "monitor mode" +.It station mode +This is used when associating with an access point, +through which all traffic passes. +Background scanning is supported in this mode, see +.Xr ifconfig 8 . +Station mode is the default. +.It monitor mode +In this mode the driver is able to receive packets without +associating with an access point. +This disables the internal receive filter and enables the card to +capture packets from networks which it wouldn't normally have access to, +or to scan for access points. +.El +.Sh HARDWARE +The +.Nm +driver supports the following M.2 wireless network adapters: +.Pp +.Bl -bullet -offset indent -compact +.It +Intel Wi-Fi 6 AX200 +.It +Intel Wi-Fi 6 AX201 CNVi +.It +Intel Wi-Fi 6 AX210 +.It +Intel Wi-Fi 6 AX211 CNVi +.El +.Sh SYSCTL VARIABLES +The +.Nm +driver supports the following +.Xr sysctl 8 +variables: +.Bl -tag -width "hw.usb.mtw.debug" +.It Va dev.iwx.?.debug +Specify debug level as a bitmask. +Default +.Ql 0 . +.El +.Sh FILES +The +.Nm +driver requires firmware from +.Pa ports/net/wifi-firmware-iwlwifi-kmod . +This firmware package will be installed automatically with +.Xr fwget 8 +if the appropriate hardware is detected at installation or runtime. +.Sh DIAGNOSTICS +.Bl -diag +.It "iwx0: device timeout" +A frame dispatched to the hardware for transmission did not complete +in time. +The driver will reset the hardware. +This should not happen. +.It "iwx0: fatal firmware error" +For some reason, the firmware crashed. +The driver will reset the hardware. +This should not happen. +.It "iwx0: radio is disabled by hardware switch" +The radio transmitter is off and thus no packet can go out. +The driver will reset the hardware. +Make sure the laptop radio switch is on. +.It "iwx0: could not read firmware ... (error N)" +For some reason, the driver was unable to read the firmware image from +the filesystem. +The file might be missing or corrupted. +.It "iwx0: firmware too short: N bytes" +The firmware image is corrupted and can't be loaded into the adapter. +.It "iwx0: could not load firmware" +An attempt to load the firmware into the adapter failed. +The driver will reset the hardware. +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr iwlwifi 4 , +.Xr iwlwififw 4 , +.Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , +.Xr ifconfig 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 15.0 . +.Sh CAVEATS +The +.Nm +driver does not support hardware encryption offload. +.Pp +The +.Nm +driver does not support 802.11ax. +Additional work is required in +.Xr ieee80211 9 +before those features can be supported. diff --git a/share/man/man4/ixgbe.4 b/share/man/man4/ix.4 index b151d3466392..418b6e1188ab 100644 --- a/share/man/man4/ixgbe.4 +++ b/share/man/man4/ix.4 @@ -29,32 +29,31 @@ .\" .\" * Other names and brands may be claimed as the property of others. .\" -.Dd May 17, 2023 -.Dt IXGBE 4 +.Dd October 26, 2024 +.Dt IX 4 .Os .Sh NAME -.Nm ixgbe -.Nd "Intel(R) 10Gb Ethernet driver for the FreeBSD operating system" +.Nm ix +.Nd Intel 10Gb Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent .Cd "device iflib" -.Cd "device ixgbe" +.Cd "device ix" .Ed .Pp Alternatively, to load the driver as a module at boot time, place the following line in .Xr loader.conf 5 : .Bd -literal -offset indent -if_ixgbe_load="YES" +if_ix_load="YES" .Ed .Sh DESCRIPTION The .Nm -driver provides support for PCI 10Gb Ethernet adapters based on -the Intel 82598EB Intel(R) Network Connections. +driver provides support for Intel(R) 10Gb Ethernet PCIe adapters. The driver supports Jumbo Frames, MSIX, TSO, and RSS. .Pp For questions related to hardware requirements, @@ -74,25 +73,70 @@ For information on enabling VLANs, see .Sh HARDWARE The .Nm -driver supports the following cards: +driver supports Intel 10Gb Ethernet PCIe adapters, +including: .Pp .Bl -bullet -compact .It -Intel(R) 10 Gigabit XF SR/AF Dual Port Server Adapter +Intel(R) Ethernet X553 .It -Intel(R) 10 Gigabit XF SR/LR Server Adapter +Intel(R) Ethernet X552 .It -Intel(R) 82598EB 10 Gigabit AF Network Connection +Intel(R) Ethernet X550 .It -Intel(R) 82598EB 10 Gigabit AT CX4 Network Connection +Intel(R) Ethernet X540 Bypass +.It +Intel(R) Ethernet X540 +.It +Intel(R) Ethernet X520 Bypass (82599) +.It +Intel(R) Ethernet X520 (82599) +.It +Intel(R) 10 Gigabit Server Adapter (82598EB) +.El +.Sh LOADER TUNABLES +The +.Nm +driver supports the following loader tunables: +.Bl -tag -width "hw.ix.allow_unsupported_sfp" +.It Va hw.ix.max_interrupt_rate +Maximum interrupts per second. +.It Va hw.ix.flow_control +Default flow control used for all adapters. +.It Va hw.ix.advertise_speed +Default advertised speed for all adapters. +.It Va hw.ix.enable_msix +Enable Message Signalled Interrupts (MSI-X). +.It Va hw.ix.allow_unsupported_sfp +Allow unsupported small form-factor pluggable +.Pq SFP +modules. +Use at your own risk. +.It Va hw.ix.enable_fdir +Enable Flow Director. +Flow Director directs Ethernet packets to the core where the +packet consuming process, application, container, +or microservice is running. +.It Va hw.ix.enable_rss +Enable Receive-Side Scaling (RSS). +When RSS is enabled, all of the receive data processing for +a particular TCP connection is shared across multiple processors +or processor cores. +Without RSS, all of the processing is performed by a single +processor, resulting in inefficient system cache utilization. +This has no effect if your system has only one processing unit. +.It Va hw.ix.enable_aim +Enable Adaptive Interrupt Moderation (AIM). +Vary the interrupt rate over time based on the traffic for +that interrupt vector. .El .Sh DIAGNOSTICS .Bl -diag -.It "ixgbe%d: Unable to allocate bus resource: memory" +.It "ix%d: Unable to allocate bus resource: memory" A fatal initialization error has occurred. -.It "ixgbe%d: Unable to allocate bus resource: interrupt" +.It "ix%d: Unable to allocate bus resource: interrupt" A fatal initialization error has occurred. -.It "ixgbe%d: watchdog timeout -- resetting" +.It "ix%d: watchdog timeout -- resetting" The device has stopped responding to the network, or there is a problem with the network connection (cable). .El @@ -113,7 +157,8 @@ issue to .Xr ng_ether 4 , .Xr polling 4 , .Xr vlan 4 , -.Xr ifconfig 8 +.Xr ifconfig 8 , +.Xr sysctl 8 .Sh HISTORY The .Nm @@ -124,3 +169,11 @@ The .Nm driver was written by .An Intel Corporation Aq Mt freebsd@intel.com . +.Sh CAVEATS +Intel (R) Flow director support is not fully implemented in +.Fx +at this time and additional work is required +before those features can be supported. +.Pp +Enabling flow director may route traffic to the wrong RX queue of the NIC, +resulting in sub-optimal performance on the receive side. diff --git a/share/man/man4/ixl.4 b/share/man/man4/ixl.4 index 8397bd99a5e7..fb9d519b22a8 100644 --- a/share/man/man4/ixl.4 +++ b/share/man/man4/ixl.4 @@ -116,7 +116,10 @@ kernel; install the package for the latest driver. .El .Sh HARDWARE -Most adapters in the Intel Ethernet 700 Series with SFP+/SFP28/QSFP+ cages +The +.Nm +driver supports the Intel Ethernet 700 series. +Most adapters in this series with SFP+/SFP28/QSFP+ cages have firmware that requires that Intel qualified modules are used; these qualified modules are listed below. This qualification check cannot be disabled by the driver. @@ -209,7 +212,7 @@ When the driver is finding the last TX descriptor processed by the hardware, use a value written to memory by the hardware instead of scanning the descriptor ring for completed descriptors. Enabled by default; disable to mimic the TX behavior found in -.Xr ixgbe 4 . +.Xr ix 4 . .El .Sh SYSCTL PROCEDURES .Bl -tag -width indent diff --git a/share/man/man4/kld.4 b/share/man/man4/kld.4 index bba32f02e677..e0186dec9ccc 100644 --- a/share/man/man4/kld.4 +++ b/share/man/man4/kld.4 @@ -96,7 +96,7 @@ drivers may be loaded into the system with .Nm . Device nodes for the loaded drivers are automatically created when a module is loaded and destroyed when it is unloaded by -.Xr devfs 5 . +.Xr devfs 4 . You can specify userland programs that will run when new devices become available as a result of loading modules, or existing devices go away when modules are unloaded, by configuring @@ -121,7 +121,7 @@ example source code implementing a sample kld module .Xr kldnext 2 , .Xr kldstat 2 , .Xr kldunload 2 , -.Xr devfs 5 , +.Xr devfs 4 , .Xr devd 8 , .Xr kldload 8 , .Xr kldstat 8 , diff --git a/share/man/man4/ktls.4 b/share/man/man4/ktls.4 index 46a37d5dd636..56b03d45faf7 100644 --- a/share/man/man4/ktls.4 +++ b/share/man/man4/ktls.4 @@ -29,7 +29,7 @@ .\" .\" * Other names and brands may be claimed as the property of others. .\" -.Dd December 14, 2021 +.Dd October 31, 2024 .Dt KTLS 4 .Os .Sh NAME @@ -220,8 +220,10 @@ mode. OpenSSL 3.0 and later include support for .Nm . The -.Fa security/openssl-devel -port may also be built with support for +.Fa security/openssl* +and +.Fa security/gnutls +ports may also be built with support for .Nm by enabling the .Dv KTLS diff --git a/share/man/man4/lindebugfs.4 b/share/man/man4/lindebugfs.4 new file mode 100644 index 000000000000..34a196007086 --- /dev/null +++ b/share/man/man4/lindebugfs.4 @@ -0,0 +1,95 @@ +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2022, Jake Freeland <jfree@freebsd.org> +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. + +.Dd August 10, 2022 +.Dt LINDEBUGFS 4 +.Os +.Sh NAME +.Nm lindebugfs +.Nd Linux file system for debugging +.Sh SYNOPSIS +.Bd -literal +lindebugfs /sys/kernel/debug lindebugfs rw 0 0 +.Ed +.Sh DESCRIPTION +The debug file system, or debugfs, makes process debugging easier by +providing a simple API for data transfer between the kernel and user +space. +Debugfs is not a general-purpose file system and should not be used as +a storage medium. +Instead, developers can implement the debugfs interface in their code +to generate debug information about their program at runtime. +FreeBSD's +.Nm +uses the +.Xr pseudofs 9 +file system construction kit to model itself after Linux's debugfs. +The +.Nm +API is intended for use with programs that take advantage of FreeBSD's +LinuxKPI compatibility layer. +.Pp +When mounted, +.Nm +will populate with pseudo files from any running process that calls +.Nm debugfs_create_file() . +Since +.Nm +is a pseudo file system, file contents will be generated dynamically +based on program provided file operations. +The current +.Nm +implementation formally supports seq_file and simple_attr_file virtual +file formats. +.Sh EXAMPLES +Load the +.Nm +kernel module: +.Pp +.Dl "kldload lindebugfs" +.Pp +Mount the +.Nm +file system on +.Pa /sys/kernel/debug : +.Pp +.Dl "mount -t lindebugfs lindebugfs /sys/kernel/debug" +.Sh SEE ALSO +.Xr mount 1 , +.Xr linprocfs 4 , +.Xr linsysfs 4 , +.Xr linux 4 , +.Xr pseudofs 9 +.Sh HISTORY +The +.Nm +file system first appeared in +.Fx 12.1 . +.Sh AUTHORS +.An -nosplit +The initial implementation for +.Nm +was created by Matthew Macy. +This manual page was written by Jake Freeland. diff --git a/share/man/man4/linprocfs.4 b/share/man/man4/linprocfs.4 new file mode 100644 index 000000000000..53940d7c02b0 --- /dev/null +++ b/share/man/man4/linprocfs.4 @@ -0,0 +1,167 @@ +.\" Written by Garrett Wollman +.\" This file is in the public domain. +.\" +.Dd May 29, 2025 +.Dt LINPROCFS 4 +.Os +.Sh NAME +.Nm linprocfs +.Nd Linux process file system +.Sh SYNOPSIS +.Bd -literal +linproc /compat/linux/proc linprocfs rw 0 0 +.Ed +.Sh DESCRIPTION +The Linux process file system, or +.Nm , +emulates a subset of Linux' process file system and is required for +the complete operation of some Linux binaries. +.Pp +The +.Nm +provides a two-level view of process space. +At the highest level, processes themselves are named, according to +their process ids in decimal, with no leading zeros. +There is also a special node called +.Pa self +which always refers to the process making the lookup request. +.Pp +Each process node is a directory containing several files: +.Bl -tag -width oom_score_adj +.It Pa auxv +The auxiliary vector passed to the program. +.It Pa cmdline +The command line used to execute the process. +.It Pa cwd +A symbolic link pointing to the current work directory of the process. +.It Pa environ +The list of environment variables and values of the process. +Every variable and pair value is separated from the next by a NULL byte. +.It Pa exe +A reference to the vnode from which the process text was read. +This can be used to gain access to the process' symbol table, +or to start another copy of the process. +.It Pa limits +The soft and hard limits for the process along with the units used. +.It Pa maps +Memory map of the process. +.It Pa mem +The complete virtual memory image of the process. +Only those addresses which exist in the process can be accessed. +Reads and writes to this file modify the process. +Writes to the text segment remain private to the process. +.It Pa mountinfo +Information about mount points. +.It Pa mounts +Similar to the above. +.It Pa oom_score_adj +Score adjustment for the Out Of Memory killer. +.It Pa root +Symbolic link to the root directory for this process. +.It Pa stat +Process statistics. +It includes user, nice, system, idle, iowait, irq, softirq, +steal, guest and guest_nice. +.It Pa statm +Process size statistics. +It includes total program size, resident set size, number of resident shared +pages (unused), text size, library size (unused), data + stack and dirty pages +(unused). +.It Pa status +Process statistics in human readable form. +It includes process name, state, PID, +etc. +.It Pa task +Dummy directory to avoid problems in specific software such as Chromium. +.El +.Pp +Each node is owned by the process's user, and belongs to that user's +primary group, except for the +.Pa mem +node, which belongs to the +.Li kmem +group. +.Sh FILES +.Bl -tag -width /compat/linux/proc/filesystems -compact +.It Pa /compat/linux/proc +The normal mount point for +.Nm . +.It Pa /compat/linux/proc/cmdline +Contains the path of the kernel image used to boot the system. +.It Pa /compat/linux/proc/cpuinfo +CPU vendor and model information in human-readable form. +.It Pa /compat/linux/proc/devices +List of character and block devices. +The later is usually empty on +.Fx . +.It Pa /compat/linux/proc/filesystems +List of supported filesystems. +For pseudo filesystems, the first column contains +.Em nodev . +.It Pa /compat/linux/proc/meminfo +System memory information in human-readable form. +.It Pa /compat/linux/proc/modules +Loaded kernel modules. +Empty for now. +.It Pa /compat/linux/proc/mounts +Devices corresponding mount points. +.It Pa /compat/linux/proc/mtab +Same as above. +.It Pa /compat/linux/proc/partitions +Partition information including major and minor numbers, number of blocks and +name. +The rest of the fields are set to zero. +.It Pa /compat/linux/proc/stat +System statistics. +For each cpu it includes at most user time, nice time, system +time and idle time, iowait (time waiting for I/O to complete), times serving +irqs and softirq, steal, guest and guest_nice times that represent times spent +in different modes in a virtualized environment. +The last columns are set to zero. +This file also contains brief statistics for disks, context switches and +more. +.It Pa /compat/linux/proc/swap +Information about the swap device if any. +.It Pa /compat/linux/proc/uptime +Time since the last boot and time spent in idle state. +.It Pa /compat/linux/proc/version +Version of the emulated linux system. +.It Pa /compat/linux/proc/pid +A directory containing process information for process +.Pa pid . +.It Pa /compat/linux/proc/self +A directory containing process information for the current process. +.El +.Sh EXAMPLES +To mount a +.Nm +file system on +.Pa /compat/linux/proc : +.Pp +.Dl "mount -t linprocfs linproc /compat/linux/proc" +.Sh SEE ALSO +.Xr mount 2 , +.Xr unmount 2 , +.Xr auxv 3 , +.Xr linux 4 , +.Xr procfs 5 , +.Xr pseudofs 9 +.Sh HISTORY +The +.Nm +first appeared in +.Fx 4.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +was derived from +.Nm procfs +by +.An Pierre Beyssac . +This manual page was written by +.An Dag-Erling Sm\(/orgrav , +based on the +.Xr procfs 5 +manual page by +.An Garrett Wollman . diff --git a/share/man/man4/linsysfs.4 b/share/man/man4/linsysfs.4 new file mode 100644 index 000000000000..12729a814085 --- /dev/null +++ b/share/man/man4/linsysfs.4 @@ -0,0 +1,98 @@ +.\" Written by Garrett Wollman +.\" This file is in the public domain. +.\" +.Dd November 13, 2019 +.Dt LINSYSFS 4 +.Os +.Sh NAME +.Nm linsysfs +.Nd Linux kernel objects file system +.Sh SYNOPSIS +.Bd -literal +linsys /compat/linux/sys linsysfs rw 0 0 +.Ed +.Sh DESCRIPTION +The +.Tn Linux +system file system, or +.Nm , +emulates a subset of the +.Tn Linux +sys file system and is required for +the complete operation of some +.Tn Linux +binaries. +.Pp +The +.Nm +provides a two-level view of devices. +At the highest level, PCI devices themselves are named, according to +their bus, slot and function in the system hierarchy. +PCI storage devices are listed in the +.Pa scsi_host +class with a device symlink +to the PCI directories of the devices. +.Pp +Each device node is a directory containing some files and directories: +.Bl -tag -width ".Pa status" +.It Pa host +A place holder for storage host information. +.It Pa pci_id +A directory for the +.Pa pci_id +that contains either the device information or another directory structure +for a PCI bridge. +.El +.Pp +Each host node of scsi_host is a directory containing some files and directories: +.Bl -tag -width ".Pa proc_name" +.It Pa proc_name +The +.Tn Linux +registered driver name for these devices. +.It Pa device +A symlink to the PCI device directory. +.El +.Sh FILES +.Bl -tag -width ".Pa /compat/linux/sys/devices/pci0000:00" -compact +.It Pa /compat/linux/sys +The normal mount point for +.Nm . +.It Pa /compat/linux/sys/class/scsi_host +The storage host node. +.It Pa /compat/linux/sys/devices/pci0000:00 +The PCI device hierarchy node. +.El +.Sh EXAMPLES +The most common usage follows: +.Pp +.Dl "mount -t linsysfs linsys /compat/linux/sys" +.Pp +where +.Pa /compat/linux/sys +is a mount point. +.Sh SEE ALSO +.Xr nmount 2 , +.Xr unmount 2 , +.Xr linprocfs 4 , +.Xr linux 4 , +.Xr pseudofs 9 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 6.2 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was derived from +.Nm linprocfs +by +.An Doug Ambrisko . +This manual page was edited by +.An Doug Ambrisko , +based on the +.Xr linprocfs 4 +manual page by +.An Garrett Wollman . diff --git a/share/man/man4/linux.4 b/share/man/man4/linux.4 index 0efc469985f9..711ac11e8fce 100644 --- a/share/man/man4/linux.4 +++ b/share/man/man4/linux.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 9, 2022 +.Dd May 19, 2024 .Dt LINUX 4 .Os .Sh NAME @@ -61,11 +61,13 @@ under .Pa /compat/linux ) before .Pa / . -For example, when Linux process attempts to open +For example, when a Linux process attempts to open .Pa /etc/passwd , -it will really access +it will first access .Pa /compat/linux/etc/passwd , -unless the latter does not exist. +falling back to +.Pa /etc/passwd +if the compat path does not exist. This is used to make sure Linux processes load Linux shared libraries instead of their similarly-named FreeBSD counterparts, and also to provide alternative versions of certain other files and virtual @@ -156,30 +158,34 @@ Defaults to 0. Linux run-time environment .It Pa /compat/linux/dev device file system, see -.Xr devfs 5 +.Xr devfs 4 .It Pa /compat/linux/dev/fd file descriptor file system mounted with the .Cm linrdlnk option, see -.Xr fdescfs 5 +.Xr fdescfs 4 +.It Pa /compat/linux/dev/mqueue +symbolic link to a mqueuefs mount, see +.Xr mqueuefs 4 .It Pa /compat/linux/dev/shm in-memory file system, see -.Xr tmpfs 5 +.Xr tmpfs 4 .It Pa /compat/linux/proc Linux process file system, see -.Xr linprocfs 5 +.Xr linprocfs 4 .It Pa /compat/linux/sys Linux kernel objects file system, see -.Xr linsysfs 5 +.Xr linsysfs 4 .El .Sh SEE ALSO .Xr brandelf 1 , +.Xr fdescfs 4 , +.Xr linprocfs 4 , +.Xr linsysfs 4 , +.Xr mqueuefs 4 , .Xr pty 4 , -.Xr elf 5 , -.Xr fdescfs 5 , -.Xr linprocfs 5 , -.Xr linsysfs 5 , -.Xr tmpfs 5 +.Xr tmpfs 4 , +.Xr elf 5 .Sh HISTORY Linux ABI support first appeared for i386 in .Fx 2.1 . 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. diff --git a/share/man/man4/liquidio.4 b/share/man/man4/liquidio.4 index 4713863c398f..27372e606212 100644 --- a/share/man/man4/liquidio.4 +++ b/share/man/man4/liquidio.4 @@ -34,7 +34,7 @@ .Os .Sh NAME .Nm liquidio -.Nd "Cavium 10Gb/25Gb Ethernet driver for the FreeBSD operating system" +.Nd Cavium 10Gb/25Gb Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following line in your diff --git a/share/man/man4/lo.4 b/share/man/man4/lo.4 index 2f0242b267c2..7bad739eec41 100644 --- a/share/man/man4/lo.4 +++ b/share/man/man4/lo.4 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 25, 2012 +.Dd June 23, 2024 .Dt LO 4 .Os .Sh NAME @@ -55,11 +55,11 @@ be configured first unless no hardware interfaces exist. .Pp If the transmit checksum offload capability flag is enabled on a loopback -interface, checksums will not be generated by IP, UDP, or TCP for packets +interface, checksums will not be generated by IP, UDP, TCP, or SCTP for packets sent on the interface. .Pp If the receive checksum offload capability flag is enabled on a loopback -interface, checksums will not be validated by IP, UDP, or TCP for packets +interface, checksums will not be validated by IP, UDP, TCP, or SCTP for packets received on the interface. .Pp By default, both receive and transmit checksum flags will be enabled, in diff --git a/share/man/man4/mac.4 b/share/man/man4/mac.4 index 006922a17f2b..134086139f53 100644 --- a/share/man/man4/mac.4 +++ b/share/man/man4/mac.4 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 25, 2023 +.Dd December 30, 2024 .Dt MAC 4 .Os .Sh NAME @@ -54,6 +54,7 @@ Currently, the following MAC policy modules are shipped with .It Xr mac_biba 4 Ta "Biba integrity policy" Ta yes Ta boot only .It Xr mac_bsdextended 4 Ta "File system firewall" Ta no Ta any time .It Xr mac_ddb 4 Ta "ddb(4) interface restrictions" Ta no Ta any time +.It Xr mac_do 4 Ta "Change command's uid/gid" Ta no Ta any time .It Xr mac_ifoff 4 Ta "Interface silencing" Ta no Ta any time .It Xr mac_ipacl 4 Ta "IP Address access control" Ta no Ta any time .It Xr mac_lomac 4 Ta "Low-Watermark MAC policy" Ta yes Ta boot only @@ -203,6 +204,7 @@ man page. .Xr mac_biba 4 , .Xr mac_bsdextended 4 , .Xr mac_ddb 4 , +.Xr mac_do 4 , .Xr mac_ifoff 4 , .Xr mac_ipacl 4 , .Xr mac_lomac 4 , diff --git a/share/man/man4/mac_bsdextended.4 b/share/man/man4/mac_bsdextended.4 index c96370a8175b..2131ca85282c 100644 --- a/share/man/man4/mac_bsdextended.4 +++ b/share/man/man4/mac_bsdextended.4 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 21, 2005 +.Dd October 11, 2024 .Dt MAC_BSDEXTENDED 4 .Os .Sh NAME @@ -87,7 +87,7 @@ This means that not all rules are applied, only the first matched rule; thus if Rule A allows access and Rule B blocks access, Rule B will never be applied. -.Ss Sysctls +.Sh SYSCTL VARIABLES The following sysctls may be used to tweak the behavior of .Nm : .Bl -tag -width indent diff --git a/share/man/man4/mac_do.4 b/share/man/man4/mac_do.4 new file mode 100644 index 000000000000..4dcb54c89673 --- /dev/null +++ b/share/man/man4/mac_do.4 @@ -0,0 +1,452 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 Baptiste Daroussin <bapt@FreeBSD.org> +.\" Copyright (c) 2024 The FreeBSD Foundation +.\" +.\" Portions of this documentation were written by Olivier Certner +.\" <olce@FreeBSD.org> at Kumacom SARL under sponsorship from the FreeBSD +.\" Foundation. +.\" +.Dd June 11, 2025 +.Dt MAC_DO 4 +.Os +.Sh NAME +.Nm mac_do +.Nd "policy allowing unprivileged users to change process credentials" +.Sh SYNOPSIS +To compile the +.Sy mac_do +policy into your kernel, place the following lines in your kernel configuration +file: +.Bd -ragged -offset indent +.Cd "options MAC" +.Cd "options MAC_DO" +.Ed +.Pp +Alternately, to load this policy module at boot time, place the following line +in your kernel configuration file: +.Bd -ragged -offset indent +.Cd "options MAC" +.Ed +.Pp +and in +.Xr loader.conf 5 : +.Bd -literal -offset indent +mac_do_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +policy module allows unprivileged users to change process credentials according +to rules configured by the administrator. +It supports per-jail configuration. +.Pp +Currently, the +.Nm +policy module only produces effects to processes spawned from the +.Pa /usr/bin/mdo +executable, please see +.Xr mdo 1 +for more details on this program. +.Sh CREDENTIALS RULES +Rules specify which transitions of process credentials +.Nm +will allow, based on current process credentials and the desired final ones. +They are passed by an administrator in the form of a string having the specific +syntax described below in a top-bottom manner. +They have been designed to be able to finely describe the desired target +credentials in a safe and compact way. +.Ss Top-Level List of Rules +At the top, rules are a possibly empty list of individual rules separated by +a semi-colon +.Pq Ql ";" : +.Dl Ao rules Ac \ ⟶\ Oo Ao rule Ac Oo So ";" Sc Ao rule Ac Oc Ns * Oc +They form a disjunction, i.e., +.Nm +authorizes a credentials transition as soon as at least one rule in the list +matches. +.Pp +One rule is composed of a +.Li Aq from +part +.Pq also called Dq match +and a +.Li Aq to +part +.Pq also called Dq target , +in this order, separated by a greater-than sign +.Pq Ql > : +.Dl Ao rule Ac \ ⟶\ Ao from Ac So > Sc Ao to Ac +.Ss Rule's Ao from Ac Part +The first part of a rule, +.Li Aq from , +is matched against the credentials of the process requesting some credentials +transition. +It has the form: +.Dl Ao from Ac \ ⟶\ Ao type Ac So = Sc Ao id Ac +.Pp +.Li Aq type +must be: +.Dl Ao type Ac \ ⟶\ Op So uid Sc | So gid Sc +i.e., one of the literal strings +.Ql uid +or +.Ql gid . +.Li Aq id +must be the numerical ID of a user or group, and is matched with the current +process real ID of the corresponding type. +.Ss Rule's Ao to Ac Part +The second part of a rule, +.Li Aq to , +is a comma-separated +.Pq Ql "," +non-empty list of target clauses: +.Dl Ao to Ac \ ⟶\ Ao target_clause Ac Oo So "," Sc Ao target_clause Ac Oc Ns * +Target clauses of a given rule also form a disjunction, i.e., the IDs they +specify are alternatives for the target credentials, except in some cases +described below. +.Pp +The next subsections describe the syntax of target clauses, the defaults that +apply and the principle of non-redundancy and non-contradiction in each rule's +.Li Aq to +part. +.Ss Target Clauses +A target clause in a rule's +.Li Aq to +part must be of one of the following forms: +.Dl Ao target_clause Ac \ ⟶\ So any Sc +.Dl Ao target_clause Ac \ ⟶\ Ao flags Ac Ao type Ac So = Sc Ao id Ac +The first form is a compact way to specify that any target credentials are +allowed. +The second form is similar to that of +.Li Aq from +clauses, with the following extensions: +.Bl -bullet -compact +.It +.Li Aq id +may also be a literal +.Ql * +or +.Ql any +or +.Ql "." . +.Ql * +and +.Ql any +both designate any ID for the specified +.Li Aq type , +and are treated identically. +.Ql "." +designates the process' current IDs for the specified +.Li Aq type , +as explained below. +.It +.Li Aq flags +may contain at most one of the +.Ql + , +.Ql - +and +.Ql "!" +characters, and may be non-empty only when +.Li Aq type +is +.Ql gid . +Additionally, if +.Li Aq id +is +.Ql * +or +.Ql any , +only the +.Ql + +flag may appear. +.El +.Pp +For target clauses of +.Ql gid +type, an absence of flag indicates that the specified group ID is allowed as the +real, effective and/or saved group IDs +.Pq the Do primary Dc groups . +Conversely, the presence of any allowed flag indicates that the specification +concerns supplementary groups. +Each flag has a specific meaning: +.Bl -bullet -compact +.It +.Ql + +indicates that the group ID is allowed as a supplementary group. +.It +.Ql "!" +indicates that the group ID is mandatory, i.e., it must be listed in the +supplementary groups. +.It +.Ql - +indicates that the group ID must not be listed in the supplementary groups. +.El +A specification with +.Ql - +is only useful in conjunction with a +.Ql + Ns +-tagged specification where only one of them has +.Ql "." +as its +.Li Aq id . +Target clauses having the +.Ql "!" +or +.Ql - +flag are +.Dq forcing +clauses, and as such do not take part in the disjunction of the other +target clauses but rather unconditionally apply in their rule. +.Pp +.Ql "." +is a placeholder for IDs that the calling process already has on privilege +check. +For type +.Ql uid , +it designates any of the process' real, effective or +saved user IDs. +For type +.Ql gid , +its effect depends on whether flags are present. +If none is present, it designates any of the process' real, effective or saved +group IDs. +If one is present, it designates any of the process' supplementary groups. +.Ss Defaults for the Ao to Ac Part +If the +.Li Aq to +part does not list a target clause with type +.Ql uid , +any of the current user IDs of the calling process is accepted. +In other words, in this case, +.Nm +behaves as if a target clause of: +.Dl uid=. +had been listed. +.Pp +Similarly, if the +.Li Aq to +part does not list a target clause with type +.Ql gid , +all the groups of the calling process are assumed to be required. +More precisely, each of the desired real, effective and saved group IDs must be +one of the current real, effective or saved group ID, and all supplementary +groups must be the same as those that are current. +It is as if the +.Li Aq to +part had contained the following two clauses: +.Dl gid=.,!gid=. +.Ss Non-Redundancy and Non-Contradiction in a Ao to Ac Part +No two target clauses of a single rule may express the exact same logical intent +nor contradictory ones. +.Pp +In practice, no two clauses may display the same ID except for group IDs but +only if, each time the same ID appears, it does so with a different flag, or no +flags only once. +Additionally, the specified flags in multiple occurences must not be +contradictory. +For example, the same group ID appearing with both +.Ql + +and +.Ql - +will cause rejection of the rule. +.Ss Parsing Specifics +Any amount of whitespace is allowed around tokens of the above grammar, except +that there may be no spaces between +.Li Aq flags +and +.Li Aq id +in target clauses. +.Pp +For convenience, numerical IDs may be specified as negative integers, which are +then converted to unsigned ones as specified in the C standard for the +.Vt uid_t +and +.Vt gid_t +types, which are both 64-bit unsigned integers. +.Sh RUNTIME CONFIGURATION +The following +.Xr sysctl 8 +knobs are available: +.Bl -tag -width indent +.It Va security.mac.do.enabled +Enable the +.Nm +policy. +(Default: 1). +.It Va security.mac.do.rules +The list of credential rules, whose syntax is described in the +.Sx CREDENTIALS RULES +section above. +This list is specific to each jail. +Please see the +.Sx JAIL SUPPORT +section below for more details on the interaction of +.Nm +with jails. +.It Va security.mac.do.print_parse_error +Logs a message on trying to set incorrect rules via the +.Va security.mac.do.rules +.Xr sysctl 8 +knob. +.El +.Sh JAIL SUPPORT +.Nm +supports per-jail configuration of rules. +.Pp +By default, at creation, a new jail has no credentials rules, effectively +disabling +.Nm +for its processes. +.Pp +The following jail parameters are defined: +.Bl -tag -width indent +.It Va mac.do +Possible values are: +.Bl -tag -width "'disable'" -compact +.It Ql enable +.Nm +will enforce specific credential rules in the jail. +The +.Va mac.do.rules +jail parameter must also be set in this case. +.It Ql disable +Disables +.Nm +in the jail. +Strictly equivalent to jail creation's default behavior and to setting the rules +to an empty string. +.It Ql inherit +The jail's credentials rules are inherited from the jail's parent +.Pq which may themselves have been inherited . +Modified rules propagate to all children jails configured for inheritance. +.El +.It Va mac.do.rules +The credentials rules for the jail. +It is always equal to the value that can be retrieved by the +.Xr sysctl 8 +knob +.Va security.mac.do.rules +described in section +.Sx RUNTIME CONFIGURATION . +If set, and the jail parameter +.Va mac.do +is not so explicitly, the value of the latter will default to +.Ql disable +if empty, else to +.Ql enable . +.El +.Pp +Each jail must have +.Xr mdo 1 +installed at path +.Pa /usr/bin/mdo , +as this path is currently not configurable. +.Sh EXAMPLES +Here are several examples of single rules matching processes having a real user +ID of 10001: +.Bl -tag -width indent +.It Li uid=10001>uid=10002 +Allows the process to switch all of its real, effective or saved user ID to +10002, but keeping the groups it is already in, and with the same +primary/supplementary groups split. +.It Li uid=10001>uid=10002,uid=10003 +Same as the first example, but also allows to switch to UID 10003 instead of +10002, or possibly having both in different user IDs. +.It Li uid=10001>uid=10002,gid=10002 +Same as the first example, but the new primary groups must be set to 10002 and +no supplementary groups should be set. +.It Li uid=10001>uid=10002,gid=10002,+gid=.\& +Same as the previous example, but in addition allowing to retain any current +supplementary groups. +.It Li uid=10001>uid=10002,gid=10002,!gid=.\& +Same as the previous example, but with the additional constraint that all +current supplementary groups must be kept. +.It Li uid=10001>uid=10002,gid=10002,+gid=.,-gid=10001 +Same as +.Ql uid=10001>uid=10002,gid=10002,+gid=.\& +above, but 10001 cannot be retained as a supplementary group. +.It Li uid=10001>uid=10002,gid=10002,+gid=.,!gid=10003 +Same as +.Ql uid=10001>uid=10002,gid=10002,+gid=.\& +above, with the additional constraint that 10003 must appear in the +supplementary groups. +.It Li uid=10001>uid=10002,gid=*,+gid=* +Same as the first example, but lifting any constraints on groups, allowing the +process to become part of any groups it sees fit. +.El +.Pp +Here are several examples of single rules matching processes having a real group +ID of 10001: +.Bl -tag -width indent +.It Li gid=10001>uid=0 +Makes 10001 a more powerful +.Ql wheel +group, allowing its members to switch to root without password. +.It Li gid=10001>gid=10002 +Allows the process to enter GID 10002 as a primary group, but only if +giving up all its supplementary groups. +.It Li gid=10001>gid=10002,+gid=.\& +Same as the previous example, but allows to retain any current supplementary +groups. +.It Li gid=10001>gid=10002,!gid=.\& +Same as the previous example, but with the additional constraint that all +current supplementary groups must be kept. +.El +.Sh SEE ALSO +.Xr mdo 1 , +.Xr setcred 2 , +.Xr mac 4 , +.Xr jail 8 , +.Xr sysctl 8 +.Sh AUTHORS +.An Olivier Certner Aq Mt olce@FreeBSD.org +.An Baptiste Daroussin Aq Mt bapt@FreeBSD.org +.Sh BUGS +Currently, +.Nm +considers only credentials transitions requested through the +.Xr setcred 2 +system call. +This system call was in large part created so that +.Nm +can see whole credentials transitions to decide whether to authorize them, which +the traditional UNIX's piecewise approach of successively changing different +parts of them cannot allow. +.Pp +However, calls to traditional or standard credentials-changing functions can be +considered as full transitions on their own, however limited, and as such should +be equally monitored by +.Nm . +Future work will lift this restriction. +.Sh SECURITY CONSIDERATIONS +The threat model for +.Nm +is to consider userland programs as generally untrustable to decide upon which +credentials changes are acceptable. +It is in contrast with the traditional UNIX way to change credentials, in which +specialized programs are installed with the setuid bit, giving them full +administrator privileges so that they are effectively able to establish new +ones. +Vulnerabilities in such credentials-changing programs can have catastrophic +consequences on the integrity of the system. +.Pp +Consequently, +.Nm +does not rely on companion userland programs to decide whether some credentials +transition is acceptable. +Instead, it maintains its own configuration independently from the userland +password and group databases. +Establishing this configuration currently itself relies on userland programs +issuing calls to +.Xr sysctl 3 +or +.Xr jail 2 . +It should thus be established near system boot or jail start, before any +possible attacks could happen on the system, and further measures should be +taken to ensure that potential corruptions does not affect the configuration in +subsequent restarts, such as re-establishing pristine state or ensuring that the +boot procedure up to the configuration of +.Nm +can be trusted. diff --git a/share/man/man4/man4.aarch64/Makefile b/share/man/man4/man4.aarch64/Makefile index a0161f8f4900..0e85aab8b770 100644 --- a/share/man/man4/man4.aarch64/Makefile +++ b/share/man/man4/man4.aarch64/Makefile @@ -1,4 +1,3 @@ - .PATH: ${.CURDIR}/../man4.arm # Some manpages are common to arm and aarch64 MAN= \ @@ -7,6 +6,7 @@ MAN= \ felix.4 \ rk_gpio.4 \ rk_grf.4 \ + rk_grf_gpio.4 \ rk_i2c.4 \ rk_pinctrl.4 \ diff --git a/share/man/man4/man4.aarch64/rk_gpio.4 b/share/man/man4/man4.aarch64/rk_gpio.4 index 69bcb1671f85..b5648662cf5e 100644 --- a/share/man/man4/man4.aarch64/rk_gpio.4 +++ b/share/man/man4/man4.aarch64/rk_gpio.4 @@ -47,7 +47,7 @@ rockchip,gpio-bank .El .Sh SEE ALSO .Xr gpiobus 4 , -.Xr gpioctl 8 , +.Xr gpioctl 8 .Sh HISTORY The .Nm diff --git a/share/man/man4/man4.aarch64/rk_grf_gpio.4 b/share/man/man4/man4.aarch64/rk_grf_gpio.4 new file mode 100644 index 000000000000..6a5ebbe19e3b --- /dev/null +++ b/share/man/man4/man4.aarch64/rk_grf_gpio.4 @@ -0,0 +1,42 @@ +.\" +.\" Copyright (c) 2025 Stephen Hurd <shurd@freebsd.org> +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd March 18, 2025 +.Dt RK_GRF_GPIO 4 +.Os +.Sh NAME +.Nm rk_grf_gpio +.Nd RockChip GPIO_MUTE pin driver +.Sh SYNOPSIS +.Cd "options SOC_ROCKCHIP_rk3328" +.Sh DESCRIPTION +The +.Nm +driver provides a single-pin, output-only +.Xr gpio 3 +unit whose single pin is named GPIO_MUTE. +This controls the output of the GPIO_MUTE pin on the SoC. +.Pp +This gpio is usually used to control another device on the board, +so is not usually available for user software. +.Sh HARDWARE +The +.Nm +driver supports the following GRF GPIO controller: +.Pp +.Bl -bullet -compact +.It +rockchip,rk3328-grf-gpio +.El +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 15.0 . +.Sh AUTHORS +The +.Nm +driver and manual were written by +.An Stephen Hurd Aq Mt shurd@freebsd.org . diff --git a/share/man/man4/man4.aarch64/rk_i2c.4 b/share/man/man4/man4.aarch64/rk_i2c.4 index f30b510e7655..be1a0fab943e 100644 --- a/share/man/man4/man4.aarch64/rk_i2c.4 +++ b/share/man/man4/man4.aarch64/rk_i2c.4 @@ -49,7 +49,7 @@ rockchip,rk3328-i2c .El .Sh SEE ALSO .Xr iic 4 , -.Xr iicbus 4 , +.Xr iicbus 4 .Sh HISTORY The .Nm diff --git a/share/man/man4/man4.aarch64/rk_pinctrl.4 b/share/man/man4/man4.aarch64/rk_pinctrl.4 index c196c00d52b7..519b3e793cd1 100644 --- a/share/man/man4/man4.aarch64/rk_pinctrl.4 +++ b/share/man/man4/man4.aarch64/rk_pinctrl.4 @@ -46,7 +46,7 @@ compatible strings : rockchip,rk3328-pinctrl .El .Sh SEE ALSO -.Xr fdt_pinctrl 4 , +.Xr fdt_pinctrl 4 .Sh HISTORY The .Nm diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile index e2a41559410b..6b046a1002a2 100644 --- a/share/man/man4/man4.arm/Makefile +++ b/share/man/man4/man4.arm/Makefile @@ -1,5 +1,5 @@ - MAN= \ + ar40xx.4 \ aw_gpio.4 \ aw_mmc.4 \ aw_rtc.4 \ diff --git a/share/man/man4/man4.arm/ar40xx.4 b/share/man/man4/man4.arm/ar40xx.4 new file mode 100644 index 000000000000..e314d30dd4c6 --- /dev/null +++ b/share/man/man4/man4.arm/ar40xx.4 @@ -0,0 +1,35 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 10, 2025 +.Dt AR40XX 4 arm +.Sh NAME +.Nm ar40xx_switch +.Nd Qualcomm IPQ4018/IPQ4019 Gigabit Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd etherswitch +.Cd ar40xx_switch +.Sh DESCRIPTION +The +.Nm +driver supports the Gigabit Ethernet switch inside the +Qualcomm IPQ4018/IPQ4019 SoC. +.Sh HARDWARE +The +.Nm +driver supports the following Gigabit Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +Qualcomm IPQ 4019 Five-port Gigabit Ethernet Switch +.It +Qualcomm IPQ 4018 Five-port Gigabit Ethernet Switch +.El +.Sh SEE ALSO +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh CAVEATS +This driver currently only supports L2 port/VLAN mapping modes. diff --git a/share/man/man4/man4.arm/aw_gpio.4 b/share/man/man4/man4.arm/aw_gpio.4 index 3d72e82b3efc..5cbc7562d9bd 100644 --- a/share/man/man4/man4.arm/aw_gpio.4 +++ b/share/man/man4/man4.arm/aw_gpio.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd Dec 25, 2017 +.Dd October 8, 2024 .Dt AW_GPIO 4 .Os .Sh NAME @@ -41,6 +41,7 @@ .Cd "options SOC_ALLWINNER_H3" .Cd "options SOC_ALLWINNER_A64" .Cd "options SOC_ALLWINNER_H5" +.Cd "options SOC_ALLWINNER_D1" .Sh DESCRIPTION The .Nm @@ -81,6 +82,8 @@ allwinner,sun8i-h3-r-pinctrl allwinner,sun50i-a64-pinctrl .It allwinner,sun50i-a64-r-pinctrl +.It +allwinner,sun20i-d1-pinctrl .El .Sh SEE ALSO .Xr fdt 4 , diff --git a/share/man/man4/man4.arm/aw_rtc.4 b/share/man/man4/man4.arm/aw_rtc.4 index 5b656ec679e4..1296cd41da68 100644 --- a/share/man/man4/man4.arm/aw_rtc.4 +++ b/share/man/man4/man4.arm/aw_rtc.4 @@ -22,12 +22,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd Dec 25, 2017 +.Dd December 10, 2024 .Dt AW_RTC 4 .Os .Sh NAME .Nm aw_rtc -.Nd driver for the RTC controller in Allwinner SoC +.Nd driver for the real-time clock (RTC) controller in Allwinner SoC .Sh DESCRIPTION The .Nm @@ -35,8 +35,8 @@ device driver provides support for the Allwinner RTC controller. .Sh HARDWARE The current version of the .Nm -driver supports the RTC controller with one of the following compatible -strings : +driver supports the RTC controller with any of the following compatible +strings: .Pp .Bl -bullet -compact .It @@ -45,6 +45,14 @@ allwinner,sun4i-a10-rtc allwinner,sun7i-a20-rtc .It allwinner,sun6i-a31-rtc +.It +allwinner,sun8i-h3-rtc +.It +allwinner,sun20i-d1-rtc +.It +allwinner,sun50i-h5-rtc +.It +allwinner,sun50i-h6-rtc .El .Sh HISTORY The diff --git a/share/man/man4/man4.arm/aw_sid.4 b/share/man/man4/man4.arm/aw_sid.4 index be441033d242..5cd2f3d5e072 100644 --- a/share/man/man4/man4.arm/aw_sid.4 +++ b/share/man/man4/man4.arm/aw_sid.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 6, 2018 +.Dd October 8, 2024 .Dt AW_SID 4 .Os .Sh NAME @@ -53,6 +53,10 @@ allwinner,sun50i-a64-sid allwinner,sun8i-a83t-sid .It allwinner,sun8i-h3-sid +.It +allwinner,sun50i-h5-sid +.It +allwinner,sun20i-d1-sid .El .Sh SYSCTL VARIABLES The following read-only variables are available via diff --git a/share/man/man4/man4.arm/aw_syscon.4 b/share/man/man4/man4.arm/aw_syscon.4 index 034bca716bcf..e32f329e489a 100644 --- a/share/man/man4/man4.arm/aw_syscon.4 +++ b/share/man/man4/man4.arm/aw_syscon.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 7, 2018 +.Dd November 11, 2024 .Dt AW_SYSCON 4 .Os .Sh NAME @@ -48,9 +48,17 @@ strings: .It allwinner,sun50i-a64-system-controller .It +allwinner,sun50i-a64-system-control +.It allwinner,sun8i-a83t-system-controller .It allwinner,sun8i-h3-system-controller +.It +allwinner,sun8i-h3-system-control +.It +allwinner,sun50i-h5-system-control +.It +allwinner,sun20i-d1-system-control .El .Sh AUTHORS The diff --git a/share/man/man4/man4.arm/imx6_ahci.4 b/share/man/man4/man4.arm/imx6_ahci.4 index cfe8a87deb6f..9979cef50d79 100644 --- a/share/man/man4/man4.arm/imx6_ahci.4 +++ b/share/man/man4/man4.arm/imx6_ahci.4 @@ -55,7 +55,7 @@ data and marshall resources for the standard driver. .Sh SEE ALSO .Xr ahci 4 , -.Xr fdt 4 , +.Xr fdt 4 .Sh HISTORY The .Nm diff --git a/share/man/man4/man4.i386/Makefile b/share/man/man4/man4.i386/Makefile index f84f0797a62c..ad9b3a01828c 100644 --- a/share/man/man4/man4.i386/Makefile +++ b/share/man/man4/man4.i386/Makefile @@ -1,4 +1,3 @@ - MAN= apm.4 \ CPU_ELAN.4 \ glxiic.4 \ diff --git a/share/man/man4/man4.powerpc/Makefile b/share/man/man4/man4.powerpc/Makefile index dbc133cc985b..1762bf17b50d 100644 --- a/share/man/man4/man4.powerpc/Makefile +++ b/share/man/man4/man4.powerpc/Makefile @@ -1,4 +1,3 @@ - MAN= adb.4 \ akbd.4 \ abtn.4 \ diff --git a/share/man/man4/md.4 b/share/man/man4/md.4 index acd52aecb675..1da26ddda037 100644 --- a/share/man/man4/md.4 +++ b/share/man/man4/md.4 @@ -5,7 +5,7 @@ .\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp .\" ---------------------------------------------------------------------------- .\" -.Dd January 8, 2020 +.Dd July 16, 2025 .Dt MD 4 .Os .Sh NAME @@ -98,7 +98,7 @@ disk found in the man page. Other tools will also create these images, such as NanoBSD. .Sh ARM KERNEL OPTIONS -On armv6 and armv7 architectures, an MD_ROOT image larger than +On the armv7 architecture, an MD_ROOT image larger than approximately 55 MiB may require building a custom kernel using several tuning options related to kernel memory usage. .Bl -tag -width indent @@ -158,7 +158,7 @@ installation process. The .Nm driver did a hostile takeover of the -.Xr vn 4 +.Sy vn driver in .Fx 5.0 . .Sh AUTHORS diff --git a/share/man/man4/mem.4 b/share/man/man4/mem.4 index 68969d281532..595cb8a60e5f 100644 --- a/share/man/man4/mem.4 +++ b/share/man/man4/mem.4 @@ -198,7 +198,6 @@ should be set to to update an existing or establish a new range, or to .Dv MEMRANGE_SET_REMOVE to remove a range. -.El .Ss Live Kernel Dumps .Pp The diff --git a/share/man/man4/mlx.4 b/share/man/man4/mlx.4 index f7a0d64e9e73..4b9ab7070d72 100644 --- a/share/man/man4/mlx.4 +++ b/share/man/man4/mlx.4 @@ -1,4 +1,6 @@ .\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2003 David O'Brien .\" Copyright (c) 2000 Jeroen Ruigrok van der Werven .\" Copyright (c) 2000 Michael Smith @@ -23,12 +25,12 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 15, 2017 +.Dd May 27, 2025 .Dt MLX 4 .Os .Sh NAME .Nm mlx -.Nd Mylex DAC-family RAID driver +.Nd Mylex DAC-family Parallel SCSI RAID driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -50,42 +52,35 @@ The driver provides support for Mylex DAC-family PCI to SCSI RAID controllers, including versions relabeled by Digital/Compaq. .Sh HARDWARE -Controllers supported by the +The .Nm -driver include: +driver supports the following Parallel SCSI RAID controllers: .Pp .Bl -bullet -compact .It -Mylex DAC960P +Mylex DAC960P (Wide Fast SCSI-2) .It -Mylex DAC960PD / DEC KZPSC (Fast Wide) +Mylex DAC960PD / DEC KZPSC (Wide Fast SCSI-2) .It -Mylex DAC960PDU +Mylex DAC960PDU (Ultra SCSI-3) .It -Mylex DAC960PL +Mylex DAC960PL (Wide Fast SCSI-2) .It -Mylex DAC960PJ +Mylex DAC960PJ (Wide Ultra SCSI-3) .It -Mylex DAC960PG +Mylex DAC960PG (Wide Ultra SCSI-3) .It -Mylex DAC960PU / DEC PZPAC (Ultra Wide) +Mylex DAC960PU / DEC PZPAC (Wide Ultra SCSI-3) .It -Mylex AcceleRAID 150 (DAC960PRL) +Mylex AcceleRAID 150 (DAC960PRL) (Wide Ultra2 SCSI) .It -Mylex AcceleRAID 250 (DAC960PTL1) +Mylex AcceleRAID 250 (DAC960PTL1) (Wide Ultra2 SCSI) .It -Mylex eXtremeRAID 1100 (DAC1164P) +Mylex eXtremeRAID 1100 (DAC1164P) (Wide Ultra2 SCSI) .It RAIDarray 230 controllers, aka the Ultra-SCSI DEC KZPAC-AA (1-ch, 4MB cache), KZPAC-CA (3-ch, 4MB), KZPAC-CB (3-ch, 8MB cache) .El -.Pp -All major firmware revisions (2.x, 3.x, 4.x and 5.x) are supported, however -it is always advisable to upgrade to the most recent firmware -available for the controller. -.Pp -Compatible Mylex controllers not listed should work, but have not been -verified. .Sh DIAGNOSTICS .Ss Controller initialisation phase .Bl -diag @@ -146,7 +141,6 @@ controller. The current status of all system drives could not be fetched; attachment of system drives will be aborted. .It mlx%d: device_add_child failed -.It mlx%d: bus_generic_attach returned %d .Pp Creation of the system drive instances failed; attachment of one or more system drives may have been aborted. diff --git a/share/man/man4/mlx5io.4 b/share/man/man4/mlx5io.4 index 66a767d97d31..ebfbb41a0823 100644 --- a/share/man/man4/mlx5io.4 +++ b/share/man/man4/mlx5io.4 @@ -172,7 +172,7 @@ field reports the third page validity. .Sh FILES The .Pa /dev/mlx5ctl -.Xr devfs 5 +.Xr devfs 4 node is used to pass commands to the driver. .Sh RETURN VALUES If successful, the IOCTL returns zero. diff --git a/share/man/man4/mpi3mr.4 b/share/man/man4/mpi3mr.4 index 981979e37187..f07ce13d2f23 100644 --- a/share/man/man4/mpi3mr.4 +++ b/share/man/man4/mpi3mr.4 @@ -64,7 +64,7 @@ Broadcom Ltd. 9600-8i8e 24G PCIe 4.0 Tri-Mode RAID Adapters .Xr mpr 4 , .Xr pci 4 , .Xr sa 4 , -.Xr scsi 4 . +.Xr scsi 4 .Sh HISTORY The .Nm diff --git a/share/man/man4/mqueuefs.4 b/share/man/man4/mqueuefs.4 new file mode 100644 index 000000000000..384a3e3e6546 --- /dev/null +++ b/share/man/man4/mqueuefs.4 @@ -0,0 +1,122 @@ +.\" Copyright (c) 2005 David Xu <davidxu@FreeBSD.org> +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice(s), this list of conditions and the following disclaimer as +.\" the first lines of this file unmodified other than the possible +.\" addition of one or more copyright notices. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice(s), this list of conditions and the following disclaimer in +.\" the documentation and/or other materials provided with the +.\" distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY +.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE +.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +.\" BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +.\" WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 30, 2005 +.Dt MQUEUEFS 4 +.Os +.Sh NAME +.Nm mqueuefs +.Nd POSIX message queue file system +.Sh SYNOPSIS +To link into kernel: +.Pp +.Cd "options P1003_1B_MQUEUE" +.Pp +To load as a kernel loadable module: +.Pp +.Dl "kldload mqueuefs" +.Sh DESCRIPTION +The +.Nm +module will permit the +.Fx +kernel to support +.Tn POSIX +message queue. +The module contains system calls to manipulate +.Tn POSIX +message queues. +It also contains a file system to implement a view for all message queues of +the system. +This helps users to keep track of their message queues and make +it more easily usable without having to invent additional tools. +.Pp +The most common usage is as follows: +.Pp +.Dl "mount -t mqueuefs null /mnt/mqueue" +.Pp +where +.Pa /mnt/mqueue +is a mount point. +.Pp +It is possible to define an entry in +.Pa /etc/fstab +that looks similar to: +.Bd -literal +null /mnt/mqueue mqueuefs rw 0 0 +.Ed +.Pp +This will mount +.Nm +at the +.Pa /mnt/mqueue +mount point during system boot. +Using +.Pa /mnt/mqueue +as a permanent mount point is not advised as its intention +has always been to be a temporary mount point. +See +.Xr hier 7 +for more information on +.Fx +directory layout. +.Pp +Some common tools can be used on the file system, e.g.: +.Xr cat 1 , +.Xr chmod 1 , +.Xr chown 8 , +.Xr ls 1 , +.Xr rm 1 , +etc. +To use only the message queue system calls, it is not necessary for +user to mount the file system, just load the module or compile it +into the kernel. +Manually creating a file, for example, +.Dq Li "touch /mnt/mqueue/myqueue" , +will create a message queue named +.Pa myqueue +in the kernel, default +message queue attributes will be applied to the queue. +It is not +advised to use this method to create a queue; +it is better to use the +.Xr mq_open 2 +system call to create a queue as it +allows the user to specify different attributes. +.Pp +To see the queue's attributes, just read the file: +.Pp +.Dl "cat /mnt/mqueue/myqueue" +.Sh SEE ALSO +.Xr mq_open 2 , +.Xr nmount 2 , +.Xr unmount 2 , +.Xr mount 8 , +.Xr umount 8 +.Sh AUTHORS +This manual page was written by +.An David Xu Aq Mt davidxu@FreeBSD.org . diff --git a/share/man/man4/msdosfs.4 b/share/man/man4/msdosfs.4 new file mode 100644 index 000000000000..d823934dcfd1 --- /dev/null +++ b/share/man/man4/msdosfs.4 @@ -0,0 +1,75 @@ +.\" Written by Tom Rhodes +.\" This file is in the public domain. +.\" +.Dd September 27, 2018 +.Dt MSDOSFS 4 +.Os +.Sh NAME +.Nm msdosfs +.Nd MS-DOS (FAT) file system +.Sh SYNOPSIS +.Cd "options MSDOSFS" +.Sh DESCRIPTION +The +.Nm +driver will permit the +.Fx +kernel to read and write MS-DOS based file systems. +.Pp +The most common usage follows: +.Pp +.Dl "mount -t msdosfs /dev/ada0sN /mnt" +.Pp +where +.Ar N +is the partition number and +.Pa /mnt +is a mount point. +Some users tend to create a +.Pa /dos +directory for +.Nm +mount points. +This helps to keep better track of the file system, +and make it more easily accessible. +.Pp +It is possible to define an entry in +.Pa /etc/fstab +that looks similar to: +.Bd -literal +/dev/ada0sN /dos msdosfs rw 0 0 +.Ed +.Pp +This will mount an MS-DOS based partition at the +.Pa /dos +mount point during system boot. +Using +.Pa /mnt +as a permanent mount point is not advised as its intention +has always been to be a temporary mount point for floppy and +ZIP disks. +See +.Xr hier 7 +for more information on +.Fx +directory layout. +.Sh EXAMPLES +Determine which FAT file system version (e.g, FAT16, FAT32) +is a partition formatted with: +.Bd -literal -offset indent +file -s /dev/da0s1 +.Ed +.Pp +.Xr gpart 8 +may also be used to extract this information. +.Sh SEE ALSO +.Xr mount 2 , +.Xr unmount 2 , +.Xr fsck_msdosfs 8 , +.Xr mount 8 , +.Xr mount_msdosfs 8 , +.Xr newfs_msdos 8 , +.Xr umount 8 +.Sh AUTHORS +This manual page was written by +.An Tom Rhodes Aq Mt trhodes@FreeBSD.org . diff --git a/share/man/man4/mt7915.4 b/share/man/man4/mt7915.4 index fa5fd626d870..ba67a77af735 100644 --- a/share/man/man4/mt7915.4 +++ b/share/man/man4/mt7915.4 @@ -1,5 +1,7 @@ .\"- -.\" Copyright (c) 2023 Bjoern A. Zeeb +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2023-2024 Bjoern A. Zeeb .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -22,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 18, 2023 +.Dd November 10, 2024 .Dt MT7915 4 .Os .Sh NAME @@ -50,12 +52,9 @@ It is discouraged to load the driver from .Sh DESCRIPTION The .Nm -driver is derived from MediaTek's Linux mt76 driver and provides support for -the following chipsets: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It MediaTek MT7915E (PCIe) -.El +driver provides support for MediaTek MT7915E wireless network devices. +.Nm +is derived from MediaTek's Linux mt76 driver. .Pp This driver requires firmware to be loaded before it will work. The package @@ -67,28 +66,34 @@ Otherwise no .Xr wlan 4 interface can be created using .Xr ifconfig 8 . +One can use +.Xr fwget 8 +to install the correct firmware package. .Pp The driver uses the .\" No LinuxKPI man pages so no .Xr here. -.Em linuxkpi_wlan +.Sy linuxkpi_wlan and -.Em linuxkpi +.Sy linuxkpi compat framework to bridge between the Linux and native .Fx driver code as well as to the native .Xr net80211 4 wireless stack. -.Pp -While +.Sh HARDWARE +The .Nm -supports all 802.11 a/b/g/n/ac and ax -the compatibility code currently only supports 802.11 a/b/g modes. -Support for 802.11 n/ac is to come. -.Sh BUGS -Certainly. +driver supports PCIe devices with the following chipsets: +.Pp +.Bl -bullet -offset indent -compact +.It +MediaTek MT7915E +.El .Sh SEE ALSO .Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh HISTORY @@ -96,3 +101,11 @@ The .Nm driver first appeared in .Fx 14.0 . +.Sh BUGS +Certainly. +.Pp +While +.Nm +supports 802.11a/b/g/n/ac/ax modes, +the compatibility code currently only supports 802.11a/b/g modes. +Support for 802.11n/ac/ax is yet to come. diff --git a/share/man/man4/mt7921.4 b/share/man/man4/mt7921.4 index 460c90ece808..fe9efa77e35d 100644 --- a/share/man/man4/mt7921.4 +++ b/share/man/man4/mt7921.4 @@ -1,5 +1,7 @@ .\"- -.\" Copyright (c) 2023 Bjoern A. Zeeb +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2023-2024 Bjoern A. Zeeb .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -22,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 18, 2023 +.Dd November 10, 2024 .Dt MT7921 4 .Os .Sh NAME @@ -50,12 +52,9 @@ It is discouraged to load the driver from .Sh DESCRIPTION The .Nm -driver is derived from MediaTek's Linux mt76 driver and provides support for -the following chipsets: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It MediaTek MT7921E (PCIe) -.El +driver provides support for MediaTek MT7921E wireless network devices. +.Nm +is derived from MediaTek's Linux mt76 driver. .Pp This driver requires firmware to be loaded before it will work. The package @@ -67,28 +66,34 @@ Otherwise no .Xr wlan 4 interface can be created using .Xr ifconfig 8 . +One can use +.Xr fwget 8 +to install the correct firmware package. .Pp The driver uses the .\" No LinuxKPI man pages so no .Xr here. -.Em linuxkpi_wlan +.Sy linuxkpi_wlan and -.Em linuxkpi +.Sy linuxkpi compat framework to bridge between the Linux and native .Fx driver code as well as to the native .Xr net80211 4 wireless stack. -.Pp -While +.Sh HARDWARE +The .Nm -supports all 802.11 a/b/g/n/ac and ax -the compatibility code currently only supports 802.11 a/b/g modes. -Support for 802.11 n/ac is to come. -.Sh BUGS -Certainly. +driver supports PCIe devices with the following chipsets: +.Pp +.Bl -bullet -offset indent -compact +.It +MediaTek MT7921E +.El .Sh SEE ALSO .Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh HISTORY @@ -96,3 +101,11 @@ The .Nm driver first appeared in .Fx 14.0 . +.Sh BUGS +Certainly. +.Pp +While +.Nm +supports 802.11a/b/g/n/ac/ax modes, +the compatibility code currently only supports 802.11a/b/g modes. +Support for 802.11n/ac/ax is to come. diff --git a/share/man/man4/mtkswitch.4 b/share/man/man4/mtkswitch.4 new file mode 100644 index 000000000000..c879df161791 --- /dev/null +++ b/share/man/man4/mtkswitch.4 @@ -0,0 +1,45 @@ +.\" +.\" Copyright (c) 2025 Alexander Ziaee +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 19, 2025 +.Dt MTKSWITCH 4 +.Sh NAME +.Nm mtkswitch +.Nd MediaTek/Ralink Ethernet switch driver +.Sh SYNOPSIS +.Cd device mdio +.Cd device etherswitch +.Cd device mtkswitch +.Sh DESCRIPTION +The +.Nm +driver supports MediaTek/Ralink Ethernet switch controllers. +.Sh HARDWARE +The +.Nm +driver supports the following Ethernet switch controllers: +.Pp +.Bl -bullet -compact +.It +MediaTek MT7628 (5 port Fast Ethernet) +.It +MediaTek MT7621 (5 port Gigabit Ethernet) +.It +MediaTek MT7620 (5 port Fast Ethernet) +.It +Ralink RT5350 (5 port Fast Ethernet) +.It +Ralink RT3352 (5 port Fast Ethernet) +.It +Ralink RT3050 (5 port Fast Ethernet) +.El +.Sh SEE ALSO +.Xr etherswitch 4 , +.Xr etherswitchcfg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 11.0 . diff --git a/share/man/man4/mtw.4 b/share/man/man4/mtw.4 new file mode 100644 index 000000000000..6aa59d848d36 --- /dev/null +++ b/share/man/man4/mtw.4 @@ -0,0 +1,118 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 Jesper Schmitz Mouridsen <jsm@freebsd.org> +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 3, 2025 +.Dt MTW 4 +.Os +.Sh NAME +.Nm mtw +.Nd MediaTek MT7601U USB IEEE 802.11n wireless network driver +.Sh SYNOPSIS +.Cd device usb +.Cd device mtw +.Cd device wlan +.Pp +In +.Xr rc.conf 5 : +.Cd kld_list="if_mtw" +.Sh DESCRIPTION +This module provides support for +MediaTek MT7601U USB wireless network adapters. +If the appropriate hardware is detected, +the driver will be automatically loaded with +.Xr devmatch 8 . +If driver autoloading is explicitly disabled, enable the module in +.Xr rc.conf 5 . +The +.Nm +driver can be configured at runtime with +.Xr ifconfig 8 +or at boot with +.Xr rc.conf 5 . +.Sh HARDWARE +The +.Nm +driver supports MediaTek MT7601U based USB wireless network adapters +including (but not all of them tested): +.Pp +.Bl -bullet -compact +.It +ASUS USB-N10 v2 +.It +D-Link DWA-127 rev B1 +.It +Edimax EW-7711UAn v2 +.It +Foxconn WFU03 +.It +Tenda U2 +.It +Tenda W311MI v2 +.It +TP-LINK TL-WN727N v4 (tested working) +.It +Yealink WF40 +.El +.Sh FILES +The +.Nm +driver requires firmware from +.Pa ports/net/wifi-firmware-mt7601u-kmod . +This firmware package will be installed automatically with +.Xr fwget 8 +if the appropriate hardware is detected at installation or runtime. +.Sh SEE ALSO +.Xr usb 4 , +.Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 7.1 +and +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An James Hastings Aq Mt hastings@openbsd.org +and ported to +.Fx +by +.An Jesper Schmitz Mouridsen Aq Mt jsm@FreeBSD.org . +.Sh BUGS +.Nm +only works in +.Cm station +mode and +.Cm monitor +mode. +The firmware does not always reinitialize when reloading the module, +or when rebooting, without first unplugging the device. diff --git a/share/man/man4/mx25l.4 b/share/man/man4/mx25l.4 index ff2e78a8c5aa..5dffdebcf43e 100644 --- a/share/man/man4/mx25l.4 +++ b/share/man/man4/mx25l.4 @@ -22,7 +22,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 26, 2019 +.Dd June 11, 2024 .Dt MX25L 4 .Os .Sh NAME @@ -60,7 +60,7 @@ such as block size, sector size, and device capacity. When a supported device is found, the .Nm driver creates a disk device and makes it accessible at -.Pa /dev/flash/mx25l? . +.Pa /dev/flash/spi? . The new disk device is then tasted by the available .Xr geom 4 modules as with any disk device. @@ -189,13 +189,9 @@ Set the high bit (1 << 31) to invert the logic level of the chip select line. The SPI mode (0-3) to use when communicating with this device. .El .Sh FILES -.Bl -tag -width /dev/flash/mx25l? -.It Pa /dev/flash/mx25l? -Provides read/write access to the storage device. +.Bl -tag -width /dev/flash/spi? .It Pa /dev/flash/spi? -An alias for the -.Pa /dev/mx25l? -device, for backwards compatibility with older versions of the driver. +Provides read/write access to the storage device. .El .Sh SEE ALSO .Xr fdt 4 , diff --git a/share/man/man4/netmap.4 b/share/man/man4/netmap.4 index fd713f3c384b..6be0c8662d59 100644 --- a/share/man/man4/netmap.4 +++ b/share/man/man4/netmap.4 @@ -25,7 +25,7 @@ .\" This document is derived in part from the enet man page (enet.4) .\" distributed with 4.3BSD Unix. .\" -.Dd March 6, 2022 +.Dd October 10, 2024 .Dt NETMAP 4 .Os .Sh NAME @@ -827,7 +827,7 @@ On .Xr em 4 , .Xr iflib 4 .Pq providing Xr igb 4 and Xr em 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr ixl 4 , .Xr re 4 , .Xr vtnet 4 . @@ -938,6 +938,16 @@ switches that can be created. This tunable can be specified at loader time. .It Va dev.netmap.ptnet_vnet_hdr: 1 Allow ptnet devices to use virtio-net headers +.It Va dev.netmap.port_numa_affinity: 0 +On +.Xr numa 4 +systems, allocate memory for netmap ports from the local NUMA domain when +possible. +This can improve performance by reducing the number of remote memory accesses. +However, when forwarding packets between ports attached to different NUMA +domains, this will prevent zero-copy forwarding optimizations and thus may hurt +performance. +Note that this setting must be specified as a loader tunable at boot time. .El .Sh SYSTEM CALLS .Nm @@ -1113,10 +1123,10 @@ with the network card or the host. .Sh SEE ALSO .Xr vale 4 , .Xr bridge 8 , -.Xr valectl 8 , .Xr lb 8 , .Xr nmreplay 8 , -.Xr pkt-gen 8 +.Xr pkt-gen 8 , +.Xr valectl 8 .Pp .Pa http://info.iet.unipi.it/~luigi/netmap/ .Pp diff --git a/share/man/man4/nfslockd.4 b/share/man/man4/nfslockd.4 new file mode 100644 index 000000000000..770d9b8736b0 --- /dev/null +++ b/share/man/man4/nfslockd.4 @@ -0,0 +1,45 @@ +.\"- +.\" Copyright (c) 2024 Dag-Erling Smørgrav +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 8, 2024 +.Dt NFSLOCKD 4 +.Os +.Sh NAME +.Nm nfslockd +.Nd NFS advisory locking +.Sh SYNOPSIS +To compile this driver into the kernel, place the following lines in +your kernel configuration file: +.Bd -ragged -offset indent +.Cd "options NFSLOCKD" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, place the +following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +nfslockd_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver provides kernel support for NFSv3 advisory locking. +It works in tandem with +.Xr rpc.lockd 8 , +which will normally load it on startup if it is not already loaded or +compiled-in. +.Sh SEE ALSO +.Xr rpc.lockd 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 6.4 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Doug Rabson Aq Mt dfr@FreeBSD.org . diff --git a/share/man/man4/ng_iface.4 b/share/man/man4/ng_iface.4 index 0579028b4c74..e2dee22b67b9 100644 --- a/share/man/man4/ng_iface.4 +++ b/share/man/man4/ng_iface.4 @@ -153,8 +153,8 @@ to the desired level of nesting. .Xr netgraph 4 , .Xr ng_cisco 4 , .Xr ifconfig 8 , -.Xr ngctl 8 -.Xr sysctl +.Xr ngctl 8 , +.Xr sysctl 8 .Sh HISTORY The .Nm iface diff --git a/share/man/man4/ng_ksocket.4 b/share/man/man4/ng_ksocket.4 index 1f32d39dc7d0..bb653c3688ad 100644 --- a/share/man/man4/ng_ksocket.4 +++ b/share/man/man4/ng_ksocket.4 @@ -32,7 +32,7 @@ .\" .\" Author: Archie Cobbs <archie@FreeBSD.org> .\" -.Dd January 9, 2012 +.Dd January 9, 2025 .Dt NG_KSOCKET 4 .Os .Sh NAME @@ -183,7 +183,8 @@ in the argument field, the normal equivalent of the C structure is an acceptable form. For the -.Dv PF_INET +.Dv PF_INET , +.Dv PF_INET6 and .Dv PF_LOCAL address families, a more convenient form is also used, which is @@ -191,7 +192,11 @@ the protocol family name, followed by a slash, followed by the actual address. For .Dv PF_INET , -the address is an IP address followed by an optional colon and port number. +the address is an IPv4 address followed by an optional colon and port number. +For +.Dv PF_INET6 , +the address is an IPv6 address enclosed in square brackets followed +by an optional colon and port number. For .Dv PF_LOCAL , the address is the pathname as a doubly quoted string. @@ -202,6 +207,8 @@ Examples: local/"/tmp/foo.socket" .It Dv PF_INET inet/192.168.1.1:1234 +.It Dv PF_INET6 +inet6/[2001::1]:1234 .It Other .Dv "\&{ family=16 len=16 data=[0x70 0x00 0x01 0x23] \&}" .El diff --git a/share/man/man4/ng_nat.4 b/share/man/man4/ng_nat.4 index 10615b3b387d..20042db7a1af 100644 --- a/share/man/man4/ng_nat.4 +++ b/share/man/man4/ng_nat.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 24, 2021 +.Dd December 6, 2024 .Dt NG_NAT 4 .Os .Sh NAME @@ -74,6 +74,7 @@ struct ng_nat_mode { #define NG_NAT_PROXY_ONLY 0x40 #define NG_NAT_REVERSE 0x80 #define NG_NAT_UNREGISTERED_CGN 0x100 +#define NG_NAT_UDP_EIM 0x200 .Ed .Pp The corresponding libalias flags can be found by replacing the @@ -265,7 +266,7 @@ In case of .Nm failed to retrieve a certain counter from its -.Xr libalias +.Xr libalias 3 instance, the corresponding field is returned as .Va UINT32_MAX . .It Dv NGM_NAT_SET_DLT Pq Ic setdlt @@ -396,8 +397,8 @@ SEQ .Xr libalias 3 , .Xr ng_ipfw 4 , .Xr natd 8 , -.Xr ngctl 8 , -.Xr ng_ether 8 +.Xr ng_ether 8 , +.Xr ngctl 8 .Sh HISTORY The .Nm diff --git a/share/man/man4/ng_one2many.4 b/share/man/man4/ng_one2many.4 index 8a73c51d2bcf..06bcbabedb63 100644 --- a/share/man/man4/ng_one2many.4 +++ b/share/man/man4/ng_one2many.4 @@ -250,6 +250,7 @@ With a similar setup on a peer machine (using the address Ethernet connection with four times normal bandwidth is achieved. .Sh SEE ALSO +.Xr lagg 4 , .Xr netgraph 4 , .Xr ng_bridge 4 , .Xr ng_ether 4 , diff --git a/share/man/man4/ng_patch.4 b/share/man/man4/ng_patch.4 index 7a8543fd7dd8..9c0d7a8ee512 100644 --- a/share/man/man4/ng_patch.4 +++ b/share/man/man4/ng_patch.4 @@ -80,7 +80,7 @@ Sets the data link type on the .Va in hook (to help calculate relative offset). Currently, supported types are .Cm DLT_RAW -(raw IP datagrams , no offset applied, the default) and +(raw IP datagrams, no offset applied, the default) and .Cm DLT_EN10MB (Ethernet). DLT_ definitions can be found in .In net/bpf.h . @@ -135,6 +135,17 @@ corresponding checksum before transmitting packet on output interface. The .Nm node does not do any checksum correction by itself. +.Pp +The +.Va offset +value for the +.Vt ng_patch_op +structure is calculated from zero by default (the first byte of +packet headers). +If +.Va relative_offset +is enabled (set to 1) during configuration, the operation will have an +additional amount added to the offset based on the data link type. .It Dv NGM_PATCH_GETCONFIG Pq Ic getconfig This control message returns the current set of modify operations, in the form of a diff --git a/share/man/man4/ng_pppoe.4 b/share/man/man4/ng_pppoe.4 index 346b2bfbe279..5b5f0dd64de2 100644 --- a/share/man/man4/ng_pppoe.4 +++ b/share/man/man4/ng_pppoe.4 @@ -565,9 +565,9 @@ setup(char *ethername, char *service, char *sessname, .Xr ng_ether 4 , .Xr ng_ppp 4 , .Xr ng_socket 4 , +.Xr vlan 4 , .Xr ngctl 8 , -.Xr ppp 8 , -.Xr vlan 4 +.Xr ppp 8 .Rs .%A L. Mamakos .%A K. Lidl diff --git a/share/man/man4/nullfs.4 b/share/man/man4/nullfs.4 new file mode 100644 index 000000000000..5aca03071594 --- /dev/null +++ b/share/man/man4/nullfs.4 @@ -0,0 +1,80 @@ +.\" +.\" Copyright (c) 2008 Daniel Gerzo +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 15, 2022 +.Dt NULLFS 4 +.Os +.Sh NAME +.Nm nullfs +.Nd "null file system" +.Sh SYNOPSIS +To enable support for this driver, +place the following line in the kernel configuration file: +.Bd -ragged -offset indent +.Cd "options NULLFS" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +nullfs_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver will permit the +.Fx +kernel to mount a loopback file system sub-tree. +.Sh EXAMPLES +To mount a +.Nm +file system: +.Pp +.Dl "mount_nullfs /usr/ports /home/devel/ports" +.Pp +It is also possible to define an entry in +.Xr fstab 5 +that looks similar to: +.Pp +.Bd -literal +/usr/ports /home/devel/ports nullfs rw 0 0 +.Ed +.Sh SEE ALSO +.Xr fstab 5 , +.Xr mount_nullfs 8 +.Sh HISTORY +The +.Nm +layer first appeared in +.Bx 4.4 . +.Sh AUTHORS +.An -nosplit +The +.Nm +kernel implementation was written by +.An John Heideman . +.Pp +This manual page was written by +.An Daniel Gerzo Aq Mt danger@FreeBSD.org . diff --git a/share/man/man4/nvdimm.4 b/share/man/man4/nvdimm.4 index ffeac1a673fd..5b7dbe435c46 100644 --- a/share/man/man4/nvdimm.4 +++ b/share/man/man4/nvdimm.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 2019 The FreeBSD Foundation, Inc. +.\" Copyright (c) 2019 The FreeBSD Foundation .\" .\" This documentation was written by .\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship diff --git a/share/man/man4/nvme.4 b/share/man/man4/nvme.4 index 011ff483c839..dcd2ec86f5fa 100644 --- a/share/man/man4/nvme.4 +++ b/share/man/man4/nvme.4 @@ -239,6 +239,15 @@ detects that the AHCI device supports RST and when it is enabled. See .Xr ahci 4 for more details. +.Sh DIAGNOSTICS +.Bl -diag +.It "nvme%d: System interrupt issues?" +The driver found a timed-out transaction had a pending completion record, +indicating an interrupt had not been delivered. +The system is either not configuring interrupts properly, or the system drops +them under load. +This message will appear at most once per boot per controller. +.El .Sh SEE ALSO .Xr nda 4 , .Xr nvd 4 , diff --git a/share/man/man4/nvmf.4 b/share/man/man4/nvmf.4 index 8afbb4d9daaf..9ace67783351 100644 --- a/share/man/man4/nvmf.4 +++ b/share/man/man4/nvmf.4 @@ -3,7 +3,7 @@ .\" .\" Copyright (c) 2024 Chelsio Communications, Inc. .\" -.Dd May 2, 2024 +.Dd May 7, 2025 .Dt NVMF 4 .Os .Sh NAME @@ -65,6 +65,28 @@ disk driver. Associations require a supported transport such as .Xr nvmf_tcp 4 for associations using TCP/IP. +.Sh SYSCTL VARIABLES +The following variables are available as both +.Xr sysctl 8 +variables and +.Xr loader 8 +tunables: +.Bl -tag -width indent +.It Va kern.nvmf.fail_on_disconnection +Determines the behavior when an association's connection is interrupted. +By default, input/output operations are suspended while a host is disconnected. +This includes operations pending at the time the association's connection was +interrupted as well as new requests submitted while the host is disconnected. +Once a new association is established, suspended I/O requests are retried. +When set to 1, input/output operations fail with +.Er EIO +while a host is disconnected and +.Xr nda 4 +peripherals are destroyed after the first failed I/O request. +Note that any destroyed +.Xr nda 4 +peripherals will be recreated after a new association is established. +.El .Sh SEE ALSO .Xr nda 4 , .Xr nvme 4 , @@ -82,6 +104,3 @@ The driver was developed by .An John Baldwin Aq Mt jhb@FreeBSD.org under sponsorship from Chelsio Communications, Inc. -.Sh BUGS -.Nm -only supports a single I/O queue pair per association. diff --git a/share/man/man4/nvmf_tcp.4 b/share/man/man4/nvmf_tcp.4 index 4d77997c19a2..0a650e342f0e 100644 --- a/share/man/man4/nvmf_tcp.4 +++ b/share/man/man4/nvmf_tcp.4 @@ -3,7 +3,7 @@ .\" .\" Copyright (c) 2024 Chelsio Communications, Inc. .\" -.Dd May 2, 2024 +.Dd July 25, 2024 .Dt NVMF_TCP 4 .Os .Sh NAME @@ -35,10 +35,17 @@ variables and .Xr loader 8 tunables: .Bl -tag -width indent -.It Va kern.nvmf.tcp.max_c2hdata -The maximum data payload size of a +.It Va kern.nvmf.tcp.max_transmit_data +The maximum data payload size of .Va C2H_DATA -PDU sent by the controller to a remote host. +and +.Va H2C_DATA +PDUs. +A remote controller may enforce a lower limit on the size of +.Va H2C_DATA +PDUs via the +.Va MAXH2CDATA +parameter. The default size is 256 kilobytes. .El .Sh SEE ALSO diff --git a/share/man/man4/oce.4 b/share/man/man4/oce.4 index 47b09cdd7136..a8cd9ae80734 100644 --- a/share/man/man4/oce.4 +++ b/share/man/man4/oce.4 @@ -34,7 +34,7 @@ .\" 3333 Susan Street .\" Costa Mesa, CA 92626 .\" -.Dd June 13, 2023 +.Dd January 27, 2025 .Dt OCE 4 .Os .Sh NAME @@ -55,12 +55,6 @@ module at boot time, place the following line in .Bd -literal -offset indent if_oce_load="YES" .Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver may not be present in -.Fx 15.0 -and later. .Sh DESCRIPTION Emulex OneConnect adapters come in various skews and with different combinations of NIC, FCoE and iSCSI functions. diff --git a/share/man/man4/otus.4 b/share/man/man4/otus.4 index 040d4b14cb01..06f73bfe3338 100644 --- a/share/man/man4/otus.4 +++ b/share/man/man4/otus.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: ISC .\" .\" Copyright (c) 2015 Adrian Chadd <adrian@FreeBSD.org> .\" @@ -13,12 +15,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd September 25, 2015 +.Dd November 10, 2024 .Dt OTUS 4 .Os .Sh NAME .Nm otus -.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network device +.Nd Atheros AR9170 USB IEEE 802.11a/b/g/n wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: @@ -79,57 +81,73 @@ The .Nm driver can be configured at runtime with .Xr ifconfig 8 . -.Sh FILES -The driver needs at least version 1.0 of the following firmware files, -which is loaded when an interface is attached: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It Pa /boot/kernel/otusfw-init.ko -.It Pa /boot/kernel/otusfw-main.ko -.El .Sh HARDWARE The .Nm driver provides support for Atheros AR9170 USB IEEE 802.11b/g/n wireless network adapters, including: .Pp -.Bl -tag -width Ds -offset indent -compact -.It 3Com 3CRUSBN275 -.It Arcadyan WN7512 +.Bl -bullet -offset indent -compact +.It +3Com 3CRUSBN275 +.It +Arcadyan WN7512 .\" .It AVM FRITZ!WLAN USB Stick N -.It CACE AirPcap \&Nx -.It D-Link DWA-130 rev \&D1 -.It D-Link DWA-160 rev A1 -.It D-Link DWA-160 rev A2 -.It IO-Data WN-GDN/US2 -.It NEC Aterm WL300NU-G -.It Netgear WNDA3100 -.It Netgear WN111 v2 -.It Planex GW-US300 -.It SMC Networks SMCWUSB-N2 -.It TP-Link TL-WN821N v1, v2 -.It Ubiquiti SR71 USB -.It Unex DNUA-81 -.It Z-Com UB81 -.It Z-Com UB82 -.It ZyXEL NWD-271N +.It +CACE AirPcap \&Nx +.It +D-Link DWA-130 rev \&D1 +.It +D-Link DWA-160 rev A1 +.It +D-Link DWA-160 rev A2 +.It +IO-Data WN-GDN/US2 +.It +NEC Aterm WL300NU-G +.It +Netgear WNDA3100 +.It +Netgear WN111 v2 +.It +Planex GW-US300 +.It +SMC Networks SMCWUSB-N2 +.It +TP-Link TL-WN821N v1, v2 +.It +Ubiquiti SR71 USB +.It +Unex DNUA-81 +.It +Z-Com UB81 +.It +Z-Com UB82 +.It +ZyXEL NWD-271N +.El +.Sh FILES +The driver needs at least version 1.0 of the following firmware files, +which is loaded when an interface is attached: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It Pa /boot/kernel/otusfw-init.ko +.It Pa /boot/kernel/otusfw-main.ko .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev otus0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev otus0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev otus0 ssid my_net up" +.Dl ifconfig wlan create wlandev otus0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev otus0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Sh DIAGNOSTICS .Bl -diag @@ -152,7 +170,9 @@ The file might be missing or corrupted. The .Nm driver first appeared in -.Ox 4.6 . +.Ox 4.6 +and +.Fx 11 . .Sh AUTHORS .An -nosplit The diff --git a/share/man/man4/ow_temp.4 b/share/man/man4/ow_temp.4 index f3fd0f488f43..5afce6bd69d5 100644 --- a/share/man/man4/ow_temp.4 +++ b/share/man/man4/ow_temp.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2015 M. Warner Losh <imp@FreeBSD.org> .\" @@ -21,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 20, 2015 +.Dd November 22, 2024 .Dt OW_TEMP 4 .Os .Sh NAME @@ -38,22 +40,17 @@ The sensor is read periodically and the results returned via a .Xr sysctl 3 as described below. .Sh HARDWARE -These temperature sensors are supported by the +The .Nm -driver: -.Bl -tag -width MAX31820 -compact -.It DS1820 -1-Wire Digital Thermometer -.It DS18S20 -High-Precision 1-Wire Digital Thermometer -.It DS18B20 -Programmable Resolution 1-Wire Digital Thermometer -.It DS1822 -Econo 1-Wire Digital Thermometer -.It DS1825 -Programmable Resolution 1-Wire Digital Thermometer with 4-bit ID -.It MAX31820 -1-Wire, Parasite-Power, Ambient Temperature Sensor +driver supports the following temperature sensors: +.Pp +.Bl -column "DS18S20" "Econo 1-Wire Digital Thermometer" -compact +.It DS1820 Ta 1-Wire Digital Thermometer +.It DS18S20 Ta High-Precision 1-Wire Digital Thermometer +.It DS18B20 Ta Programmable Resolution 1-Wire Digital Thermometer +.It DS1822 Ta Econo 1-Wire Digital Thermometer +.It DS1825 Ta Programmable Resolution 1-Wire Digital Thermometer with 4-bit ID +.It MAX31820 Ta 1-Wire, Parasite-Power, Ambient Temperature Sensor .El .Pp The driver supports Family codes 0x10, 0x22, 0x28, and 0x3b. @@ -65,11 +62,11 @@ driver reports data via entries in the device's node in the .Xr sysctl 8 tree: -.Bl -tag -width xxxxxxxxxx +.Bl -tag -width "reading_interval" .It temperature The last temperature read, in milli-Kelvin. .It badcrc -The number of CRC errors in reading the temperature form the +The number of CRC errors in reading the temperature from the device. Some CRC errors are to be expected. High rates of CRC errors, however, generally indicate a noisy diff --git a/share/man/man4/p9fs.4 b/share/man/man4/p9fs.4 new file mode 100644 index 000000000000..04f27abd2545 --- /dev/null +++ b/share/man/man4/p9fs.4 @@ -0,0 +1,127 @@ +.\" +.\" Copyright (c) 2022-present Doug Rabson +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 7, 2024 +.Dt P9FS 4 +.Os +.Sh NAME +.Nm p9fs +.Nd "9P file system" +.Sh SYNOPSIS +To use this filesystem, +either add the following to the kernel config: +.Bd -ragged -offset indent +.Cd "options P9FS" +.Cd "device virtio_p9fs" +.Ed +.Pp +Alternatively, load the driver as a kernel module, +either at boot time by adding the following to +.Xr loader.conf 5 : +.Bd -literal -offset indent +virtio_p9fs_load="YES" +.Ed +.Pp +or on system startup using the command: +.Pp +.Dl "# sysrc kld_list+=virtio_p9fs" +.Sh DESCRIPTION +The +.Nm +filesystem uses the 9P protocol to mount a host file system directory +into a +.Xr bhyve 8 +guest. +Multiple host directories can be accessed using the +.Xr bhyve 8 +virtio-9p virtual PCI device. +Each device is configured with a share name and a host directory path. +The share name can be used with +.Xr mount 8 +to mount the host directory in the guest: +.Pp +.Dl "# mount -t p9fs mysharename /mnt" +.Pp +Host directories can be mounted on system startup using +.Xr fstab 5 +like this: +.Pp +.Bd -literal -offset indent +mysharename /mnt p9fs rw 0 0 +.Ed +.Pp +Using +.Nm +as a root file system is supported by adding the following to +.Xr loader.conf 5 : +.Bd -literal -offset indent +vfs.root.mountfrom="p9fs:mysharename" +.Ed +.Sh LIMITATIONS +The 9P protocol relies on stateful file opens +which map protocol-level FIDs to host file descriptors. +The FreeBSD vnode interface doesn't support this and +.Nm +uses heuristics to guess the right FID to use for file operations. +.Pp +This can be confused by privilege lowering and +does not guarantee that the FID created for a +given file open is always used, +even if the calling process is using the file descriptor from +the original open call. +.Pp +In particular, accessing unlinked files using open file descriptor +may not work correctly. +If +.Nm +is the root filesystem, +it is recommented to use with +.Xr tmpfs 5 +to ensure that temporary files created in +.Pa /tmp +or +.Pa /var/tmp +have the expected semantics. +.Sh SEE ALSO +.Xr fstab 5 +.Sh HISTORY +The 9P protocol first appeared in the Plan 9 operating system. +More recently, the protocol has been widely used with virtual machines +to allow the use of host file resources inside a guest VM. +.Sh AUTHORS +This is derived from software released by Juniper Networks, Inc. +with many improvements and fixes from +.An Steve Wills . +.Pp +This manual page was written by +.An -nosplit +.An Doug Rabson Aq Mt dfr@FreeBSD.org . +.Sh BUGS +A better name for this filesystem would be +.Ar 9pfs +but for technical reasons, +the names of filesystems must be valid C identifiers. +As a compromise, +the filesystem is named +.Nm . diff --git a/share/man/man4/pci.4 b/share/man/man4/pci.4 index e9b587dac12c..91fbb557f644 100644 --- a/share/man/man4/pci.4 +++ b/share/man/man4/pci.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 4, 2022 +.Dd April 2, 2025 .Dt PCI 4 .Os .Sh NAME @@ -372,16 +372,18 @@ The input parameters and results are passed in the .Va pci_bar_mmap structure, which has the following fields: .Bl -tag -width Vt struct pcise pbm_sel -.It Vt uint64_t pbm_map_base +.It Vt void *pbm_map_base Reports the established mapping base to the caller. If .Va PCIIO_BAR_MMAP_FIXED flag was specified, then this field must be filled before the call with the desired address for the mapping. -.It Vt uint64_t pbm_map_length +.It Vt size_t pbm_map_length Reports the mapped length of the BAR, in bytes. -Its .Vt uint64_t value is always multiple of machine pages. -.It Vt int64_t pbm_bar_length +Its +.Vt size_t +value is always multiple of machine pages. +.It Vt uint64_t pbm_bar_length Reports length of the bar as exposed by the device. .It Vt int pbm_bar_off Reports offset from the mapped base to the start of the @@ -624,7 +626,12 @@ pin identified by the tunable name. Mapping of IRQ values to platform interrupt sources is machine dependent. .El .Sh DEVICE WIRING -You can wire the device unit at a given location with device.hints. +You can wire the device unit at a given location with +.Xr device.hints 5 . +.Ss BSF Based Wiring +Devices may be wired to a Bus / Slot / Function (BSF) address. +This is the form reported by +.Xr pciconf 8 Entries of the form .Va hints.<name>.<unit>.at="pci<B>:<S>:<F>" or @@ -639,7 +646,7 @@ for any PCI device found to match the specification, where: The domain .Pq or segment of the PCI device in decimal. -Defaults to 0 if unspecified +Defaults to 0 if unspecified. .It <B> The bus address of the PCI device in decimal. .It <S> @@ -660,15 +667,18 @@ produces undefined results. .Ss Examples Given the following lines in .Pa /boot/device.hints : -.Cd hint.nvme.3.at="pci6:0:0" -.Cd hint.igb.8.at="pci14:0:0" +.Bd -literal +hint.nvme.3.at="pci6:0:0" +hint.igb.8.at="pci14:0:0" +.Ed +.Pp If there is a device that supports .Xr igb 4 at PCI bus 14 slot 0 function 0, then it will be assigned igb8 for probe and attach. Likewise, if there is an .Xr nvme 4 -card at PCI bus 6 slot 0 function 0, +device at PCI bus 6 slot 0 function 0, then it will be assigned nvme3 for probe and attach. If another type of card is in either of these locations, the name and unit of that card will be the default names and will be unaffected by @@ -676,6 +686,33 @@ these hints. If other igb or nvme cards are located elsewhere, they will be assigned their unit numbers sequentially, skipping the unit numbers that have 'at' hints. +.Ss Location Based Wiring +While simple to locate where to place a device for BSF wiring, the +bus number of that is not invariant. +Any number of changes to the devices within the system can cause +this value to vary from boot to boot. +The UEFI Standard defines a device path that's based only on the invariant parts +of the address: The root complex (domain), the slot number and the function. +These paths are hard to construct by hand, please see +.Xr devctl 8 +.Sq Cm getpath +command with a +.Sq Ar UEFI +locator. +The above example could also be expressed as +.Bd -literal +hint.nvme.3.at="PciRoot(0x2)/Pci(0x1,0x3)/Pci(0x0,0x0)/Pci(0x0,0x0)/Pci(0x0,0x0)" +hint.nvme.8.at="PciRoot(0x1)/Pci(0x2,0x2)/Pci(0x0,0x0)/Pci(0x0,0x0)" +.Ed +.Pp +The advantage of this notation is that you can specify the exact location a +device will be at. +For deployments of multiple systems with the same configuration, this can be +helpful in managing the devices. +However, even slight variation in motherboards can cause the path to change +substantially. +It is also less natural to think of the UEFI Device Paths since little else +will report it. .Sh FILES .Bl -tag -width /dev/pci -compact .It Pa /dev/pci @@ -684,6 +721,7 @@ Character device for the driver. .El .Sh SEE ALSO +.Xr device.hints 5 .Xr pciconf 8 .Sh HISTORY The diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4 index e406bd2c8343..518c37b54f1d 100644 --- a/share/man/man4/pcm.4 +++ b/share/man/man4/pcm.4 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 24, 2024 +.Dd February 15, 2025 .Dt SOUND 4 .Os .Sh NAME @@ -101,6 +101,8 @@ The following bridge device drivers are available: .It .Xr snd_hda 4 (enabled by default on amd64, i386) .It +.Xr snd_hdsp 4 +.It .Xr snd_hdspe 4 .It .Xr snd_ich 4 (enabled by default on amd64, i386) @@ -283,7 +285,7 @@ Use the most recently attached device. .It Va hw.snd.default_unit Default sound card for systems with multiple sound cards. When using -.Xr devfs 5 , +.Xr devfs 4 , the default device for .Pa /dev/dsp . Equivalent to a symlink from @@ -358,14 +360,12 @@ A value of 0 will use a low and aggressive latency profile which can result in possible underruns if the application cannot keep up with a rapid irq rate, especially during high workload. The default value is 1, which is considered a moderate/safe latency profile. -.It Va hw.snd.maxautovchans -Global VCHAN setting that only affects devices with at least one playback or -recording channel available. -The sound system will dynamically create up to this many VCHANs. -Set to -.Dq 0 -if no VCHANs are desired. -Maximum value is 256. +.It Va hw.snd.vchans_enable +Global VCHAN setting to enable (1) or disable (0) VCHANs. +This setting can be overridden for an individual device by using the +.Va dev.pcm.%d.[play|rec].vchans +tunables. +Default is enabled. .It Va hw.snd.report_soft_formats Controls the internal format conversion if it is available transparently to the application software. @@ -432,11 +432,8 @@ The recommended way to use bitperfect mode is to disable VCHANs and enable this sysctl. Default is disabled. .It Va dev.pcm.%d.[play|rec].vchans -The current number of VCHANs allocated per device. -This can be set to preallocate a certain number of VCHANs. -Setting this value to -.Dq 0 -will disable VCHANs for this device. +Enable (1) or disable (0) VCHANs. +Default is enabled. .It Va dev.pcm.%d.[play|rec].vchanformat Format for VCHAN mixing. All playback paths will be converted to this format before the mixing @@ -595,6 +592,7 @@ or outgoing (record) data. A device node is not created properly. .El .Sh SEE ALSO +.Xr devfs 4 , .Xr snd_ai2s 4 , .Xr snd_als4000 4 , .Xr snd_atiixp 4 , @@ -609,6 +607,7 @@ A device node is not created properly. .Xr snd_es137x 4 , .Xr snd_fm801 4 , .Xr snd_hda 4 , +.Xr snd_hdsp 4 , .Xr snd_hdspe 4 , .Xr snd_ich 4 , .Xr snd_maestro3 4 , @@ -620,7 +619,6 @@ A device node is not created properly. .Xr snd_via8233 4 , .Xr snd_via82c686 4 , .Xr snd_vibes 4 , -.Xr devfs 5 , .Xr device.hints 5 , .Xr loader.conf 5 , .Xr dmesg 8 , @@ -675,3 +673,10 @@ It was then rewritten for .Sh BUGS Some features of your sound card (e.g., global volume control) might not be supported on all devices. +.Pp +Some audio devices might refuse to work properly unless the sample rate is +configured the same for both recording and playback, even if only simplex is +used. +See the +.Va dev.pcm.%d.[play|rec].vchanrate +sysctls. diff --git a/share/man/man4/pf.4 b/share/man/man4/pf.4 index 645f31e6e395..03a4ba2bbe7f 100644 --- a/share/man/man4/pf.4 +++ b/share/man/man4/pf.4 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 20, 2023 +.Dd July 2, 2025 .Dt PF 4 .Os .Sh NAME @@ -35,6 +35,23 @@ .Sh SYNOPSIS .Cd "device pf" .Cd "options PF_DEFAULT_TO_DROP" +.Pp +In +.Xr rc.conf 5 : +.Cd pf_enable="YES" +.Pp +In +.Xr loader.conf 5 : +.Cd net.pf.states_hashsize +.Cd net.pf.source_nodes_hashsize +.Cd net.pf.rule_tag_hashsize +.Cd net.pf.udpendpoint_hashsize +.Cd net.pf.default_to_drop +.Pp +In +.Xr sysctl.conf 5 : +.Cd net.pf.request_maxcount +.Cd net.pf.filter_local .Sh DESCRIPTION Packet filtering takes place in the kernel. A pseudo-device, @@ -74,23 +91,54 @@ separated by characters, similar to how file system hierarchies are laid out. The final component of the anchor path is the anchor under which operations will be performed. -.Sh SYSCTL VARIABLES AND LOADER TUNABLES -The following +.Sh SYSCTL VARIABLES +The following variables can be entered at the +.Xr loader 8 +prompt, set in +.Xr loader.conf 5 , +.Xr sysctl.conf 5 , +or changed at runtime with +.Xr sysctl 8 : +.Bl -tag -width indent +.It Va net.pf.filter_local +This tells +.Nm +to also filter on the loopback output hook. +This is typically used to allow redirect rules to adjust the source address. +.It Va net.pf.request_maxcount +The maximum number of items in a single ioctl call. +.El +.Sh LOADER TUNABLES +The following tunables can be entered at the .Xr loader 8 -tunables are available. +prompt, or set in +.Xr loader.conf 5 : .Bl -tag -width indent .It Va net.pf.states_hashsize -Size of hash tables that store states. +Size of hash table that stores states. Should be power of 2. Default value is 131072. .It Va net.pf.source_nodes_hashsize -Size of hash table that store source nodes. +Size of hash table that stores source nodes. +Should be power of 2. +Default value is 32768. +.It Va net.pf.rule_tag_hashsize +Size of the hash table that stores tags. +.It Va net.pf.udpendpoint_hashsize +Size of hash table that store UDP endpoint mappings. Should be power of 2. Default value is 32768. .It Va net.pf.default_to_drop This value overrides .Cd "options PF_DEFAULT_TO_DROP" from kernel configuration file. +.It Va net.pf.filter_local +This tells +.Nm +to also filter on the loopback output hook. +This is typically used to allow redirect rules to adjust the source address. +.It Va net.pf.request_maxcount +The maximum number of items in a single ioctl call. .El .Pp Read only @@ -664,7 +712,7 @@ struct pfr_tstats { [PFR_DIR_MAX][PFR_OP_TABLE_MAX]; u_int64_t pfrts_match; u_int64_t pfrts_nomatch; - long pfrts_tzero; + time_t pfrts_tzero; int pfrts_cnt; int pfrts_refcnt[PFR_REFCNT_MAX]; }; @@ -804,7 +852,7 @@ struct pfr_astats { [PFR_DIR_MAX][PFR_OP_ADDR_MAX]; u_int64_t pfras_bytes [PFR_DIR_MAX][PFR_OP_ADDR_MAX]; - long pfras_tzero; + time_t pfras_tzero; }; .Ed .It Dv DIOCRCLRASTATS Fa "struct pfioc_table *io" @@ -1066,7 +1114,7 @@ will be set to the length of the buffer actually used. .It Dv DIOCCLRSRCNODES Clear the tree of source tracking nodes. .It Dv DIOCIGETIFACES Fa "struct pfioc_iface *io" -Get the list of interfaces and interface drivers known to +Get the list of interfaces and interface groups known to .Nm . All the ioctls that manipulate interfaces use the same structure described below: @@ -1083,7 +1131,7 @@ struct pfioc_iface { .Pp If not empty, .Va pfiio_name -can be used to restrict the search to a specific interface or driver. +can be used to restrict the search to a specific interface or group. .Va pfiio_buffer[pfiio_size] is the user-supplied buffer for returning the data. On entry, diff --git a/share/man/man4/pfsync.4 b/share/man/man4/pfsync.4 index 96f498c7a7cb..cc9c350ea875 100644 --- a/share/man/man4/pfsync.4 +++ b/share/man/man4/pfsync.4 @@ -32,6 +32,14 @@ .Nd packet filter state table synchronisation interface .Sh SYNOPSIS .Cd "device pfsync" +.Pp +In +.Xr loader.conf 5 : +.Cd net.pfsync.pfsync_buckets +.Pp +In +.Xr sysctl.conf 5 : +.Cd net.pfsync.carp_demotion_factor .Sh DESCRIPTION The .Nm @@ -147,7 +155,6 @@ E.g.: # ifconfig pfsync0 version 1301 .Ed .Pp -.Bd Currently the following versions are supported: .Bl -tag -width indent .It Cm 1301 @@ -156,13 +163,14 @@ Compatibility with FreeBSD 13.1 has been verified. .It Cm 1400 FreeBSD release 14.0. .El -.Ed -.Pp -.Nm -has the following -.Xr sysctl 8 -tunables: -.Bl -tag -width ".Va net.pfsync" +.Sh SYSCTL VARIABLES +The following variables can be entered at the +.Xr loader 8 +prompt, set in +.Xr loader.conf 5 , +or changed at runtime with +.Xr sysctl 8 : +.Bl -tag -width indent .It Va net.pfsync.carp_demotion_factor Value added to .Va net.inet.carp.demotion @@ -173,6 +181,14 @@ See .Xr carp 4 for more information. Default value is 240. +.El +.Sh LOADER TUNABLES +The following tunable may be set in +.Xr loader.conf 5 +or at the +.Xr loader 8 +prompt: +.Bl -tag -width indent .It Va net.pfsync.pfsync_buckets The number of .Nm diff --git a/share/man/man4/procdesc.4 b/share/man/man4/procdesc.4 index d0b99e5cbe07..f1f3757aa836 100644 --- a/share/man/man4/procdesc.4 +++ b/share/man/man4/procdesc.4 @@ -58,10 +58,10 @@ Given a process descriptor, it is possible to query its conventional PID using .Sh SEE ALSO .Xr fork 2 , .Xr kill 2 , +.Xr kqueue 2 , .Xr pdfork 2 , .Xr pdgetpid 2 , .Xr pdkill 2 , -.Xr kqueue 2 , .Xr wait4 2 , .Xr capsicum 4 .Sh HISTORY diff --git a/share/man/man4/procfs.4 b/share/man/man4/procfs.4 new file mode 100644 index 000000000000..5a588004e37e --- /dev/null +++ b/share/man/man4/procfs.4 @@ -0,0 +1,308 @@ +.\" Written by Garrett Wollman +.\" This file is in the public domain. +.\" +.Dd June 23, 2024 +.Dt PROCFS 4 +.Os +.Sh NAME +.Nm procfs +.Nd process file system +.Sh SYNOPSIS +.Bd -literal +proc /proc procfs rw 0 0 +.Ed +.Sh DESCRIPTION +.Bf -symbolic +This functionality is deprecated. +Users are advised to use +.Xr libprocstat 3 +and +.Xr kvm 3 +instead. +.Ef +.Pp +The process file system, or +.Nm , +implements a view of the system process table inside the file system. +It is normally mounted on +.Pa /proc . +.Pp +The +.Nm +provides a two-level view of process space, unlike the previous +.Fx 1.1 +.Nm +implementation. +At the highest level, processes themselves are named, according to +their process ids in decimal, with no leading zeros. +There is also a +special node called +.Pa curproc +which always refers to the process making the lookup request. +.Pp +Each node is a directory which contains the following entries: +.Bl -tag -width status +.It Pa dbregs +The debug registers as defined by +.Dv "struct dbregs" +in +.In machine/reg.h . +.Pa dbregs +is currently only implemented on the i386 architecture. +.It Pa etype +The type of the executable referenced by the +.Pa file +entry. +.It Pa file +A symbolic link to the file from which the process text was read. +This can be used to gain access to the process' symbol table, +or to start another copy of the process. +If the file cannot be found, the link target is +.Ql unknown . +.It Pa fpregs +The floating point registers as defined by +.Dv "struct fpregs" +in +.In machine/reg.h . +.Pa fpregs +is only implemented on machines which have distinct general +purpose and floating point register sets. +.It Pa map +A collection of lines describing the memory regions of the process, +where each line contains the following fields: +.Bl -tag -compact -width private-resident +.It start-address +The starting address for the region (inclusive). +.It end-address +The ending address for the region (exclusive). +.It resident +The number of resident pages. +.It private-resident +The number of resident pages that were private to the process. +.It obj +The virtual address of the +.Vt struct vm_object +kernel data structure describing the memory region. +.It access +A three character string comprising the characters +.Sq r , +.Sq w +and +.Sq x , +denoting read, write, and execute permissions respectively. +The lack of a permission is represented by +.Sq - . +.It ref_count +The number of references to the region. +.It shadow_count +The number of VM objects that this region is a shadow for. +.It flags +The flags for the object, see the flags named +.Sy OBJ_* +in +.In vm/vm_object.h . +.It copy-on-write +Whether the region is copy-on-write. +One of: +.Bl -tag -compact -width NCOW +.It COW +A copy-on-write region. +.It NCOW +A non-copy-on-write region. +.El +.It needs-copy +Whether the region needs a copy. +One of: +.Bl -tag -compact -width NNC +.It NC +The region needs a copy. +.It NNC +The region does not need a copy. +.El +.It type +The type of the region. +One of: +.Bl -tag -compact -width unknown +.It dead +A region associated with a dead VM object. +.It device +A region backed by device memory. +.It none +A region not backed by anything. +.It phys +A region backed by physical memory. +.It swap +A region backed by swap. +.It unknown +A region of unknown type. +.It vnode +A region backed by a file. +.El +.It fullpath +The path to the file backing the memory region, or +.Sq - +if there is no such file. +.It cred +One of: +.Bl -tag -compact -width NCH +.It CH +The region is being charged to the user specified in the +.Sq charged-uid +field. +.It NCH +The region is not being charged to any user. +.El +.It charged-uid +The UID of the user being charged, or -1 if no user is being charged. +.El +.It Pa mem +The complete virtual memory image of the process. +Only those address which exist in the process can be accessed. +Reads and writes to this file modify the process. +Writes to the text segment remain private to the process. +.It Pa note +Used for sending signals to the process. +Not implemented. +.It Pa notepg +Used for sending signal to the process group. +Not implemented. +.It Pa osrel +Allows read and write of the kernel osrel value assigned to the process. +It affects the compatibility shims that are turned on and off +depending on the value. +Initial process value is read from the ABI note tag in the executed ELF image, +and is zero if the tag not supported by binary format or was not found. +.It Pa regs +Allows read and write access to the process' register set. +This file contains a binary data structure +.Dv "struct regs" +defined in +.In machine/reg.h . +.Pa regs +can only be written when the process is stopped. +.It Pa rlimit +This is a read-only file containing the process current and maximum +limits. +Each line is of the format +.Ar rlimit current max , +with -1 +indicating infinity. +.It Pa status +The process status. +This file is read-only and returns a single line containing +multiple space-separated fields as follows: +.Pp +.Bl -bullet -compact +.It +command name +.It +process id +.It +parent process id +.It +process group id +.It +session id +.It +device name +of the controlling terminal, or +a minus sign +.Pq Dq - +if there is no controlling terminal. +.It +a list of process flags: +.Dv ctty +if there is a controlling terminal, +.Dv sldr +if the process is a session leader, +.Dv noflags +if neither of the other two flags are set. +.It +the process start time in seconds and microseconds, +comma separated. +.It +the user time in seconds and microseconds, +comma separated. +.It +the system time in seconds and microseconds, +comma separated. +.It +the wait channel message +.It +the process effective UID +.It +the process real UID +.It +group list, starting with the effective GID, comma-separated +.It +the hostname of the jail in which the process runs, or +.Ql - +to indicate that the process is not running within a jail. +.El +.El +.Pp +Each node is owned by the process's user, and belongs to that user's +primary group. +.Sh FILES +.Bl -tag -width /proc/curproc/XXXXXXX -compact +.It Pa /proc +normal mount point for the +.Nm . +.It Pa /proc/pid +directory containing process information for process +.Pa pid . +.It Pa /proc/curproc +directory containing process information for the current process +.It Pa /proc/self +directory containing process information for the current process +.It Pa /proc/curproc/cmdline +the process executable name +.It Pa /proc/curproc/etype +executable type +.It Pa /proc/curproc/exe +executable image +.It Pa /proc/curproc/file +executable image +.It Pa /proc/curproc/fpregs +the process floating point register set +.It Pa /proc/curproc/map +virtual memory map of the process +.It Pa /proc/curproc/mem +the complete virtual address space of the process +.It Pa /proc/curproc/note +used for signaling the process +.It Pa /proc/curproc/notepg +used for signaling the process group +.It Pa /proc/curproc/osrel +the process osrel value +.It Pa /proc/curproc/regs +the process register set +.It Pa /proc/curproc/rlimit +the process current and maximum rlimit +.It Pa /proc/curproc/status +the process' current status +.El +.Sh EXAMPLES +To mount a +.Nm +file system on +.Pa /proc : +.Pp +.Dl "mount -t procfs proc /proc" +.Sh SEE ALSO +.Xr procstat 1 , +.Xr mount 2 , +.Xr sigaction 2 , +.Xr unmount 2 , +.Xr kvm 3 , +.Xr libprocstat 3 , +.Xr pseudofs 9 +.Sh AUTHORS +.An -nosplit +This manual page written by +.An Garrett Wollman , +based on the description +provided by +.An Jan-Simon Pendry , +and revamped later by +.An Mike Pritchard . diff --git a/share/man/man4/puc.4 b/share/man/man4/puc.4 index 076fd2ad2d0e..a29376d3f2d5 100644 --- a/share/man/man4/puc.4 +++ b/share/man/man4/puc.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2002 John Hay. .\" All rights reserved. .\" @@ -22,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 24, 2008 +.Dd June 11, 2025 .Dt PUC 4 .Os .Sh NAME @@ -36,15 +39,245 @@ Communications driver .Cd "device uart" .Cd "device ppc" .Sh DESCRIPTION -This driver acts as a shim to connect PCI serial and parallel ports to the +The +.Nm +driver acts as a shim to connect +PCI multi-port serial and parallel adapters to the .Xr uart 4 and .Xr ppc 4 driver. +.Sh HARDWARE +The +.Nm +driver supports the following +PCI/PCIe multi-port serial and parallel adapters: .Pp -The list of supported devices is in -.Pa sys/dev/puc/pucdata.c . -Support for new cards should be added there. +.Bl -bullet -compact +.It +Advantech 2-port PCI PCI-1602/1603 Rev A/B1 +.It +Applied Micro Circuits PCI 8 Port UART +.It +Avlab Technology PCI IO 2S +.It +Avlab Low Profile PCI 4 Serial +.It +Boca Research PCI Turbo Serial 658/654 +.It +Brainboxes: +.Bl -dash -compact +.It +Instashield PCIe IX-400, IX-200, IX-100 +.It +Instashield PCI IS-400, IS-200 +.It +PX Series PCIe RS232/RS422/RS485/LPT +.It +UC Series Universal PCI RS232/RS422/RS485/LPT +.It +UP Series PCI Dual RS232 +.El +.It +Comtrol RocketPort 550 PCI 16/8/4 port +.It +Decision Computer PCCOM PCI 8/4/2 port +.It +Digi Neo PCIe 4 and 8 Port (with and without RJ45) +.It +Digi Neo PCI 4 and 8 Port +.It +Dolphin Peripherals PCI 4035/4014 +.It +Exar: +.Bl -dash -compact +.It +XR17C/D152 +.It +XR17C154 +.It +XR17C158 +.It +XR17V258IV +.It +XR17V352 +.It +XR17V354 +.It +XR17V358 +.El +.It +Feasso PCI FPP-02 2S1P +.It +HP Diva Serial [GSP] Multiport UART: +.Bl -dash -compact +.It +Tosca Console +.It +Tosca Secondary +.It +Maestro SP2 +.It +Superdome Console +.It +Keystone SP2 +.It +Everest SP2 +.El +.It +I-O DATA RSA-PCI2/R +.It +IBM SurePOS 300 Series (481033H) serial ports +.It +IC Book Labs: +.Bl -dash -compact +.It +Dreadnought x16 Pro/Lite +.It +Ironclad x8 Pro +.It +Gunboat x4 Pro/Lite/Low Profile +.It +Gunboat x2 Low Profile +.El +.It +Kuroutoshikou SERIAL4P-LPPCI2 +.It +Lava Computers: +.Bl -dash -compact +.It +Dual Serial PCI +.It +Quattro-PCIe +.It +Quattro-PCI +.It +Octopus-550 PCI +.El +.It +Moxa Technologies: +.Bl -dash -compact +.It +Smartio CP-102E/PCIe +.It +Smartio CP-102EL/PCIe +.It +Smartio C104H/PCI +.It +Smartio CP-104UL/PCI +.It +Smartio CP-104JU/PCI +.It +Smartio CP-104EL/PCIe +.It +Smartio CP-104EL-A/PCIe +.It +CP-112UL PCI +.It +Industio CP-114 +.It +Smartio CP-114EL/PCIe +.It +Smartio CP-118EL-A/PCIe +.It +C168H/PCI +.It +C168U/PCI +.It +CP-168EL/PCIe +.It +Smartio CP-168EL-A/PCIe +.El +.It +NetMos NM9815 Dual 1284 Printer port PCI +.It +NetMos NM9835 2/1 port UART + 1284 Printer PCI +.It +NetMos NM9845 4/6 port UART + 1284 Printer PCI +.It +NetMos NM9865 4/3/2 port UART + 1/2 port 1284 Printer PCI +.It +Oxford Semiconductor based boards: +.Bl -dash -compact +.It +OX16PCI952 UART (with and without Parallel port) +.It +OX16PCI954 UART +.It +OX9160/OX16PCI954 UARTs +.It +OX16PCI958 UART +.El +.It +Perle Ultraport4 Express PCIe Serial +.It +Perle Speed8/Speed4/Speed2 LE PCI Serial +.It +Quatech: +.Bl -dash -compact +.It +DSC-300/200/100 PCI +.It +DSCLP-300/200/100 PCI +.It +ESC-100/100D/100M PCI +.It +QSC-300/200/100 PCI +.It +QSCLP-100 PCI +.El +.It +SIIG Cyber Series of UART and parallel port boards: +.Bl -dash -compact +.It +Cyber 2S and 2SP1 PCI 16550 +.It +Cyber 4 and 4S PCI 16C650 (10x family and 20x family) +.It +Cyber I/O PCI (10x family and 20x family) +.It +Cyber Parallel Dual PCI (10x family and 20x family) +.It +Cyber Serial Dual PCI (10x family and 20x family) +.It +Cyber 2S1P PCI (10x family and 20x family) +.It +PS8000 8S PCI 16C650 (20x family) +.It +Quartet Serial 850 PCI +.El +.It +Sun 1040 PCI Quad Serial +.It +Sunix MIO5xxxx 4/2/1 port UART and 1284 Printer +.It +Sunix SUN1889/1888 PCI dual port serial +.It +Sunix SER5xxxx 8/4/2 port serial +.It +Syba Tech Ltd PCI-4S2P-550-ECP +.It +Titan PCI-800H/PCI-200H +.It +VScom: +.Bl -dash -compact +.It +PCIex-800H +.It +PCI-200HV2 +.It +200Li uPCI +.It +PCI-800L, PCI-200L, and PCI-100L +.It +PCI-800, PCI-400, and PCI-200 +.El +.El +.Sh FILES +.Bl -tag -width "sys/dev/puc/pucdata.c" +.It Pa sys/dev/puc/pucdata.c +list of supported devices +.El .Sh SEE ALSO .Xr ppc 4 , .Xr uart 4 @@ -53,3 +286,4 @@ This driver took the idea from the .Nx .Nm driver. +It uses a substantial amount of the same data. diff --git a/share/man/man4/qat.4 b/share/man/man4/qat.4 index b0fa0b0cbc92..613091df2e7e 100644 --- a/share/man/man4/qat.4 +++ b/share/man/man4/qat.4 @@ -1,11 +1,11 @@ .\" SPDX-License-Identifier: BSD-3-Clause -.\" Copyright(c) 2007-2022 Intel Corporation -.Dd May 4, 2023 +.\" Copyright(c) 2007-2025 Intel Corporation +.Dd June 2, 2025 .Dt QAT 4 .Os .Sh NAME .Nm qat -.Nd Intel (R) QuickAssist Technology (QAT) driver +.Nd Intel QuickAssist Technology driver .Sh SYNOPSIS To load the driver call: .Pp @@ -39,9 +39,20 @@ The driver supports cryptography and compression acceleration of the Intel (R) QuickAssist Technology (QAT) devices. .Pp +A complete API for offloading these operations is exposed in the kernel +and may be used by any other entity directly. +In addition to exposing a complete kernel API for +offloading cryptography and compression operations, the +.Nm +driver also integrates with +.Xr crypto 4 , +allowing offloading supported operations to Intel QuickAssist Technology +devices. +.Sh HARDWARE The .Nm -driver is intended for platforms that contain: +driver supports the following Intel QuickAssist Technology Engines: +.Pp .Bl -bullet -compact .It Intel (R) C62x Chipset @@ -57,127 +68,120 @@ Intel (R) Atom P5300 processor product family .It Intel (R) QAT 4xxx Series .El -.Pp -The -.Nm -driver supports cryptography and compression acceleration. -A complete API for offloading these operations is exposed in the kernel and may -be used by any other entity directly. -For details of usage and supported operations and algorithms refer to the -following documentation available from Intel Download Center -.Lk https://downloadcenter.intel.com : -.Bl -bullet -compact -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology API Programmer's Guide -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Cryptographic API Reference Manual -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Data Compression API Reference Manual -.Re -.It -.Rs -.%A Intel (R) -.%T QuickAssist Technology Performance Optimization Guide -.Re -.El -.Pp -In addition to exposing complete kernel API for offloading cryptography and -compression operations, the -.Nm -driver also integrates with -.Xr crypto 4 , -allowing offloading supported cryptography operations to Intel (R) QuickAssist -Technology (QAT) devices. -For details of usage and supported operations and algorithms refer to the -documentation mentioned above and -.Sx SEE ALSO -section. .Sh SYSCTL_VARIABLES -Following variables may be used to reconfigure the QAT device.\& -For configuration persistence those variables may be set before loading the driver, either via +The following +.Xr sysctl 8 +variables may be used to reconfigure the +.Nm +device. +For configuration persistence those variables may be set before loading +the driver, either via .Xr kenv 1 or -.Xr loader.conf(5). -The device specific configuration options are prefixed with -.Va dev.qat.X\&. -where X is the device number. -The specific device needs to be in "down" state before changing the configuration. +.Xr loader.conf 5 . +.Pp +The specific device needs to be in the "down" state +before changing the configuration. .Bl -tag -width indent -.It Va state -Show current state of the device. Override the device state. Possible values: "down", "up". - -NOTE: If the symmetric services are used for device the qat_ocf driver needs to be disabled prior the device -reconfiguration. -Following variable may be used to enable/disable the QAT cryptographic framework connectivity -.Va dev.qat_ocf.0.enable\&. +.It Va dev.qat.X.state +Show or set current state of the device. +Possible values: "down", "up". +.Pp +NOTE: If the symmetric services are used for device the +.Sy qat_ocf +driver needs to be disabled prior the device reconfiguration. +.It Va dev.qat_ocf.0.enable +Enable/disable the QAT cryptographic framework connectivity. Enabled by default. -.It Va cfg_services -Override the device services enabled: symmetric, asymmetric, data compression. +.It Va dev.qat.X.cfg_services +Override the device services enabled, may be one of: +symmetric, asymmetric, data compression. Possible values: "sym", "asym", "dc", "sym;dc", "asym;dc", "sym;asym". -Default services configured are "sym;asym" for even and "dc" for odd devices. -.It Va cfg_mode -Override the device mode configuration for kernel space and user space instances. +Default services configured +are "sym;asym" for even and "dc" for odd devices. +.It Va dev.qat.X.cfg_mode +Override the device mode configuration +for kernel space and user space instances. Possible values: "ks", "us", "ks;us". Default value "ks;us". -.It Va num_user_processes -Override the number of uio user space processes that can connect to the QAT device. +.It Va dev.qat.X.num_user_processes +Override the number of uio user space processes +that can connect to the QAT device. Default: 2 +.It Va dev.qat.X.disable_safe_dc_mode +Override history buffer mitigation. +Disabled by default. +If enabled, decompression throughput increases but may result in a data leak if +.Va dev.qat.X.num_user_processes +is more than 1. +Enable this option only if your system is not prone to user data leaks. .El .Pp The following .Xr sysctl 8 variables are read-only: .Bl -tag -width indent -.It Va frequency +.It Va dev.qat.X.frequency QAT device frequency value. -.It Va mmp_version +.It Va dev.qat.X.mmp_version QAT MMP Library revision number. -.It Va hw_version +.It Va dev.qat.X.hw_version QAT hardware revision number. -.It Va fw_version +.It Va dev.qat.X.fw_version QAT firmware revision number. -.It Va dev_cfg +.It Va dev.qat.X.dev_cfg Summary of device specific configuration. -.It Va heartbeat -QAT device heartbeat status. Value '1' indicates that the device is operational. -'0' value means that the device is not responsive. Device requires restart. -.It Va heartbeat_failed +.It Va dev.qat.X.heartbeat +QAT device heartbeat status. +Value '1' indicates that the device is operational. +Value '0' means that the device is not responsive. +Device requires restart. +.It Va dev.qat.X.heartbeat_failed Number of QAT heartbeat failures received. -.It Va heartbeat_sent +.It Va dev.qat.X.heartbeat_sent Number of QAT heartbeat requests sent. .El - -.Sh COMPATIBILITY -The -.Nm -driver replaced previous implementation introduced in -.Fx 13.0 . -Current version, in addition to -.Xr crypto 4 -integration, supports also data compression and exposes a complete API for -offloading data compression and cryptography operations. .Sh SEE ALSO .Xr crypto 4 , .Xr ipsec 4 , .Xr pci 4 , .Xr crypto 7 , .Xr crypto 9 +.Pp +For details of usage and supported operations and algorithms refer to +the following documentation available from Intel Download Center +.Lk https://downloadcenter.intel.com : +.Pp +.Bl -bullet -compact +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology API Programmer's Guide +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Cryptographic API Reference Manual +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Data Compression API Reference Manual +.Re +.It +.Rs +.%A Intel (R) +.%T QuickAssist Technology Performance Optimization Guide +.Re +.El .Sh HISTORY -This +A .Nm -driver was introduced in -.Fx 14.0 . -.Fx 13.0 included a different version of -.Nm -driver. +driver appeared in +.Fx 13.0 . +It was superseded in +.Fx 14.0 +by the upstream driver. .Sh AUTHORS The .Nm diff --git a/share/man/man4/ral.4 b/share/man/man4/ral.4 index dbdc017dc33a..ad385e5f09d6 100644 --- a/share/man/man4/ral.4 +++ b/share/man/man4/ral.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: ISC +.\" .\" Copyright (c) 2005-2010 Damien Bergamini <damien.bergamini@free.fr> .\" .\" Permission to use, copy, modify, and distribute this software for any @@ -12,12 +15,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd April 4, 2017 +.Dd November 10, 2024 .Dt RAL 4 .Os .Sh NAME .Nm ral -.Nd "Ralink Technology IEEE 802.11a/g/n wireless network device" +.Nd Ralink Technology IEEE 802.11a/g/n wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -119,7 +122,7 @@ The driver supports PCI/PCIe/CardBus wireless adapters based on Ralink Technology chipsets, including: .Pp -.Bl -column -compact ".Li Atlantis Land A02-PCM-W54" "RT2561S" "CardBus" +.Bl -column -offset indent -compact "Atlantis Land A02-PCM-W54" "RT2561S" "CardBus" .It Em Card Ta Em MAC/BBP Ta Em Bus .It "A-Link WL54H" Ta RT2560 Ta PCI .It "A-Link WL54PC" Ta RT2560 Ta CardBus @@ -212,26 +215,25 @@ chipsets, including: .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): .Pp -.Dl "ifconfig wlan create wlandev ral0 inet 192.168.0.20 netmask 0xffffff00" +.Dl ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Bd -literal -offset indent -ifconfig wlan create wlandev ral0 inet 192.168.0.20 \e - netmask 0xffffff00 ssid my_net +ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \e + ssid my_net .Ed .Pp Join a specific BSS network with 40-bit WEP encryption: .Bd -literal -offset indent -ifconfig wlan create wlandev ral0 inet 192.168.0.20 \e - netmask 0xffffff00 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 +ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \e + ssid my_net wepmode on wepkey 0x1234567890 weptxkey 1 .Ed .Pp Join a specific BSS network with 104-bit WEP encryption: .Bd -literal -offset indent -ifconfig wlan create wlandev ral0 inet 192.168.0.20 \e - netmask 0xffffff00 ssid my_net \e +ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \e + ssid my_net \e wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 .Ed .Sh DIAGNOSTICS @@ -254,6 +256,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 diff --git a/share/man/man4/rights.4 b/share/man/man4/rights.4 index 3e5e18fc65d8..8f5f6ad9c2d2 100644 --- a/share/man/man4/rights.4 +++ b/share/man/man4/rights.4 @@ -30,7 +30,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 27, 2024 +.Dd May 22, 2025 .Dt RIGHTS 4 .Os .Sh NAME @@ -209,6 +209,9 @@ An alias to .Dv CAP_FCHOWN and .Dv CAP_LOOKUP . +.It Dv CAP_FCHROOT +Permit +.Xr fchroot 2 . .It Dv CAP_FCNTL Permit .Xr fcntl 2 . @@ -316,6 +319,14 @@ Permit .It Dv CAP_GETSOCKOPT Permit .Xr getsockopt 2 . +.It Dv CAP_INOTIFY_ADD +Permit +.Xr inotify_add_watch 2 +and +.Xr inotify_add_watch_at 2 . +.It Dv CAP_INOTIFY_RM +Permit +.Xr inotify_rm_watch 2 . .It Dv CAP_IOCTL Permit .Xr ioctl 2 . diff --git a/share/man/man4/rsu.4 b/share/man/man4/rsu.4 index b523bfe4aa0e..1c4f9774ea53 100644 --- a/share/man/man4/rsu.4 +++ b/share/man/man4/rsu.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: ISC +.\" .\" $OpenBSD: rsu.4,v 1.11 2013/02/14 07:40:42 jmc Exp $ .\" .\" Copyright (c) 2010 Damien Bergamini <damien.bergamini@free.fr> @@ -14,12 +17,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd May 23, 2021 +.Dd April 1, 2025 .Dt RSU 4 .Os .Sh NAME .Nm rsu -.Nd Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n wireless network device +.Nd Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: @@ -93,8 +96,48 @@ The .Nm driver can be configured at runtime with .Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver provides support for Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n +wireless network adapters, including: +.Pp +.Bl -bullet -offset indent -compact +.It +ASUS USB-N10 +.It +ASUS WL-167G V3 +.It +Belkin F7D1101 v1 +.It +D-Link DWA-131 A1 +.It +EDUP EP-MS150N(W) +.It +Edimax EW-7622UMN +.It +Hercules HWGUn-54 +.It +Hercules HWNUm-300 +.It +Planex GW-USNano +.It +Sitecom WL-349 v1 +.It +Sitecom WL-353 +.It +Sitecom WLA-1100 v1001 +.It +Sweex LW154 +.It +TRENDnet TEW-646UBH +.It +TRENDnet TEW-648UB +.It +TRENDnet TEW-649UB +.El .Sh FILES -.Bl -tag -width ".Pa /usr/share/doc/legal/realtek.LICENSE" -compact +.Bl -tag -width "/usr/share/doc/legal/realtek.LICENSE" -compact .It Pa /usr/share/doc/legal/realtek.LICENSE .Nm firmware license @@ -106,45 +149,20 @@ which is loaded when an interface is attached: .Bl -tag -width Ds -offset indent -compact .It Pa /boot/kernel/rsu-rtl8712fw.ko .El -.Sh HARDWARE -The -.Nm -driver provides support for Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n -wireless network adapters, including: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It ASUS USB-N10 -.It ASUS WL-167G V3 -.It Belkin F7D1101 v1 -.It D-Link DWA-131 A1 -.It EDUP EP-MS150N(W) -.It Edimax EW-7622UMN -.It Hercules HWGUn-54 -.It Hercules HWNUm-300 -.It Planex GW-USNano -.It Sitecom WL-349 v1 -.It Sitecom WL-353 -.It Sweex LW154 -.It TRENDnet TEW-646UBH -.It TRENDnet TEW-648UB -.It TRENDnet TEW-649UB -.El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev rsu0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev rsu0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev rsu0 ssid my_net up" +.Dl ifconfig wlan create wlandev rsu0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev rsu0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Sh DIAGNOSTICS .Bl -diag @@ -163,6 +181,7 @@ This should not happen. .Xr rsufw 4 , .Xr usb 4 , .Xr wlan 4 , +.Xr networking 7 , .Xr arp 8 , .Xr hostapd 8 , .Xr ifconfig 8 , diff --git a/share/man/man4/rtsx.4 b/share/man/man4/rtsx.4 index c9be7a6f21f4..69de84c6d707 100644 --- a/share/man/man4/rtsx.4 +++ b/share/man/man4/rtsx.4 @@ -1,4 +1,6 @@ .\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2020 Henri Hennebert <hlh@restart.be> .\" All rights reserved. .\" @@ -22,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 26, 2022 +.Dd May 26, 2025 .Dt RTSX 4 .Os .Sh NAME @@ -53,8 +55,7 @@ Driver attaches mmc bus on card insertion and detaches it on card removing. .Sh HARDWARE The .Nm -driver supports different specification compatible chips. -The following chips have been verified to work: +driver supports the following Realtek SD card readers: .Pp .Bl -bullet -compact .It @@ -71,17 +72,12 @@ RTS525A RTS5260 .It RTL8411B -.El -.Pp -It should also work for: -.Pp -.Bl -bullet -compact .It -RTS5249 +RTS5249 (unverified) .It -RTL8402 +RTL8402 (unverified) .It -RTL8411 +RTL8411 (unverified) .El .Sh SEE ALSO .Xr mmc 4 , @@ -93,7 +89,9 @@ RTL8411 .Sh HISTORY The .Nm -driver was ported from +driver appeared in +.Fx 13.0 +and was ported from .Ox with modifications found in Linux and .Nx . diff --git a/share/man/man4/rtw88.4 b/share/man/man4/rtw88.4 index a1a74db41b42..4c2cba8311ae 100644 --- a/share/man/man4/rtw88.4 +++ b/share/man/man4/rtw88.4 @@ -1,28 +1,9 @@ .\"- -.\" Copyright (c) 2022 Bjoern A. Zeeb +.\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. +.\" Copyright (c) 2022-2025 Bjoern A. Zeeb .\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd October 06, 2023 +.Dd June 13, 2025 .Dt RTW88 4 .Os .Sh NAME @@ -42,20 +23,12 @@ to manually load the driver as a module at boot time: kld_list="${kld_list} if_rtw88" .Ed .Pp -It is discouraged to load the driver from +It is not possible to load the driver from .Xr loader 8 . .Sh DESCRIPTION The .Nm -driver is derived from Realtek's Linux rtw88 driver and provides support for -the following chipsets: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It Realtek 802.11n wireless 8723de (RTL8723DE) -.It Realtek 802.11ac wireless 8821ce (RTL8821CE) -.It Realtek 802.11ac wireless 8822be (RTL8822BE) -.It Realtek 802.11ac wireless 8822ce (RTL8822CE) -.El +driver is derived from Realtek's Linux rtw88 driver. .Pp This driver requires firmware to be loaded before it will work. The package @@ -73,21 +46,30 @@ to install the correct firmware package. .Pp The driver uses the .\" No LinuxKPI man pages so no .Xr here. -.Em linuxkpi_wlan +.Sy linuxkpi_wlan and -.Em linuxkpi +.Sy linuxkpi compat framework to bridge between the Linux and native .Fx driver code as well as to the native .Xr net80211 4 wireless stack. -.Pp -While +.Sh HARDWARE +The .Nm -supports all 802.11 a/b/g/n and ac -the compatibility code currently only supports 802.11 a/b/g modes. -Support for 802.11 n/ac is to come. +driver supports PCIe devices with the following chipsets: +.Pp +.Bl -bullet -offset indent -compact +.It +Realtek 802.11n wireless 8723de (RTL8723DE) +.It +Realtek 802.11ac wireless 8821ce (RTL8821CE) +.It +Realtek 802.11ac wireless 8822be (RTL8822BE) +.It +Realtek 802.11ac wireless 8822ce (RTL8822CE) +.El .Sh LOADER TUNABLES .Bl -tag -width indent .It Va compat.linuxkpi.skb.mem_limit @@ -101,17 +83,10 @@ This tunable will work around a problem with DMA and limit allocations for network buffer memory to the lower 32bit of physical memory and make the driver work. .El -.Sh BUGS -Certainly. -.Pp -Does not seem to work (reliably) on machines with more than 4GB of -main memory. -See in the -.Sx LOADER TUNABLES -section above. .Sh SEE ALSO .Xr rtw88fw 4 , .Xr wlan 4 , +.Xr networking 7 , .Xr fwget 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 @@ -120,3 +95,17 @@ The .Nm driver first appeared in .Fx 13.2 . +.Sh BUGS +Certainly. +.Pp +Does not seem to work (reliably) on machines with more than 4GB of +main memory. +See in the +.Sx LOADER TUNABLES +section above. +.Pp +While +.Nm +supports 802.11a/b/g/n/ac modes, +the compatibility code currently only supports 802.11a/b/g modes. +Support for 802.11n/ac is yet to come. diff --git a/share/man/man4/rtw89.4 b/share/man/man4/rtw89.4 new file mode 100644 index 000000000000..8c7132673db5 --- /dev/null +++ b/share/man/man4/rtw89.4 @@ -0,0 +1,112 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2023-2025 Bjoern A. Zeeb +.\" +.Dd June 13, 2025 +.Dt RTW89 4 +.Os +.Sh NAME +.Nm rtw89 +.Nd Realtek IEEE 802.11ax wireless network driver +.Sh SYNOPSIS +The driver will auto-load without any user interaction using +.Xr devmatch 8 +if enabled in +.Xr rc.conf 5 . +.Pp +Only if auto-loading is explicitly disabled, place the following +lines in +.Xr rc.conf 5 +to manually load the driver as a module at boot time: +.Bd -literal -offset indent +kld_list="${kld_list} if_rtw89" +.Ed +.Pp +It is not possible to load the driver from +.Xr loader 8 . +.Sh DESCRIPTION +The +.Nm +driver is derived from Realtek's Linux rtw89 driver. +.Pp +This driver requires firmware to be loaded before it will work. +The package +.Pa wifi-firmware-rtw89-kmod +from the +.Pa ports/net/wifi-firmware-rtw89-kmod +port needs to be installed before the driver is loaded. +Otherwise no +.Xr wlan 4 +interface can be created using +.Xr ifconfig 8 . +One should use +.Xr fwget 8 +to install the correct firmware package. +.Pp +The driver uses the +.\" No LinuxKPI man pages so no .Xr here. +.Sy linuxkpi_wlan +and +.Sy linuxkpi +compat framework to bridge between the Linux and +native +.Fx +driver code as well as to the native +.Xr net80211 4 +wireless stack. +.Sh HARDWARE +The +.Nm +driver supports PCIe devices with the following chipsets: +.Pp +.Bl -bullet -offset indent -compact +.It +Realtek 8851BE Wi-Fi 6 (RTL8851BE) +.It +Realtek 8852AE Wi-Fi 6 (RTL8852AE) +.It +Realtek 8852BE Wi-Fi 6 (RTL8852BE) +.It +Realtek 8852CE Wi-Fi 6E (RTL8852CE) +.It +Realtek 8922AE Wi-Fi 7 (RTL8922AE) +.El +.Sh LOADER TUNABLES +.Bl -tag -width indent +.It Va compat.linuxkpi.skb.mem_limit +If you are running a 64bit system with more than 4GB of main memory +you need to set this tunable to +.Sy 1 +in +.Xr loader.conf 5 +and reboot once to make it effective. +This tunable will work around a problem with DMA and limit allocations +for network buffer memory to the lower 32bit of physical memory and +make the driver work. +.El +.Sh SEE ALSO +.Xr wlan 4 , +.Xr networking 7 , +.Xr fwget 8 , +.Xr ifconfig 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 14.2 . +.Sh BUGS +Certainly. +.Pp +Does not seem to work (reliably) on machines with more than 4GB of +main memory. +See in the +.Sx LOADER TUNABLES +section above. +.Pp +While +.Nm +supports 802.11a/b/g/n/ac/ax modes, +the compatibility code currently only supports 802.11a/b/g modes. +Support for 802.11n/ac/ax is yet to come. diff --git a/share/man/man4/rtwn.4 b/share/man/man4/rtwn.4 index cfebcc1bbffc..06761fdcde4e 100644 --- a/share/man/man4/rtwn.4 +++ b/share/man/man4/rtwn.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: ISC +.\" .\" $OpenBSD: rtwn.4,v 1.2 2015/07/09 11:28:53 stsp Exp $ .\" .\" Copyright (c) 2010 Damien Bergamini <damien.bergamini@free.fr> @@ -16,12 +19,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd January 2, 2019 +.Dd November 10, 2024 .Dt RTWN 4 .Os .Sh NAME .Nm rtwn -.Nd Realtek IEEE 802.11 wireless network driver +.Nd Realtek IEEE 802.11n/ac wireless network driver .Sh SYNOPSIS .Cd "options RTWN_DEBUG" .Cd "options RTWN_WITHOUT_UCODE" @@ -48,16 +51,14 @@ if_rtwn_usb_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for wireless network devices based on -the Realtek RTL8192C, RTL8188E, RTL8192E, RTL8812A and RTL8821A -programming APIs. -These APIs are used by a wide variety of chips; -most chips with USB and some with PCI interface are supported. -.Pp -To enable use for PCI/PCIe systems, see the rtwn_pci(4) driver; -for USB devices, use the rtwn_usb(4) driver. +driver provides support for 802.11n/ac wireless network PHYs supplied by +.Xr rtwn_pci 4 +and +.Xr rtwn_usb 4 . .Pp -The driver supports +The +.Nm +driver supports .Cm station , .Cm adhoc , .Cm hostap @@ -79,17 +80,40 @@ The .Nm driver can be configured at runtime with .Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver supports USB and PCI devices with the following chipsets: +.Pp +.Bl -bullet -offset indent -compact +.It +Realtek 802.11n wireless 8188e (RTL8188E) +.It +Realtek 802.11n wireless 8192c (RTL8192C) +.It +Realtek 802.11n wireless 8192e (RTL8192E) +.It +Realtek 802.11ac wireless 8812a (RTL8812A) +.It +Realtek 802.11ac wireless 8821a (RTL8821A) +.El +.Pp +For specific devices, see +.Xr rtwn_pci 4 +and +.Xr rtwn_usb 4 . .Sh FILES -.Bl -tag -width ".Pa /usr/share/doc/legal/realtek.LICENSE" -compact +.Bl -tag -width "/usr/share/doc/legal/realtek.LICENSE" -compact .It Pa /usr/share/doc/legal/realtek.LICENSE .Nm firmware license .El .Pp -The driver (if not compiled with -.Cd options RTWN_WITHOUT_UCODE -) may use following firmware files, which are loaded -when an interface is brought up: +The driver +.Pq if not compiled with Cd options RTWN_WITHOUT_UCODE +may use following firmware files, +which are loaded when an interface is brought up: +.Pp .Bl -tag -width Ds -offset indent -compact .It Pa /boot/kernel/rtwn-rtl8188eefw.ko .It Pa /boot/kernel/rtwn-rtl8188eufw.ko @@ -103,41 +127,38 @@ when an interface is brought up: .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev rtwn0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev rtwn0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev rtwn0 ssid my_net up" +.Dl ifconfig wlan create wlandev rtwn0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev rtwn0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Create an IBSS network with 128-bit WEP encryption on the channel 4: .Bd -literal -offset indent ifconfig wlan create wlandev rtwn0 wlanmode adhoc ssid my_net \e - wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 \e - channel 4 + wepmode on wepkey 0x01020304050607080910111213 weptxkey 1 \e + channel 4 .Ed .Pp Join/create an 802.11b IBSS network with network name -.Dq Li my_net : +.Ar my_net : .Bd -literal -offset indent ifconfig wlan0 create wlandev rtwn0 wlanmode adhoc -ifconfig wlan0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e - mode 11b +ifconfig wlan0 inet 192.0.2.20/24 ssid my_net mode 11b .Ed .Pp Create a host-based access point: .Bd -literal -offset indent ifconfig wlan0 create wlandev rtwn0 wlanmode hostap -ifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap +ifconfig wlan0 inet 192.0.2.20/24 ssid my_ap .Ed .Sh LOADER TUNABLES Tunables can be set at the @@ -147,32 +168,32 @@ prompt before booting the kernel or stored in .Bl -tag -width indent .It Va dev.rtwn.%d.hwcrypto This tunable controls how key slots are assigned: -.br +.Pp 0 - disable h/w crypto support. Features that require access to frame contents (e.g., TCP/UDP/IP Rx checksum validation) will not work; -.br +.Pp 1 - use h/w crypto support for pairwise keys only; -.br +.Pp 2 - use h/w crypto support for all keys; may not work for multi-vap configurations. -.br +.Pp By default it is set to 1. .It Va dev.rtwn.%d.ratectl This tunable switches between rate control implementations: -.br +.Pp 0 - no rate control; -.br +.Pp 1 - driver sends 'tx complete' reports to net80211; algorithm is controlled via net80211; -.br +.Pp 2 - firmware-based rate control. -.br +.Pp By default it is set to 1; however driver may choose another algorithm in case if it is not implemented -.br +.Pp Currently selected algorithm is reported via -.Em Va dev.rtwn.%d.ratectl_selected +.Va dev.rtwn.%d.ratectl_selected read-only OID. .It Va dev.rtwn.%d.rx_buf_size (USB only) Controls size of temporary Rx buffer; smaller buffer size @@ -212,6 +233,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 @@ -225,7 +247,9 @@ and the .Nm driver first appeared in -.Ox 5.8 . +.Ox 5.8 +and +.Fx 11.0 . .Sh AUTHORS The .Nm diff --git a/share/man/man4/rtwn_pci.4 b/share/man/man4/rtwn_pci.4 index c53500a0cae3..e604007d5509 100644 --- a/share/man/man4/rtwn_pci.4 +++ b/share/man/man4/rtwn_pci.4 @@ -1,8 +1,10 @@ .\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd .\" Copyright (c) 2016 Andriy Voskoboinyk <avos@FreeBSD.org> .\" All rights reserved. -.\"" +.\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: @@ -26,13 +28,13 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGES. -.\"/ -.Dd January 2, 2019 +.\" +.Dd November 10, 2024 .Dt RTWN_PCI 4 .Os .Sh NAME .Nm rtwn_pci -.Nd "Realtek PCI device glue" +.Nd Realtek wireless rtwn network driver PCI/PCIe support .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -46,12 +48,24 @@ kernel configuration file: .Sh DESCRIPTION The .Nm -driver supports PCIe wireless network devices based on the Realtek -RTL8188CE/RTL8188EE chipsets. +driver provides support for PCIe wireless network devices to the +.Xr rtwn 4 +driver. .Pp Both RTL8188CE and RTL8188EE are highly integrated 802.11n adapters that combines a MAC, a 1T1R capable baseband and an RF in a single chip. They are operate in the 2GHz spectrum only. +.Sh HARDWARE +The +.Nm +driver supports the following PCIe Wi-Fi devices: +.Pp +.Bl -bullet -offset indent -compact +.It +Realtek 802.11n wireless 8188 (RTL8188EE) +.It +Realtek 802.11n wireless 8192 (RTL8192CE) +.El .Sh SEE ALSO .Xr pci 4 , .Xr rtwn 4 , diff --git a/share/man/man4/rtwn_usb.4 b/share/man/man4/rtwn_usb.4 index 8d670839c3e3..3a584d18014f 100644 --- a/share/man/man4/rtwn_usb.4 +++ b/share/man/man4/rtwn_usb.4 @@ -1,8 +1,10 @@ .\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd .\" Copyright (c) 2016 Andriy Voskoboinyk <avos@FreeBSD.org> .\" All rights reserved. -.\"" +.\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: @@ -26,13 +28,13 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGES. -.\"/ -.Dd November 1, 2021 +.\" +.Dd November 10, 2024 .Dt RTWN_USB 4 .Os .Sh NAME .Nm rtwn_usb -.Nd "Realtek USB device glue" +.Nd Realtek wireless rtwn network driver USB support .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -48,17 +50,18 @@ kernel configuration file: .Cd "device wlan" .Ed .Sh DESCRIPTION -This module provides the USB bus glue needed for the devices supported -by the +The +.Nm +driver provides support for USB wireless network devices to the .Xr rtwn 4 driver. .Sh HARDWARE The .Nm -driver supports Realtek RTL8188CUS/RTL8188RU/RTL8188EU/RTL8192CU/RTL8192EU/RTL8812AU/RTL8821AU -based USB wireless network adapters, including: +driver supports USB wireless network adapters based on certain +Realtek RTL 8188/8192/8812 and 8821 chipsets, including: .Pp -.Bl -column -compact "Belkin F7D1102 Surf Wireless Micro" "RTL8188CUS" "Bus" +.Bl -column -compact "Belkin F7D1102 Surf Wireless Micro" "RTL8188CUS" "USB 2.0" .It Em Card Ta Em Chip Ta Em Bus .It "Alfa AWUS036NHR v2" Ta RTL8188RU Ta USB 2.0 .It "ASUS USB-AC56" Ta RTL8812AU Ta USB 3.0 diff --git a/share/man/man4/rum.4 b/share/man/man4/rum.4 index 814f312b291b..8e77839b106b 100644 --- a/share/man/man4/rum.4 +++ b/share/man/man4/rum.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: ISC .\" .\" Copyright (c) 2005-2007 .\" Damien Bergamini <damien.bergamini@free.fr> @@ -14,12 +16,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd November 8, 2018 +.Dd November 10, 2024 .Dt RUM 4 .Os .Sh NAME .Nm rum -.Nd Ralink Technology USB IEEE 802.11a/b/g wireless network device +.Nd Ralink Technology USB IEEE 802.11a/b/g wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -125,20 +127,18 @@ including: .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev rum0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev rum0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev rum0 ssid my_net up" +.Dl ifconfig wlan create wlandev rum0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev rum0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -164,6 +164,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 @@ -171,7 +172,9 @@ This should not happen. The .Nm driver first appeared in -.Ox 4.0 . +.Ox 4.0 +and +.Fx 7.0 . .Sh AUTHORS .An -nosplit The original diff --git a/share/man/man4/run.4 b/share/man/man4/run.4 index 03554d96e527..c3d9d75f8e28 100644 --- a/share/man/man4/run.4 +++ b/share/man/man4/run.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: ISC +.\" .\" $OpenBSD: run.4,v 1.22 2009/11/23 06:16:32 jmc Exp $ .\" .\" Copyright (c) 2008 Damien Bergamini <damien.bergamini@free.fr> @@ -14,12 +17,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd May 23, 2021 +.Dd April 1, 2025 .Dt RUN 4 .Os .Sh NAME .Nm run -.Nd Ralink Technology USB IEEE 802.11a/g/n wireless network device +.Nd Ralink Technology USB IEEE 802.11a/g/n wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -119,87 +122,150 @@ The .Nm driver supports the following wireless adapters: .Pp -.Bl -tag -width Ds -offset indent -compact -.It Airlink101 AWLL6090 -.It ASUS USB-N11 -.It ASUS USB-N13 ver. A1 -.It ASUS USB-N14 -.It ASUS USB-N66 -.It ASUS WL-160N -.It Belkin F5D8051 ver 3000 -.It Belkin F5D8053 -.It Belkin F5D8055 -.It Belkin F6D4050 ver 1 -.It Belkin F9L1103 -.It Buffalo WLI-UC-AG300N -.It Buffalo WLI-UC-G300HP -.It Buffalo WLI-UC-G300N -.It Buffalo WLI-UC-G301N -.It Buffalo WLI-UC-GN -.It Buffalo WLI-UC-GNM -.It Buffalo WLI-UC-GNM2 -.It Corega CG-WLUSB2GNL -.It Corega CG-WLUSB2GNR -.It Corega CG-WLUSB300AGN -.It Corega CG-WLUSB300GNM -.It D-Link DWA-130 rev B1 -.It D-Link DWA-130 rev F1 -.It D-Link DWA-140 rev B1, B2, B3, \&D1 -.It D-Link DWA-160 rev B2 -.It D-Link DWA-162 -.It DrayTek Vigor N61 -.It Edimax EW-7711UAn -.It Edimax EW-7711UTn -.It Edimax EW-7717Un -.It Edimax EW-7718Un -.It Edimax EW-7733UnD -.It Gigabyte GN-WB30N -.It Gigabyte GN-WB31N -.It Gigabyte GN-WB32L -.It Hawking HWDN1 -.It Hawking HWUN1 -.It Hawking HWUN2 -.It Hercules HWNU-300 -.It Linksys WUSB54GC v3 -.It Linksys WUSB600N -.It Logitec LAN-W150N/U2 -.It Mvix Nubbin MS-811N -.It Panda Wireless PAU06 -.It Planex GW-USMicroN -.It Planex GW-US300MiniS -.It Sitecom WL-182 -.It Sitecom WL-188 -.It Sitecom WL-301 -.It Sitecom WL-302 -.It Sitecom WL-315 -.It SMC SMCWUSBS-N2 -.It Sweex LW303 -.It Sweex LW313 -.It TP-LINK TL-WDN3200 -.It TP-LINK TL-WN321G v4 -.It TP-LINK TL-WN727N v3 -.It Unex DNUR-81 -.It Unex DNUR-82 -.It ZyXEL NWD2705 -.It ZyXEL NWD210N -.It ZyXEL NWD270N +.Bl -bullet -offset indent -compact +.It +Airlink101 AWLL6090 +.It +ASUS USB-N11 +.It +ASUS USB-N13 ver. A1 +.It +ASUS USB-N14 +.It +ASUS USB-N66 +.It +ASUS WL-160N +.It +Belkin F5D8051 ver 3000 +.It +Belkin F5D8053 +.It +Belkin F5D8055 +.It +Belkin F6D4050 ver 1 +.It +Belkin F9L1103 +.It +Buffalo WLI-UC-AG300N +.It +Buffalo WLI-UC-G300HP +.It +Buffalo WLI-UC-G300N +.It +Buffalo WLI-UC-G301N +.It +Buffalo WLI-UC-GN +.It +Buffalo WLI-UC-GNM +.It +Buffalo WLI-UC-GNM2 +.It +Corega CG-WLUSB2GNL +.It +Corega CG-WLUSB2GNR +.It +Corega CG-WLUSB300AGN +.It +Corega CG-WLUSB300GNM +.It +D-Link DWA-130 rev B1 +.It +D-Link DWA-130 rev F1 +.It +D-Link DWA-140 rev B1, B2, B3, \&D1 +.It +D-Link DWA-160 rev B2 +.It +D-Link DWA-162 +.It +DrayTek Vigor N61 +.It +Edimax EW-7711UAn +.It +Edimax EW-7711UTn +.It +Edimax EW-7717Un +.It +Edimax EW-7718Un +.It +Edimax EW-7733UnD +.It +Gigabyte GN-WB30N +.It +Gigabyte GN-WB31N +.It +Gigabyte GN-WB32L +.It +Hawking HWDN1 +.It +Hawking HWUN1 +.It +Hawking HWUN2 +.It +Hercules HWNU-300 +.It +Linksys WUSB54GC v3 +.It +Linksys WUSB600N +.It +Logitec LAN-W150N/U2 +.It +Mvix Nubbin MS-811N +.It +Panda Wireless PAU06 +.It +Planex GW-USMicroN +.It +Planex GW-US300MiniS +.It +Sitecom WL-182 +.It +Sitecom WL-188 +.It +Sitecom WL-301 +.It +Sitecom WL-302 +.It +Sitecom WL-315 +.It +Sitecom WL-364 +.It +SMC SMCWUSBS-N2 +.It +Sweex LW303 +.It +Sweex LW313 +.It +TP-LINK TL-WDN3200 +.It +TP-LINK TL-WN321G v4 +.It +TP-LINK TL-WN727N v3 +.It +Unex DNUR-81 +.It +Unex DNUR-82 +.It +ZyXEL NWD2705 +.It +ZyXEL NWD210N +.It +ZyXEL NWD270N .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev run0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev run0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev run0 ssid my_net up" +.Dl ifconfig wlan create wlandev run0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev run0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -232,6 +298,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 diff --git a/share/man/man4/sa.4 b/share/man/man4/sa.4 index 96b11ebe5360..699a940a34d1 100644 --- a/share/man/man4/sa.4 +++ b/share/man/man4/sa.4 @@ -457,7 +457,8 @@ One EOM notification will be sent, BPEW status will be set for one position query, and then the driver state will be reset to normal. .Sh SEE ALSO .Xr mt 1 , -.Xr cam 4 +.Xr cam 4 , +.Xr mtio 4 .Sh AUTHORS .An -nosplit The diff --git a/share/man/man4/safe.4 b/share/man/man4/safe.4 index 61f2041ff333..89375d058bf7 100644 --- a/share/man/man4/safe.4 +++ b/share/man/man4/safe.4 @@ -1,4 +1,6 @@ -.\"- +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2003 Sam Leffler, Errno Consulting .\" All rights reserved. .\" @@ -22,13 +24,13 @@ .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. -.\"/ -.Dd July 29, 2020 +.\" +.Dd November 22, 2024 .Dt SAFE 4 .Os .Sh NAME .Nm safe -.Nd SafeNet crypto accelerator +.Nd SafeNet SafeXcel 1141/1741 crypto accelerator .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -46,11 +48,15 @@ module at boot time, place the following line in safe_load="YES" .Ed .Pp -.Nm sysctl Va hw.safe.debug -.Nm sysctl Va hw.safe.dump -.Nm sysctl Va hw.safe.rnginterval -.Nm sysctl Va hw.safe.rngbufsize -.Nm sysctl Va hw.safe.rngmaxalarm +In +.Xr sysctl.conf 5 : +.Bd -ragged -offset indent +.Cd hw.safe.debug +.Cd hw.safe.dump +.Cd hw.safe.rnginterval +.Cd hw.safe.rngbufsize +.Cd hw.safe.rngmaxalarm +.Ed .Sh DESCRIPTION The .Nm @@ -106,15 +112,13 @@ to dump the hardware interrupt registers. .Sh HARDWARE The .Nm -driver supports cards containing any of the following chips: -.Bl -tag -width "SafeNet 1141" -offset indent -.It SafeNet 1141 -The original chipset. +driver supports the following SafeXcel chips: +.Bl -column "SafeNet 1141" "The original chipset. Supports" -offset indent +.It SafeNet 1141 Ta The original chipset. Supports DES, Triple-DES, AES, MD5, and SHA-1 symmetric crypto operations, RNG, public key operations, and full IPsec packet processing. -.It SafeNet 1741 -A faster version of the 1141. +.It SafeNet 1741 Ta A faster version of the 1141. .El .Sh SEE ALSO .Xr crypt 3 , diff --git a/share/man/man4/safexcel.4 b/share/man/man4/safexcel.4 index d5e079822ecc..e14eebe40da2 100644 --- a/share/man/man4/safexcel.4 +++ b/share/man/man4/safexcel.4 @@ -1,4 +1,6 @@ -.\"- +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2020 Rubicon Communications, LLC (Netgate) .\" .\" Redistribution and use in source and binary forms, with or without @@ -22,12 +24,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 29, 2020 +.Dd November 22, 2024 .Dt SAFEXCEL 4 .Os .Sh NAME .Nm safexcel -.Nd Inside Secure SafeXcel-IP-97 security packet engine +.Nd Inside Secure SafeXcel-IP-97 cryptographic offload engine .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -69,6 +71,11 @@ AES-CCM .Nm also implements SHA1 and SHA2 transforms, and can combine AES-CBC and AES-CTR with SHA1-HMAC and SHA2-HMAC for encrypt-then-authenticate operations. +.Sh HARDWARE +The +.Nm +driver supports the cryptographic acceleration functions of the +Inside Secure EIP-97 device found on some Marvell systems-on-chip. .Sh SEE ALSO .Xr crypto 4 , .Xr ipsec 4 , diff --git a/share/man/man4/scc.4 b/share/man/man4/scc.4 index 05e9890a0bcc..db0c6deaf6bd 100644 --- a/share/man/man4/scc.4 +++ b/share/man/man4/scc.4 @@ -1,4 +1,6 @@ .\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2006 Marcel Moolenaar .\" All rights reserved. .\" @@ -23,13 +25,13 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd December 26, 2020 +.Dd May 26, 2025 .Dt SCC 4 .Os .\" .Sh NAME .Nm scc -.Nd driver for Serial Communications Controllers (SCC) devices +.Nd Serial Communications Controller driver .\" .Sh SYNOPSIS .Cd "device scc" @@ -48,7 +50,7 @@ take care of the details of the communication itself. .Sh HARDWARE The .Nm -driver supports the following classes of SCCs: +driver supports the following classes of Serial Communications Controllers: .Pp .Bl -bullet -compact .It diff --git a/share/man/man4/sg.4 b/share/man/man4/sg.4 new file mode 100644 index 000000000000..ac549452cc93 --- /dev/null +++ b/share/man/man4/sg.4 @@ -0,0 +1,63 @@ +.\" +.\" Copyright (c) 2024 Netflix, Inc. +.\" +.\" SPDX-License-Expression: BSD-2-Clause +.\" +.Dd May 6, 2024 +.Dt SG 4 +.Os +.Sh NAME +.Nm sg +.Nd Linux ioctl-compatible SCSI passthru device +.Sh SYNOPSIS +.Cd device sg +.Cd device scbus +.Sh DESCRIPTION +The +.Nm +driver provides a Linux compatible scsi passthru device. +This driver attaches to all +.Xr cam 4 +peripheral devices. +It is similar to the +.Xr pass 4 +device, but uses the Linux interfaces, rather than the FreeBSD CAM interfaces. +.Sh IOCTL +The following subset of the Linux sg ioctl interfaces are implemented: +.Bl -tag -width 12 +.It Va SG_SET_TIMEOUT +.Fa u_int to +Set the timeout in milliseconds. +.It Va SG_GET_TIMEOUT +Get the timeout in milliseconds +.It Va SG_GET_RESERVED_SIZE +.Fa u_int +Returns the size of the I/O one can do this device. +.It Va SG_GET_SCSI_ID +.Fa struct sg_scsi_id +Returns the bus number, channel, scsi bus ID number, lun and other information +about the SCSI device. +.It Va SG_GET_SG_TABLESIZE +.Fa u_int +Returns the table size, though hard wired to 0. +.It Va SG_GET_VERSION_NUM +.Fa u_int +Return the version number that is implemented. +.It Va SG_IO +.Fa struct sg_io_hdr +.El +All other ioctl interfaces return +.Va ENODEV . +.Sh FILES +.Bl -tag -width ".Pa /dev/sg*" -compact +.It Pa /dev/sg* +Passthru devices. +.El +.Sh SEE ALSO +.Xr cam 4 , +.Xr pass 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 7.0 . diff --git a/share/man/man4/smb.4 b/share/man/man4/smb.4 index d2a1c3b9a618..e944f1b76b5e 100644 --- a/share/man/man4/smb.4 +++ b/share/man/man4/smb.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifer: BSD-2-Clause +.\" .\" Copyright (c) 1998, Nicolas Souchu .\" Copyright (c) 2004, Joerg Wunsch .\" Copyright (c) 2015, Michael Gmelin <freebsd@grem.de> @@ -29,7 +32,7 @@ .Os .Sh NAME .Nm smb -.Nd SMB generic I/O device driver +.Nd System Management Bus (SMBus) generic I/O device driver .Sh SYNOPSIS .Cd "device smb" .Sh DESCRIPTION diff --git a/share/man/man4/smbfs.4 b/share/man/man4/smbfs.4 new file mode 100644 index 000000000000..df64bdc3884f --- /dev/null +++ b/share/man/man4/smbfs.4 @@ -0,0 +1,99 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2020 Gordon Bergling +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd April 6, 2022 +.Dt SMBFS 4 +.Os +.Sh NAME +.Nm smbfs +.Nd server message block (SMB1/CIFS) file system +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "option NETSMB" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +smbfs_load="YES" +.Ed +.Sh DESCRIPTION +The SMB driver is an implementation of the CIFS (Common Internet Filesystem) +network protocol. +.Pp +.Bf -symbolic +The +.Nm +filesystem driver supports only the obsolete SMBv1 protocol. +.Nm +has known bugs and likely has security vulnerabilities. +.Nm +and userspace counterparts +.Xr smbutil 1 +and +.Xr mount_smbfs 8 +may be removed from a future version of +.Fx . +Users are advised to evaluate the +.Pa filesystems/smbnetfs +port instead. +.Ef +.Sh SEE ALSO +.Xr smbutil 1 , +.Xr mount_smbfs 8 +.Sh STANDARDS +.Rs +.%U https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cifs/ +.%T Common Internet File System (CIFS) Protocol +.%R MS-CIFS +.%D December 2018 +.Re +.Pp +.Rs +.%U https://tools.ietf.org/html/draft-heizer-cifs-v1-spec-00 +.%T Common Internet File System Protocol (CIFS/1.0) +.%D June 13, 1996 +.%A I. Heizer +.%A P. Leach +.%A D. Perry +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 4.4 . +.Sh AUTHORS +.An -nosplit +The +.Nm +device driver was written by +.An Boris Popov Aq Mt bp@FreeBSD.org . +The manual page was contributed by +.An Gordon Bergling Aq Mt gbe@FreeBSD.org . diff --git a/share/man/man4/smsc.4 b/share/man/man4/smsc.4 index 56c1556e5f83..61b12c7d230c 100644 --- a/share/man/man4/smsc.4 +++ b/share/man/man4/smsc.4 @@ -25,12 +25,12 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd May 7, 2024 .Dt SMSC 4 .Os .Sh NAME .Nm smsc -.Nd "USB SMSC LAN9xxx Fast Ethernet driver" +.Nd "USB Microchip LAN9xxx Fast Ethernet driver" .Sh SYNOPSIS To load the driver as a module at boot time, place the following line in @@ -53,7 +53,7 @@ following lines in your kernel configuration file: The .Nm device driver provides support for USB Fast Ethernet adapters based -on the SMSC LAN9xxx chipsets. +on the Microchip (formerly SMSC) LAN9xxx chipsets. .Pp For more information on configuring this device, see .Xr ifconfig 8 . @@ -64,11 +64,11 @@ driver: .Pp .Bl -bullet -compact .It -SMSC LAN9500, LAN9500A, LAN9505 and LAN9505A based Ethernet adapters +LAN9500, LAN9500A, LAN9505 and LAN9505A based Ethernet adapters .It -SMSC LAN89530, LAN9530 and LAN9730 based Ethernet adapters +LAN89530, LAN9530 and LAN9730 based Ethernet adapters .It -SMSC LAN951x Ethernet adapters with integrated USB hub +LAN951x Ethernet adapters with integrated USB hub .El .Sh SEE ALSO .Xr arp 4 , diff --git a/share/man/man4/snd_dummy.4 b/share/man/man4/snd_dummy.4 new file mode 100644 index 000000000000..2b9d26d318ef --- /dev/null +++ b/share/man/man4/snd_dummy.4 @@ -0,0 +1,69 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024 The FreeBSD Foundation +.\" +.\" Portions of this software were developed by Christos Margiolis +.\" <christos@FreeBSD.org> under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd July 15, 2024 +.Dt SND_DUMMY 4 +.Os +.Sh NAME +.Nm snd_dummy +.Nd Dummy audio driver +.Sh SYNOPSIS +To load the driver at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +snd_dummy_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver implements a virtual testing device, meaning it does not correspond to a +physical sound card. +It is intended for testing, so that test programs do not need to rely on +hardware being present in the machine in order to run. +.Pp +The driver attaches as a regular PCM device, with two channels (one playback +and one recording), as well as a mixer. +.Pp +Playback works by discarding all input, and recording by returning silence +(zeros). +.Sh SEE ALSO +.Xr sound 4 , +.Xr loader.conf 5 , +.Xr loader 8 +.Sh AUTHORS +The +.Nm +driver was implemented by +.An Christos Margiolis Aq Mt christos@FreeBSD.org +under sponsorship from the +.Fx +Foundation. +.Sh CAVEATS +Because the driver automatically attaches once the module is loaded, it can +only be attached once. diff --git a/share/man/man4/snd_hda.4 b/share/man/man4/snd_hda.4 index 45ad2ee132ca..93bac0e5b3b9 100644 --- a/share/man/man4/snd_hda.4 +++ b/share/man/man4/snd_hda.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2006-2008 Joel Dahl <joel@FreeBSD.org> .\" Copyright (c) 2008 Alexander Motin <mav@FreeBSD.org> .\" All rights reserved. @@ -23,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 16, 2019 +.Dd January 20, 2025 .Dt SND_HDA 4 .Os .Sh NAME @@ -384,6 +387,15 @@ Run-time equivalent of the .Va hint.pcm.%d.rec.autosrc tunable. .El +.Sh HARDWARE +The +.Nm +driver supports PCI class 04h +.Pq multimedia , +subclass 03h +.Pq HDA +audio controllers and codecs compatible with the +Intel High Definition Audio 1.0 specification. .Sh EXAMPLES Taking HP Compaq DX2300 with Realtek ALC888 HDA codec for example. This system has two audio connectors on a front side, three audio connectors @@ -583,17 +595,6 @@ other random inputs Controls have different precision. Some could be just an on/off triggers. Most of controls use logarithmic scale. -.Sh HARDWARE -The -.Nm -driver supports controllers having PCI class 4 (multimedia) and -subclass 3 (HDA), compatible with Intel HDA specification. -.Pp -The -.Nm -driver supports more than two hundred different controllers and CODECs. -There is no sense to list all of them here, as in most cases specific CODEC -configuration and wiring are more important then type of the CODEC itself. .Sh SEE ALSO .Xr snd_ich 4 , .Xr sound 4 , diff --git a/share/man/man4/snd_hdsp.4 b/share/man/man4/snd_hdsp.4 new file mode 100644 index 000000000000..ca24bcf22cd0 --- /dev/null +++ b/share/man/man4/snd_hdsp.4 @@ -0,0 +1,176 @@ +.\" Copyright (c) 2012 Ruslan Bukin <br@bsdpad.com> +.\" Copyright (c) 2024 Florian Walpen <dev@submerge.ch> +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 28, 2024 +.Dt SND_HDSP 4 +.Os +.Sh NAME +.Nm snd_hdsp +.Nd "RME HDSP bridge device driver" +.Sh SYNOPSIS +To compile this driver into the kernel, place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device sound" +.Cd "device snd_hdsp" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, place the +following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +snd_hdsp_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +bridge driver allows the generic audio driver +.Xr sound 4 +to attach to RME HDSP audio devices. +.Sh HARDWARE +The +.Nm +driver supports the following audio devices: +.Pp +.Bl -bullet -compact +.It +RME HDSP 9632 (optional AO4S-192 and AIS-192 extension boards) +.It +RME HDSP 9652 +.El +.Pp +By default, each +.Xr pcm 4 +device corresponds to a physical port on the sound card. +For ADAT ports, 8 channel, 4 channel and 2 channel formats are supported. +The effective number of ADAT channels is 8 channels at single speed +(32kHz-48kHz) and 4 channels at double speed (64kHz-96kHz). +Only the HDSP 9632 can operate at quad speed (128kHz-192kHz), ADAT is +disabled in this mode. +Depending on sample rate and channel format selected, not all pcm channels can +be mapped to ADAT channels and vice versa. +.Sh LOADER TUNABLES +These settings can be entered at the +.Xr loader 8 +prompt or in +.Xr loader.conf 5 . +.Bl -tag -width indent +.It Va hw.hdsp.unified_pcm +If set to 1, all physical ports are combined into one unified pcm device. +When opened in multi-channel audio software, this makes all ports available +at the same time, and fully synchronized. +For resulting channel numbers consult the following table: +.El +.Bl -column "Sound Card" "Single Speed" "Double Speed" "Quad Speed" +.Sy "Sound Card" Ta Sy "Single Speed" Ta Sy "Double Speed" Ta Sy "Quad Speed" +.It "" Ta "Play | Rec" Ta "Play | Rec" Ta "Play | Rec" +.It HDSP 9632 Ta " 16 | 16" Ta " 12 | 12" Ta " 8 | 8" +.It HDSP 9652 Ta " 26 | 26" Ta " 14 | 14" Ta " - | -" +.El +.Sh SYSCTL TUNABLES +These settings and informational values can be accessed at runtime with the +.Xr sysctl 8 +command. +If multiple RME HDSP sound cards are installed, each device has a separate +configuration. +To adjust the following sysctl identifiers for a specific sound card, insert +the respective device number in place of +.Ql 0 . +.Bl -tag -width indent +.It Va dev.hdsp.0.sample_rate +Set a fixed sample rate from 32000, 44100, 48000, up to 192000. +This is usually required for digital connections (AES, S/PDIF, ADAT). +The default value of 0 adjusts the sample rate according to pcm device settings. +.It Va dev.hdsp.0.period +The number of samples processed per interrupt, from 32, 64, 128, up to 4096. +Setting a lower value here results in less latency, but increases system load +due to frequent interrupt processing. +Extreme values may cause audio gaps and glitches. +.It Va dev.hdsp.0.clock_list +Lists possible clock sources to sync with, depending on the hardware model. +This includes internal and external master clocks as well as incoming digital +audio signals like AES, S/PDIF and ADAT. +.It Va dev.hdsp.0.clock_preference +Select a preferred clock source from the clock list. +HDSP cards will sync to this clock source when available, but fall back to +auto-sync with any other digital clock signal they receive. +Set this to +.Ql internal +if the HDSP card should act as master clock. +.It Va dev.hdsp.0.clock_source +Shows the actual clock source in use (read only). +This differs from what is set as clock preference when in auto-sync mode. +.It Va dev.hdsp.0.sync_status +Display the current sync status of all external clock sources. +Status indications are +.Ql none +for no signal at all, +.Ql lock +for when a valid signal is present, and +.Ql sync +for accurately synchronized signals (required for recording digital +audio). +.El +.Pp +The following tunables are applicable to HDSP 9632 devices only: +.Bl -tag -width indent +.It Va dev.hdsp.0.input_level +Select the sensitivity of the analog line input. +Available reference levels for the input signal are +.Ql LowGain , +.Ql +4dBu +and +.Ql -10dBV . +.It Va dev.hdsp.0.output_level +Select the gain level of the analog line output. +Available reference levels for the output signal are +.Ql HighGain , +.Ql +4dBu +and +.Ql -10dBV . +.It Va dev.hdsp.0.phones_level +Adjust the gain level of the phones output, separately from the analog line +output. +The signal can be lowered by 6 or 12 dB. +.El +.Pp +Where appropriate these sysctl values are modeled after official RME software on +other platforms, and adopt their terminology. +Consult the RME user manuals for additional information. +.Sh SEE ALSO +.Xr sound 4 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +Based on +.Xr snd_hdspe 4 +originally written by +.An Ruslan Bukin <br@bsdpad.com> . +All adaptation to HDSP cards by +.An Florian Walpen <dev@submerge.ch> . diff --git a/share/man/man4/snd_hdspe.4 b/share/man/man4/snd_hdspe.4 index a8c7be538dd1..35dea518da64 100644 --- a/share/man/man4/snd_hdspe.4 +++ b/share/man/man4/snd_hdspe.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 9, 2024 +.Dd November 2, 2024 .Dt SND_HDSPE 4 .Os .Sh NAME @@ -55,7 +55,7 @@ driver supports the following audio devices: .Pp .Bl -bullet -compact .It -RME HDSPe AIO +RME HDSPe AIO (optional AO4S-192 and AI4S-192 extension boards) .It RME HDSPe RayDAT .El @@ -84,7 +84,7 @@ For resulting channel numbers consult the following table: .Bl -column "HDSPe RayDAT" "Single Speed" "Double Speed" "Quad Speed" .Sy "Sound Card" Ta Sy "Single Speed" Ta Sy "Double Speed" Ta Sy "Quad Speed" .It "" Ta "Play | Rec" Ta "Play | Rec" Ta "Play | Rec" -.It HDSPe AIO Ta " 16 | 14" Ta " 12 | 10" Ta " 10 | 8" +.It HDSPe AIO Ta " 20 | 18" Ta " 16 | 14" Ta " 14 | 12" .It HDSPe RayDAT Ta " 36 | 36" Ta " 20 | 20" Ta " 12 | 12" .El .Sh SYSCTL TUNABLES @@ -132,6 +132,32 @@ for accurately synchronized signals (required for recording digital audio). .El .Pp +The following tunables are applicable to HDSPe AIO devices only: +.Bl -tag -width indent +.It Va dev.hdspe.0.input_level +Select the sensitivity of the analog line input. +Available reference levels for the input signal are +.Ql LowGain , +.Ql +4dBu +and +.Ql -10dBV . +.It Va dev.hdspe.0.output_level +Select the gain level of the analog line output. +Available reference levels for the output signal are +.Ql HighGain , +.Ql +4dBu +and +.Ql -10dBV . +.It Va dev.hdspe.0.phones_level +Adjust the gain level of the phones output, separately from the analog line +output. +Available reference levels for the output signal are +.Ql HighGain , +.Ql +4dBu +and +.Ql -10dBV . +.El +.Pp Where appropriate these sysctl values are modeled after official RME software on other platforms, and adopt their terminology. Consult the RME user manuals for additional information. diff --git a/share/man/man4/snd_uaudio.4 b/share/man/man4/snd_uaudio.4 index 6e2509b8f2ac..7193c85fa4f0 100644 --- a/share/man/man4/snd_uaudio.4 +++ b/share/man/man4/snd_uaudio.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" $NetBSD: uaudio.4,v 1.15 2002/02/12 19:53:57 jdolecek Exp $ .\" .\" Copyright (c) 1999 The NetBSD Foundation, Inc. @@ -27,32 +30,30 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 26, 2024 +.Dd July 17, 2025 .Dt SND_UAUDIO 4 .Os .Sh NAME .Nm snd_uaudio .Nd USB audio and MIDI device driver .Sh SYNOPSIS -To compile this driver into the kernel, place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent .Cd "device sound" .Cd "device usb" .Cd "device snd_uaudio" -.Ed .Pp -Alternatively, to load the driver as a module at boot time, place the -following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -snd_uaudio_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for USB audio class devices and USB MIDI class devices. +In +.Xr rc.conf 5 : +.Cd kld_list="snd_uaudio" .Pp +In +.Xr sysctl.conf 5 : +.Cd hw.usb.uaudio.buffer_ms +.Cd hw.usb.uaudio.default_bits +.Cd hw.usb.uaudio.default_channels +.Cd hw.usb.uaudio.default_rate +.Cd hw.usb.uaudio.handle_hid +.Cd hw.usb.uaudio.debug +.Sh DESCRIPTION A USB audio device consists of a number of components: input terminals (e.g.\& USB digital input), output terminals (e.g.\& speakers), and a number of units in between (e.g.\& volume control). @@ -68,6 +69,11 @@ sample rate and sample size. Refer to the .Ql USB Audio Class Specification for more information. +.Sh HARDWARE +The +.Nm +driver provides support for USB audio class devices and +USB MIDI class devices. .Sh SYSCTL VARIABLES The following settings can be entered at the .Xr loader 8 @@ -156,13 +162,6 @@ and modified for by .An Hiten Pandya Aq Mt hmp@FreeBSD.org . .Sh BUGS -Some USB audio devices might refuse to work properly unless the sample -rate is configured the same for both recording and playback, even if -only simplex is used. -See the -.Va dev.pcm.%d.[play|rec].vchanrate -sysctls. -.Pp The PCM framework in .Fx currently does not support the full set of USB audio mixer controls. diff --git a/share/man/man4/sndstat.4 b/share/man/man4/sndstat.4 index 8325490da162..5927e03ae439 100644 --- a/share/man/man4/sndstat.4 +++ b/share/man/man4/sndstat.4 @@ -29,7 +29,7 @@ .\" .\" Note: The date here should be updated whenever a non-trivial .\" change is made to the manual page. -.Dd April 15, 2021 +.Dd July 26, 2024 .Dt SNDSTAT 4 .Os .Sh NAME @@ -60,25 +60,63 @@ struct sndstioc_nv_arg { Here is an example of an nvlist object with explanations of the common fields: .Bd -literal -offset indent dsps (NVLIST ARRAY): 1 - from_user (BOOL): FALSE - nameunit (STRING): [pcm0] - devnode (STRING): [dsp0] - desc (STRING): [Generic (0x8086) (Analog Line-out)] - pchan (NUMBER): 1 (1) (0x1) - rchan (NUMBER): 0 (0) (0x0) - info_play (NVLIST): - min_rate (NUMBER): 48000 (48000) (0xbb80) - max_rate (NUMBER): 48000 (48000) (0xbb80) - formats (NUMBER): 16 (16) (0x10) - min_chn (NUMBER): 2 (2) (0x2) - max_chn (NUMBER): 2 (2) (0x2) - provider_info (NVLIST): - unit (NUMBER): 0 (0) (0x0) - bitperfect (BOOL): FALSE - pvchan (NUMBER): 1 (1) (0x1) - rvchan (NUMBER): 0 (0) (0x0) - provider (STRING): [sound(4)] - , + from_user (BOOL): FALSE + nameunit (STRING): [pcm0] + devnode (STRING): [dsp0] + desc (STRING): [Generic (0x8086) (Analog Line-out)] + pchan (NUMBER): 1 + rchan (NUMBER): 0 + info_play (NVLIST): + min_rate (NUMBER): 48000 + max_rate (NUMBER): 48000 + formats (NUMBER): 16 + min_chn (NUMBER): 2 + max_chn (NUMBER): 2 + provider_info (NVLIST): + unit (NUMBER): 0 + status (STRING): on hdaa0 + bitperfect (BOOL): FALSE + pvchan (BOOL): TRUE + pvchanrate (NUMBER): 48000 + pvchanformat (NUMBER): 0x00000010 + rvchan (BOOL): TRUE + rvchanrate (NUMBER): 48000 + rvchanformat (NUMBER): 0x00000010 + channel_info (NVLIST_ARRAY): 1 + name (STRING): dsp0.virtual_play.0 + parentchan (STRING): dsp0.play.0 + unit (NUMBER): 1 + caps (NUMBER): 0x073200 + latency (NUMBER): 2 + rate (NUMBER): 48000 + format (NUMBER): 0x201000 + pid (NUMBER): 1234 + comm (STRING): mpv + interrupts (NUMBER): 0 + feedcount (NUMBER): 0 + xruns (NUMBER): 0 + left_volume (NUMBER): 45 + right_volume (NUMBER): 45 + hwbuf_fmt (NUMBER): 0x200010 + hwbuf_rate (NUMBER): 48000 + hwbuf_size (NUMBER): 0 + hwbuf_blksz (NUMBER): 0 + hwbuf_blkcnt (NUMBER): 0 + hwbuf_free (NUMBER): 0 + hwbuf_ready (NUMBER): 0 + swbuf_fmt (NUMBER): 0x201000 + swbuf_rate (NUMBER): 48000 + swbuf_size (NUMBER): 16384 + swbuf_blksz (NUMBER): 2048 + swbuf_blkcnt (NUMBER): 8 + swbuf_free (NUMBER): 16384 + swbuf_ready (NUMBER): 0 + feederchain (STRING): + [userland -> + feeder_root(0x00201000) -> + feeder_format(0x00201000 -> 0x00200010) -> + feeder_volume(0x00200010) -> hardware] + provider (STRING): [sound(4)] .Ed .Bl -tag -width ".Dv provider_info" .It Dv from_user @@ -133,6 +171,93 @@ Provider-specific fields. This field may not exist if the PCM audio device is not provided by in-kernel interface. This field will not exist if the provider field is an empty string. +For the +.Xr sound 4 +provider, there are a number of name/value pairs inside this field: +.Bl -tag -width ".Dv channel_info" +.It Dv unit +Sound card unit. +.It Dv status +Status string. +Usually reports the driver the device is attached on. +.It Dv bitperfect +Whether the sound card has bit-perfect mode enabled. +.It Dv pvchan +Playback virtual channels enabled. +.It Dv pvchanrate +Playback virtual channel sample rate. +.It Dv pvchanformat +Playback virtual channel format. +.It Dv rvchan +Recording virtual channels enabled. +.It Dv rvchanrate +Recording virtual channel sample rate. +.It Dv rvchanformat +Recording virtual channel format. +.It Dv channel_info +Channel information. +There are a number of name/value pairs inside this field: +.Bl -tag -width ".Dv hwbuf_blkcnt" +.It Dv name +Channel name. +.It Dv parentchan +Parent channel name (e.g., in the case of virtual channels). +.It Dv unit +Channel unit. +.It Dv caps +OSS capabilities. +.It Dv latency +Latency. +.It Dv rate +Sampling rate. +.It Dv format +Sampling format. +.It Dv pid +PID of the process consuming the channel. +.It Dv comm +Name of the process consuming the channel. +.It Dv interrupts +Number of interrupts since the channel has been opened. +.It Dv xruns +Number of overruns/underruns, depending on channel direction. +.It Dv feedcount +Number of read/written bytes since the channel has been opened. +.It Dv left_volume +Left volume. +.It Dv right_volume +Right volume. +.It Dv hwbuf_format +Hardware buffer format. +.It Dv hwbuf_rate +Hardware buffer sample rate; +.It Dv hwbuf_size +Hardware buffer size. +.It Dv hwbuf_blksz +Hardware buffer block size. +.It Dv hwbuf_blkcnt +Hardware buffer block count. +.It Dv hwbuf_free +Free space in hardware buffer (in bytes). +.It Dv hwbuf_ready +Number of bytes ready to be read/written from hardware buffer. +.It Dv swbuf_format +Software buffer format. +.It Dv swbuf_rate +Software buffer sample rate; +.It Dv swbuf_size +Software buffer size. +.It Dv swbuf_blksz +Software buffer block size. +.It Dv swbuf_blkcnt +Software buffer block count. +.It Dv swbuf_free +Free space in software buffer (in bytes). +.It Dv swbuf_ready +Number of bytes ready to be read/written from software buffer. +.It Dv feederchain +Channel feeder chain. +.El +.El .It Dv provider A string specifying the provider of the PCm audio device. .El diff --git a/share/man/man4/splash.4 b/share/man/man4/splash.4 index b6d93287286c..0e52d9eb83c4 100644 --- a/share/man/man4/splash.4 +++ b/share/man/man4/splash.4 @@ -24,7 +24,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd December 31, 2015 +.Dd July 09, 2024 .Dt SPLASH 4 .Os .Sh NAME @@ -203,7 +203,9 @@ have the following line in the kernel configuration file. .Pp .Dl device splash .Pp -Next, edit +Next for +.Xr syscons 4 , +edit .Pa /boot/loader.conf (see .Xr loader.conf 5 ) @@ -240,6 +242,18 @@ splash_txt_load="YES" bitmap_load="YES" bitmap_name="/boot/splash.bin" .Ed +.Pp +For +.Xr vt 4 , +edit +.Pa /boot/loader.conf +(see +.Xr loader.conf 5 ) +and include the following lines: +.Bd -literal -offset indent +splash="/boot/images/freebsd-logo-rev.png" +boot_mute="YES" +.Ed .\".Sh DIAGNOSTICS .Sh SEE ALSO .Xr vidcontrol 1 , @@ -290,10 +304,17 @@ and .Pa warp_saver modules were written by .An Dag-Erling Sm\(/orgrav Aq Mt des@FreeBSD.org . +.Pa splash +png support for +.Xr vt 4 +was written by +.An Emmanuel Vadot Aq Mt manu@FreeBSD.org . .Sh CAVEATS -Both the splash screen and the screen saver work with +The screen saver works with .Xr syscons 4 only. +.Pp +For vt splash screen, only RGBA png are supported. .Sh BUGS If you load a screen saver while another screen saver has already been loaded, the first screen saver will not be automatically unloaded diff --git a/share/man/man4/stf.4 b/share/man/man4/stf.4 index 2c0296b204d9..c93600c15e0a 100644 --- a/share/man/man4/stf.4 +++ b/share/man/man4/stf.4 @@ -201,7 +201,7 @@ The IPv4 WAN address. The prefix length of the IPv4 WAN address. .El .Pp -These can parameters are all configured through +These parameters are all configured through .Xr ifconfig 8 . .Pp The IPv6 address and prefix length can be configured like any other IPv6 address. diff --git a/share/man/man4/syscons.4 b/share/man/man4/syscons.4 index 19ecd5e3746e..7e31680ced3f 100644 --- a/share/man/man4/syscons.4 +++ b/share/man/man4/syscons.4 @@ -24,7 +24,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 25, 2022 +.Dd November 2, 2024 .Dt SYSCONS 4 .Os .Sh NAME @@ -69,6 +69,14 @@ In In .Pa /boot/loader.conf : .Cd kern.vty=sc +.Sh DEPRECATION NOTICE +The +.Nm +console is deprecated, and will be removed in a future version of +.Fx . +Users are advised to migrate to the +.Xr vt 4 +console instead. .Sh DESCRIPTION The .Nm diff --git a/share/man/man4/tarfs.4 b/share/man/man4/tarfs.4 new file mode 100644 index 000000000000..1a2944de9063 --- /dev/null +++ b/share/man/man4/tarfs.4 @@ -0,0 +1,126 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2022 Klara, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd February 14, 2023 +.Dt TARFS 4 +.Os +.Sh NAME +.Nm tarfs +.Nd tarball filesystem +.Sh SYNOPSIS +To compile this driver into the kernel, place the following line in +your kernel configuration file: +.Bd -ragged -offset indent +.Cd "options TARFS" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, place the +following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +tarfs_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver implements a read-only filesystem backed by a +.Xr tar 5 +file. +Currently, only POSIX archives, optionally compressed with +.Xr zstd 1 , +are supported. +.Pp +The preferred I/O size for +.Nm +filesystems can be adjusted using the +.Va vfs.tarfs.ioshift +sysctl setting and tunable. +Setting it to 0 will reset it to its default value. +Note that changes to this setting only apply to filesystems mounted +after the change. +.Pp +When the backing tar file is compressed with +.Xr zstd 1 , +I/O performance can be improved by ensuring that compressed data is +broken up into multiple frames. +This helps minimize unnecessary decompression work. +When using +.Xr bsdtar 1 +to create the tar file, this can be achieved using the +.Cm zstd:max-frame-size +and +.Cm zstd:frame-per-file +options. +Sensible frame sizes are powers of 2 between the system's base page size +(see +.Xr arch 7 ) +and the value of the +.Sy kern.maxphys +sysctl. +Smaller frames will generally yield a worse compression ratio and require extra +kernel memory to maintain an index, and larger frames will on average require +more CPU time to access data when performing random I/O. +.Sh DIAGNOSTICS +If enabled by the +.Dv TARFS_DEBUG +kernel option, the +.Va vfs.tarfs.debug +sysctl setting can be used to control debugging output from the +.Nm +driver. +Debugging output for individual sections of the driver can be enabled +by adding together the relevant values from the table below. +.Bl -column Value Description +.It 0x01 Ta Memory allocations +.It 0x02 Ta Checksum calculations +.It 0x04 Ta Filesystem operations (vfsops) +.It 0x08 Ta Path lookups +.It 0x10 Ta File operations (vnops) +.It 0x20 Ta General I/O +.It 0x40 Ta Decompression +.It 0x80 Ta Decompression index +.It 0x100 Ta Sparse file mapping +.It 0x200 Ta Bounce buffer usage +.El +.Sh SEE ALSO +.Xr tar 1 , +.Xr zstd 1 , +.Xr fstab 5 , +.Xr tar 5 , +.Xr mount 8 , +.Xr sysctl 8 +.Sh HISTORY +.An -nosplit +The +.Nm +driver was developed by +.An Stephen J. Kiernan Aq Mt stevek@FreeBSD.org +and +.An Dag-Erling Smørgrav Aq Mt des@FreeBSD.org +for Juniper Networks and Klara Systems. +This manual page was written by +.An Dag-Erling Smørgrav Aq Mt des@FreeBSD.org +for Juniper Networks and Klara Systems. diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4 index 39db12752937..fcfda42908d8 100644 --- a/share/man/man4/tcp.4 +++ b/share/man/man4/tcp.4 @@ -31,7 +31,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 30, 2023 +.Dd June 27, 2025 .Dt TCP 4 .Os .Sh NAME @@ -200,6 +200,35 @@ The alternate TCP stack must already be loaded in the kernel. To list the available TCP stacks, see .Va functions_available in the +.Sx FIB support +TCP sockets are FIB-aware. +They inherit the FIB of the process which created the socket, or that of the +listening socket for sockets created by +.Xr accept 2 . +In particular, the FIB is not inherited from that of the interface where the +initiating SYN packet was received. +When an incoming connection request arrives to a listening socket, the initial +handshake also occurs in the FIB of the listening socket, not that of the +received packet. +.Pp +By default, a TCP listening socket can accept connections originating from any +FIB. +If the +.Va net.inet.tcp.bind_all_fibs +tunable is set to 0, a listening socket will only accept connections +originating +from the FIB's listening socket. +Connection requests from other FIBs will be treated as though there is no +listening socket for the destination address and port. +In this mode, multiple listening sockets owned by the same user can listen on +the same address and port so long as they belong to different FIBs, similar to +the behavior of the +.Dv SO_REUSEPORT +socket option. +If the tunable is set to 0, all sockets added to a load-balancing group created +with the +.Dv SO_REUSEPORT_LB +socket option must belong to the same FIB. .Sx MIB (sysctl) Variables section further down. To list the default TCP stack, see @@ -418,7 +447,7 @@ and the reverse source route is used in responding. The default congestion control algorithm for .Tn TCP is -.Xr cc_newreno 4 . +.Xr cc_cubic 4 . Other congestion control algorithms can be made available using the .Xr mod_cc 4 framework. @@ -432,6 +461,17 @@ branch of the MIB, which can also be read or modified with .Xr sysctl 8 . .Bl -tag -width ".Va v6pmtud_blackhole_mss" +.It Va ack_war_timewindow , ack_war_cnt +The challenge ACK throttling algorithm defined in RFC 5961 limits +the number of challenge ACKs sent per TCP connection to +.Va ack_war_cnt +during the time interval specified in milliseconds by +.Va ack_war_timewindow . +Setting +.Va ack_war_timewindow +or +.Va ack_war_cnt +to zero disables challenge ACK throttling. .It Va always_keepalive Assume that .Dv SO_KEEPALIVE @@ -611,11 +651,6 @@ Defaults to 60 seconds. List of available TCP function blocks (TCP stacks). .It Va functions_default The default TCP function block (TCP stack). -.It Va functions_inherit_listen_socket_stack -Determines whether to inherit listen socket's TCP stack or use the current -system default TCP stack, as defined by -.Va functions_default . -Default is true. .It Va hostcache The TCP host cache is used to cache connection details and metrics to improve future performance of connections between the same hosts. @@ -699,6 +734,9 @@ Default is false. .It Va insecure_syn Use criteria defined in RFC793 instead of RFC5961 for accepting SYN segments. Default is false. +.It Va insecure_ack +Use criteria defined in RFC793 for validating SEG.ACK. +Default is false. .It Va isn_reseed_interval The interval (in seconds) specifying how often the secret data used in RFC 1948 initial sequence number calculations should be reseeded. @@ -742,21 +780,34 @@ Minimum TCP Maximum Segment Size; used to prevent a denial of service attack from an unreasonably low MSS. .It Va msl The Maximum Segment Lifetime, in milliseconds, for a packet. +.It Va msl_local +The Maximum Segment Lifetime, in milliseconds, for a packet when both endpoints +are local. +.Va msl_local +is only used if +.Va nolocaltimewait , +which is deprecated, is zero. .It Va mssdflt The default value used for the TCP Maximum Segment Size .Pq Dq MSS for IPv4 when no advice to the contrary is received from MSS negotiation. -.It Va newcwd +.It Va newcwv Enable the New Congestion Window Validation mechanism as described in RFC 7661. This gently reduces the congestion window during periods, where TCP is application limited and the network bandwidth is not utilized completely. That prevents self-inflicted packet losses once the application starts to transmit data at a higher speed. .It Va nolocaltimewait -Suppress creation of TCP +Suppress the creation of TCP .Dv TIME_WAIT states for connections in which both endpoints are local. +The default is 0. +.Va nolocaltimewait +is deprecated and will be removed in +.Fx 16 . +.Va msl_local +can be used instead. .It Va path_mtu_discovery Enable Path MTU Discovery. .It Va pcbcount @@ -833,10 +884,13 @@ segment is lost (default and maximum is 12). .It Va rexmit_drop_options Drop TCP options from third and later retransmitted SYN segments of a connection. -.It Va rexmit_initial , rexmit_min , rexmit_slop +.It Va rexmit_initial , rexmit_min , rexmit_slop , rexmit_max Adjust the retransmit timer calculation for .Tn TCP . -The slop is +A new connection starts with timer set to +.Va rexmit_initial . +The +.Va rexmit_slop typically added to the raw calculation to take into account occasional variances that the .Tn SRTT @@ -856,6 +910,11 @@ For this reason, we use 200ms of slop and a near-0 minimum, which gives us an effective minimum of 200ms (similar to .Tn Linux ) . The initial value is used before an RTT measurement has been performed. +The +.Va rexmit_min +and +.Va rexmit_max +set minimum and maximum timer values that a connection may have. .It Va rfc1323 Implement the window scaling and timestamp options of RFC 1323/RFC 7323 (default is 1). @@ -1032,6 +1091,7 @@ when trying to use a TCP function block that is not available; .El .Sh SEE ALSO .Xr getsockopt 2 , +.Xr setfib 2 , .Xr socket 2 , .Xr stats 3 , .Xr sysctl 3 , @@ -1075,6 +1135,13 @@ when trying to use a TCP function block that is not available; .%T "The Addition of Explicit Congestion Notification (ECN) to IP" .%O "RFC 3168" .Re +.Rs +.%A "A. Ramaiah" +.%A "R. Stewart" +.%A "M. Dalal" +.%T "Improving TCP's Robustness to Blind In-Window Attacks" +.%O "RFC 5961" +.Re .Sh HISTORY The .Tn TCP diff --git a/share/man/man4/tmpfs.4 b/share/man/man4/tmpfs.4 new file mode 100644 index 000000000000..7d24f7db9aea --- /dev/null +++ b/share/man/man4/tmpfs.4 @@ -0,0 +1,229 @@ +.\"- +.\" Copyright (c) 2007 Xin LI +.\" Copyright (c) 2017 The FreeBSD Foundation +.\" +.\" Part of this documentation was written by +.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\"- +.\" Copyright (c) 2005, 2006 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 18, 2023 +.Dt TMPFS 4 +.Os +.Sh NAME +.Nm tmpfs +.Nd "in-memory file system" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "options TMPFS" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +tmpfs_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver implements an in-memory, or +.Nm +file system. +The filesystem stores both file metadata and data in main memory. +This allows very fast and low latency accesses to the data. +The data is volatile. +An umount or system reboot invalidates it. +These properties make the filesystem's mounts suitable for fast +scratch storage, like +.Pa /tmp . +.Pp +If the system becomes low on memory and swap is configured +.Po see +.Xr swapon 8 Pc , +the system can transfer file data to swap space, freeing memory +for other needs. +Metadata, including the directory content, is never swapped out by the +current implementation. +Keep this in mind when planning the mount limits, especially when expecting +to place many small files on a tmpfs mount. +.Pp +When +.Xr mmap 2 +is used on a file from a tmpfs mount, the swap VM object managing the +file pages is used to implement mapping and avoid double-copying of +the file data. +This quirk causes process inspection tools, like +.Xr procstat 1 , +to report anonymous memory mappings instead of file mappings. +.Sh OPTIONS +The following options are available when +mounting +.Nm +file systems: +.Bl -tag -width "maxfilesize" +.It Cm easize +Set the maximum memory size used by extended attributes in bytes. +The default is 16 megabytes. +.It Cm export +Accept the +.Cm export +option for compatibility with +.Xr nfsv4 4 . +This option does nothing. +.It Cm gid +Set the group ID of the root inode of the file system. +The default is the mount point's GID. +.It Cm inodes +Set the maximum number of nodes available to the file system. +If not specified, the file system chooses a reasonable maximum based on +the file system size, which can be limited with the +.Cm size +option. +.It Cm maxfilesize +Set the maximum file size in bytes. +The default is the maximum possible value. +.It Cm mode +Set the mode (in octal notation) of the root inode of the file system. +The default is the mount point's mode. +.It Cm nomtime +Disable the tracking of mtime updates caused by writes to the +shared mapped areas backed by +.Nm +files. +This option removes periodic scans, +which downgrade read-write-mapped pages to read-only to note the writes. +.It Cm nonc +Do not use namecache to resolve names to files for the created mount. +This saves memory, but currently might impair scalability for highly +used mounts on large machines. +.It Cm nosymfollow +Do not follow +.Xr symlink 7 Ap s +on the mounted file system. +.It Cm pgread +Enable pgcache read for the mount. +.It Cm size +Set the total file system size in bytes, unless suffixed +with one of k, m, g, t, or p, which denote byte, kilobyte, +megabyte, gigabyte, terabyte and petabyte respectively. +If zero (the default) or a value larger than SIZE_MAX - PAGE_SIZE +is given, the available amount of memory (including +main memory and swap space) will be used. +.It Cm uid +Set the user ID of the root inode of the file system. +The default is the mount point's UID. +.It Cm union +Refer to +.Xr mount 8 . +.El +.Sh SYSCTL VARIABLES +The following +.Xr sysctl 8 +variables are available: +.Bl -tag -width indent +.It Va vfs.tmpfs.memory_percent +The percentage of memory plus swap space available at kernel file system +initialization that can be used by a file system with a size of 0. +When this amount of space in use is reached, new files cannot be created +and files cannot be extended. +The default is 95%. +Changing this value also changes +.Va vfs.tmpfs.memory_reserved . +.It Va vfs.tmpfs.memory_reserved +The currently-reserved amount of memory plus swap space +based on the memory percentage. +The minimum is compiled into the system, and defaults to 4 MB. +.El +.Sh EXAMPLES +Mount a +.Nm +memory file system: +.Pp +.Dl "mount -t tmpfs tmpfs /tmp" +.Pp +Configure a +.Nm +mount via +.Xr fstab 5 : +.Bd -literal -offset indent +tmpfs /tmp tmpfs rw 0 0 +.Ed +.Sh SEE ALSO +.Xr procstat 1 , +.Xr mmap 2 , +.Xr nmount 2 , +.Xr unmount 2 , +.Xr fstab 5 , +.Xr mdmfs 8 , +.Xr mount 8 , +.Xr swapinfo 8 , +.Xr swapon 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 7.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +kernel implementation was written by +.An Julio M. Merino Vidal Aq Mt jmmv@NetBSD.org +as a Google Summer of Code project. +.Pp +.An Rohit Jalan +and others ported it from +.Nx +to +.Fx . +.Pp +This manual page was written by +.An Xin LI Aq Mt delphij@FreeBSD.org . diff --git a/share/man/man4/tty.4 b/share/man/man4/tty.4 index 331c0c42f476..caa31835a331 100644 --- a/share/man/man4/tty.4 +++ b/share/man/man4/tty.4 @@ -287,7 +287,7 @@ and is the means by which most full\&-screen oriented programs determine the screen size. The .Va winsize -structure is defined in +structure is provided by .In sys/ioctl.h . .It Dv TIOCSWINSZ Fa struct winsize *ws Set the window size associated with the terminal to be the value in @@ -372,6 +372,7 @@ variables. .Xr stty 1 , .Xr ioctl 2 , .Xr ng_tty 4 , +.Xr pts 4 , .Xr pty 4 , .Xr termios 4 , .Xr getty 8 diff --git a/share/man/man4/twe.4 b/share/man/man4/twe.4 deleted file mode 100644 index 03a51b7b6a50..000000000000 --- a/share/man/man4/twe.4 +++ /dev/null @@ -1,278 +0,0 @@ -.\" -.\" Copyright (c) 2000 Michael Smith -.\" Copyright (c) 2000 BSDi -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. The name of the author may not be used to endorse or promote products -.\" derived from this software without specific prior written permission -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.\" -.Dd May 7, 2023 -.Dt TWE 4 -.Os -.Sh NAME -.Nm twe -.Nd 3ware 5000/6000/7000/8000 series PATA/SATA RAID adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device pci" -.Cd "device twe" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -twe_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 14.0 . -.Sh DESCRIPTION -The -.Nm -driver provides support for AMCC's 3ware 5000/6000/7000/8000 series -PATA/SATA RAID adapters. -These adapters were formerly known as -.Dq 3ware Escalade . -.Pp -These devices support 2, 4, 8, or 12 ATA disk drives -and provide RAID0 (striping) and RAID1 (mirroring) functionality. -.Sh HARDWARE -The -.Nm -driver supports the following PATA/SATA RAID -controllers: -.Pp -.Bl -bullet -compact -.It -AMCC's 3ware 5000 series -.It -AMCC's 3ware 6000 series -.It -AMCC's 3ware 7000-2 -.It -AMCC's 3ware 7006-2 -.It -AMCC's 3ware 7500-4LP -.It -AMCC's 3ware 7500-8 -.It -AMCC's 3ware 7500-12 -.It -AMCC's 3ware 7506-4LP -.It -AMCC's 3ware 7506-8 -.It -AMCC's 3ware 7506-12 -.It -AMCC's 3ware 8006-2LP -.It -AMCC's 3ware 8500-4LP -.It -AMCC's 3ware 8500-8 -.It -AMCC's 3ware 8500-12 -.It -AMCC's 3ware 8506-4LP -.It -AMCC's 3ware 8506-8 -.It -AMCC's 3ware 8506-8MI -.It -AMCC's 3ware 8506-12 -.It -AMCC's 3ware 8506-12MI -.El -.Sh DIAGNOSTICS -.Ss Controller initialisation phase -.Bl -diag -.It twe%d: microcontroller not ready -.Pp -The controller's onboard CPU is not reporting that it is ready; -this may be due to either a board or system failure. -Initialisation has failed. -.It twe%d: no attention interrupt -.It twe%d: can't drain AEN queue -.It twe%d: reset not reported -.It twe%d: controller errors detected -.It twe%d: can't drain response queue -.It twe%d: reset %d failed, trying again -.Pp -The controller is not responding correctly to -the driver's attempts to reset and initialise it. -This process is retried several times. -.It twe%d: can't initialise controller, giving up -.Pp -Several attempts to reset and initialise the controller have failed; -initialisation has failed -and the driver will not attach to this controller. -.El -.Ss Driver initialisation/shutdown phase -.Bl -diag -.It twe%d: register window not available -.It twe%d: can't allocate register window -.It twe%d: can't allocate parent DMA tag -.It twe%d: can't allocate interrupt -.It twe%d: can't set up interrupt -.It twe%d: can't establish configuration hook -.Pp -A resource allocation error occurred while initialising the driver; -initialisation has failed -and the driver will not attach to this controller. -.It twe%d: can't detect attached units -.Pp -Fetching the list of attached units failed; initialisation has failed. -.It twe%d: error fetching capacity for unit %d -.It twe%d: error fetching state for unit %d -.It twe%d: error fetching descriptor size for unit %d -.It twe%d: error fetching descriptor for unit %d -.It twe%d: device_add_child failed -.It twe%d: bus_generic_attach returned %d -.Pp -Creation of the disk devices failed, either due to communication -problems with the adapter or due to resource shortage; -attachment of one or more units may have been aborted. -.El -.Ss Operational phase -.Bl -diag -.It twe%d: command completed - %s -.El -.Pp -A command was reported completed with a warning by the controller. -The warning may be one of: -.Bl -diag -.It redundant/inconsequential request ignored -.It failed to write zeroes to LBA 0 -.It failed to profile TwinStor zones -.El -.Bl -diag -.It twe%d: command failed - %s -.El -.Pp -A command was reported as failed by the controller. -The failure message may be one of: -.Bl -diag -.It aborted due to system command or reconfiguration -.It aborted -.It access error -.It access violation -.It device failure -.It controller error -.It timed out -.It invalid unit number -.It unit not available -.It undefined opcode -.It request incompatible with unit -.It invalid request -.It firmware error, reset requested -.Pp -The command will be returned to the operating system after a -fatal error. -.El -.Bl -diag -.It twe%d: command failed submission - controller wedged -.Pp -A command could not be delivered to the controller because -the controller is unresponsive. -.It twe%d: AEN: <%s> -.El -.Pp -The controller has reported a change in status using an AEN -(Asynchronous Event Notification). -The following AENs may be reported: -.Bl -diag -.It queue empty -.It soft reset -.It degraded mirror -.It controller error -.It rebuild fail -.It rebuild done -.It incomplete unit -.It initialisation done -.It unclean shutdown detected -.It drive timeout -.It drive error -.It rebuild started -.It aen queue full -.Pp -AENs are also queued internally for use by management tools. -.El -.Bl -diag -.It twe%d: error polling for signalled AENs -.Pp -The controller has reported -that one or more status messages are ready for the driver, -but attempting to fetch one of these has returned an error. -.It twe%d: AEN queue overflow, lost AEN <%s> -.Pp -A status message was retrieved from the controller, -but there is no more room to queue it in the driver. -The message is lost (but will be printed to the console). -.It twe%d: missing expected status bits %s -.It twe%d: unexpected status bits %s -.Pp -A check of the controller's status bits -indicates an unexpected condition. -.It twe%d: host interrupt -.Pp -The controller has signalled a host interrupt. -This serves an unknown purpose and is ignored. -.It twe%d: command interrupt -.Pp -The controller has signalled a command interrupt. -This is not used, and will be disabled. -.It twe%d: controller reset in progress... -.Pp -The controller is being reset by the driver. -Typically this is done when the driver has determined that the -controller is in an unrecoverable state. -.It twe%d: can't reset controller, giving up -.Pp -The driver has given up on resetting the controller. -No further I/O will be handled. -.It controller reset done, %d commands restarted -.Pp -The controller was successfully reset, -and outstanding commands were restarted. -.El -.Sh AUTHORS -.An -nosplit -The -.Nm -driver and manual page were written by -.An Michael Smith Aq Mt msmith@FreeBSD.org . -.Pp -Extensive work done on the driver by -.An Vinod Kashyap Aq Mt vkashyap@FreeBSD.org -and -.An Paul Saab Aq Mt ps@FreeBSD.org . -.Sh BUGS -The controller cannot handle I/O transfers -that are not aligned to a 512-byte boundary. -In order to support raw device access from user-space, -the driver will perform alignment fixup on non-aligned data. -This process is inefficient, -and thus in order to obtain best performance -user-space applications accessing the device -should do so with aligned buffers. diff --git a/share/man/man4/u3g.4 b/share/man/man4/u3g.4 index 234b5a4b3277..51c883b8378e 100644 --- a/share/man/man4/u3g.4 +++ b/share/man/man4/u3g.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: ISC .\" .\" Copyright (c) 2008 AnyWi Technologies .\" All rights reserved. @@ -16,12 +18,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd February 4, 2023 +.Dd December 5, 2024 .Dt U3G 4 .Os .Sh NAME .Nm u3g -.Nd USB support for 3G and 4G datacards +.Nd USB support for 3G and 4G cellular modems .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -39,26 +41,46 @@ module at boot time, place the following line in u3g_load="YES" .Ed .Pp -If neither of the above is done, the driver will automatically be loaded -by devd(8) when the device is connected. +If neither of the above is done, the driver will be +automatically loaded by devd(8) when the device is connected. .Sh DESCRIPTION The .Nm -driver provides support for the multiple USB-to-serial interfaces exposed by -many 3G USB/PCCard modems. +driver provides support for USB-to-serial interfaces +exposed by many 3G and 4G modems. +The supported adapters provide the necessary modem port for +.Xr ppp 8 , +or +.Pa net/mpd5 +connections. +Depending on the specific device, extra ports provide other functions +such as an additional command port, diagnostic port, +GPS receiver port, or SIM toolkit port. .Pp The device is accessed through the .Xr ucom 4 driver which makes it behave like a .Xr tty 4 . +.Pp +In some adapters a mass storage device supported by the +.Xr umass 4 +driver is present which contains Windows and Mac OS X drivers. +The device starts up in disk mode (TruInstall, ZeroCD, etc.) +and requires additional commands to switch it to modem mode. +If your device is not switching automatically, please try to add quirks. +See +.Xr usbconfig 8 +and +.Xr usb_quirk 4 . .Sh HARDWARE The .Nm -driver supports the following adapters: +driver supports the following cellular modems: .Pp .Bl -bullet -compact .It -Option GT 3G Fusion, GT Fusion Quad, etc. (only 3G part, not WLAN) +Option GT 3G Fusion, GT Fusion Quad, etc. +.Pq 3G only, not WLAN .It Option GT 3G, GT 3G Quad, etc. .It @@ -70,9 +92,10 @@ Qualcomm Inc. CDMA MSM .It Qualcomm Inc. GOBI 1000, 2000 and 3000 devices with MDM1000 or MDM2000 chipsets .It -QUECTEL BGX, ECX, EGX, EMX, EPX, RGX series. +QUECTEL BGX, ECX, EGX, EMX, EPX, RGX series .It -Quectel EM160R (see CAVEATS) +Quectel EM160R +.Pq see Sx CAVEATS .It Huawei B190, E180v, E220, E3372, E3372v153, E5573Cs322, ('<Huawei Mobile>') .It @@ -83,26 +106,9 @@ Sierra MC875U, MC8775U, etc. Panasonic CF-F9 GOBI .El .Pp -(See +Many more are supported, see .Pa /sys/dev/usb/serial/u3g.c -for the complete list of supported cards for each vendor -mentioned above.) -.Pp -The supported 3G cards provide the necessary modem port for ppp, or mpd -connections as well as extra ports (depending on the specific device) to -provide other functions (additional command port, diagnostic port, SIM toolkit -port). -.Pp -In some of these devices a mass storage device supported by the -.Xr umass 4 -driver is present which contains Windows and Mac OS X drivers. -The device starts up in disk mode (TruInstall, ZeroCD, etc.) and requires -additional commands to switch it to modem mode. -If your device is not switching automatically, please try to add quirks. -See -.Xr usbconfig 8 -and -.Xr usb_quirk 4 . +for the complete list. .Sh FILES .Bl -tag -width "/dev/ttyU*.*.init" -compact .It Pa /dev/ttyU*.* @@ -153,7 +159,9 @@ Hardware for testing was provided by AnyWi Technologies, Leiden, NL. The Quectel EM160R is not officially supported in PPP mode. In order to use it in PPP mode, the ctsrts option needs to be turned off, for example, by adding: +.Pp .Dl set ctsrts off +.Pp to .Pa /etc/ppp/ppp.conf in the correct section. diff --git a/share/man/man4/uart.4 b/share/man/man4/uart.4 index 90ab2fd4cb57..98b61886371d 100644 --- a/share/man/man4/uart.4 +++ b/share/man/man4/uart.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2003 Marcel Moolenaar .\" All rights reserved. @@ -23,12 +25,12 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd July 11, 2020 +.Dd December 5, 2024 .Dt UART 4 .Os .Sh NAME .Nm uart -.Nd driver for Universal Asynchronous Receiver/Transmitter (UART) devices +.Nd Universal Asynchronous Receiver/Transmitter serial driver .Sh SYNOPSIS .Cd "device uart" .Pp @@ -269,6 +271,89 @@ be locked for devices that support more than one setting. The CLOCAL flag on callin ports should be locked off for logins to avoid certain security holes, but this needs to be done by getty if the callin port is used for anything else. +.Sh Console Tuneable +The +.Nm +driver can be designated as a system console. +.Bl -tag -width indent +.It Va hw.uart.console +Contains a number of +.Pa /etc/remote +like tag:value pairs, separated by commas. +.Bl -tag -width indent +.It Cm \&bd +Busy Detect. +Enable the so-called +.Dq Busy Detect +quirk for the device. +For NS 16550-compatible devices, this will use heuristics to ensure that the +UART is no longer busy before manipulating line control. +DesignWare-based UARTs need this due to a design flaw in the UART. +.It Cm \&br +Baudrate. +The data rate (bits per second) used for communications on the serial port. +When the device clock rate (see below) is set to 0, then the baud rate will be +used with the divisor to compute the device clock rate the first time the device +is initialized. +Only the traditional baud rates are allowed. +Rates larger than 19200 must be a multiple of 19200. +Baud rates between 1200 and 19200 must be a multiple of 1200. +Otherwise the baud rate must be a multiple of 75. +A value of '0' instructs the +.Nm +driver to not program the baud rate divisor and use the hardware as-is. +.It Cm \&ch +Channel. +Defaults to 0. +Has no effect on UARTs with only one channel. +.It Cm \&db +Data bits. +Defaults to 8. +.It Cm \&dt +Device type. +Specify the uart class to use for this device. +.Bl -tag -width indent +.It ns8250 +Traditional PC UART National Semiconductor 16550 and compatible devices. +.It pl011 +Common ARM UART, based on ARM Limited designs. +.El +.It Cm \&io +I/O port address. +Specifies the address of a UART in an Intel processor's I/O space. +Mutually exclusive with +.Sq mm . +.It Cm \&mm +Memory mapped I/O address. +Specifies the physical address of a memory-mapped UART. +Mutually exclusive with +.Sq io . +.It Cm \&pa +Parity. +The type of parity to use when sending data +to the host. +This may be one of ``even'', +``odd'', ``none'', ``zero'' (always set bit 8 to zero), +``one'' (always set bit 8 to 1). +The default is even parity. +.It Cm \&rs +Register shift. +Number of bits to shift left the base register offset. +.It Cm \&rw +Register width. +Size of operations to read and write the registers of the device. +.It Cm \&sb +Stopbits. +Defaults to 1. +.It Cm \&xo +Device clock (xtal oscillator). +Base frequency of the oscillator to use for the device. +When set to 0, and the baud rate is also set, the UART's initialization +code will compute this the first time and use that after. +Automatically computed values can be as large as 5% when the base +frequency is a poor match to the traditional baud rates. +.El +.El .Sh FILES .Bl -tag -width "/dev/ttyu?.init" -compact .It Pa /dev/ttyu? @@ -283,6 +368,11 @@ for callout ports .It Pa /dev/cuau?.lock corresponding callout initial-state and lock-state devices .El +.Sh EXAMPLES +.Dl hw.uart.console="io:0x2f8,br=115200" +.Pp +When the kernel is using a serial console port, it should use +COM2 instead of COM1 and set the baud rate to 115200. .Sh SEE ALSO .Xr cu 1 , .Xr puc 4 , diff --git a/share/man/man4/uath.4 b/share/man/man4/uath.4 index 7d9632fe8e0f..865f04b84232 100644 --- a/share/man/man4/uath.4 +++ b/share/man/man4/uath.4 @@ -1,4 +1,6 @@ .\" +.\" SPDX-License-Identifier: ISC +.\" .\" Copyright (c) 2006 .\" Damien Bergamini <damien.bergamini@free.fr> .\" @@ -19,7 +21,7 @@ .Os .Sh NAME .Nm uath -.Nd Atheros USB IEEE 802.11a/b/g wireless network device +.Nd Atheros USB IEEE 802.11a/b/g wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your diff --git a/share/man/man4/uchcom.4 b/share/man/man4/uchcom.4 index d5efe83286ba..6cee3d82c2ce 100644 --- a/share/man/man4/uchcom.4 +++ b/share/man/man4/uchcom.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" $NetBSD: uchcom.4,v 1.2 2008/04/30 13:10:54 martin Exp $ .\" .\" Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -27,46 +30,74 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 26, 2017 +.Dd June 25, 2025 .Dt UCHCOM 4 .Os .Sh NAME .Nm uchcom -.Nd WinChipHead CH341/CH340 serial adapter driver +.Nd WinChipHead CH9102/CH343/CH341/CH340 USB to serial UART driver .Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent .Cd "device usb" .Cd "device ucom" .Cd "device uchcom" -.Ed .Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -uchcom_load="YES" -.Ed +In +.Xr rc.conf 5 : +.Cd kld_list="uchcom" +.Pp +In +.Xr sysctl.conf 5 : +.Cd hw.usb.uchcom.debug=1 .Sh DESCRIPTION The .Nm -driver provides support for the WinChipHead CH341/CH340 USB-to-RS-232 -Bridge chip. -.Pp +driver provides support for the WinChipHead USB to serial UART adapters. +If the appropriate hardware is detected, +the driver will be loaded automatically by +.Xr devmatch 8 . +To load the driver manually, add it to the +.Ic kld_list +in +.Xr rc.conf 5 , +or use +.Xr kldload 8 +at runtime. The device is accessed through the .Xr ucom 4 -driver which makes it behave like a +driver, which makes it behave like a .Xr tty 4 . +.Pp +Call out through this interface with applications like +.Xr cu 1 +or +.Xr tip 1 . .Sh HARDWARE The .Nm -driver supports the following adapters: +driver supports the following USB to serial UART controllers: .Pp .Bl -bullet -compact .It -HL USB-RS232 +WinChipHead CH9102 (max 6Mbps) +.It +WinChipHead CH343 (max 6Mbps) +.It +WinChipHead CH341 (max 2Mbps) +.It +WinChipHead CH340 (max 2Mbps) +.El +.Sh SYSCTL VARIABLES +These settings can be entered in the +.Xr loader 8 +prompt, set in +.Xr loader.conf 5 , +.Xr sysctl.conf 5 , +or changed at runtime with +.Xr sysctl 8 : +.Bl -tag -width "hw.usb.uchcom.debug" +.It Va hw.usb.uchcom.debug +Enable debugging messages, default +.Ql 0 .El .Sh FILES .Bl -tag -width "/dev/ttyU*.init" -compact @@ -83,18 +114,14 @@ for callout ports corresponding callout initial-state and lock-state devices .El .Sh SEE ALSO +.Xr cu 1 , .Xr tty 4 , .Xr ucom 4 , .Xr usb 4 .Sh HISTORY The .Nm -driver first appeared in -.Nx . -The first -.Fx -release to include it was -.Fx 8.0 . -.Sh BUGS -Actually, this chip seems unable to drive other than 8 data bits and -1 stop bit line. +driver appeared in +.Fx 8.0 +from +.Nx 5.0 . diff --git a/share/man/man4/udp.4 b/share/man/man4/udp.4 index 178adfe06b9f..b1dbff56154f 100644 --- a/share/man/man4/udp.4 +++ b/share/man/man4/udp.4 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2022 +.Dd January 20, 2025 .Dt UDP 4 .Os .Sh NAME @@ -107,6 +107,19 @@ Only one value is supported for this option: .Tn UDP_ENCAP_ESPINUDP from RFC 3948, defined in .In netinet/udp.h . +.Sh FIB support +UDP sockets are FIB-aware. +They inherit the FIB of the process which created the socket. +By default, a UDP socket bound to an address can receive datagrams originating +from any FIB. +If the +.Va net.inet.udp.bind_all_fibs +tunable is set to 0, all UDP sockets will receive only datagrams originating +from the same FIB as the socket. +In this mode, multiple sockets can be bound to the same address, so long as +each socket belongs to a different FIB, similar to the behavior of the +.Dv SO_REUSEPORT +option. .Sh MIB (sysctl) Variables The .Nm diff --git a/share/man/man4/ufshci.4 b/share/man/man4/ufshci.4 new file mode 100644 index 000000000000..d722c9902b98 --- /dev/null +++ b/share/man/man4/ufshci.4 @@ -0,0 +1,181 @@ +.\" +.\" Copyright (c) 2025, Samsung Electronics Co., Ltd. +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" ufshci driver man page. +.\" +.\" Author: Jaeyoon Choi <j_yoon.choi@samsung.com> +.\" +.Dd July 17, 2025 +.Dt UFSHCI 4 +.Os +.Sh NAME +.Nm ufshci +.Nd Universal Flash Storage Host Controller Interface driver +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in the kernel configuration file: +.Bd -ragged -offset indent +.Cd "device ufshci" +.Ed +.Pp +Or, to load the driver as a module at boot, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +ufshci_load="YES" +.Ed +.Sh DESCRIPTION +Universal Flash Storage (UFS) is a low-power, high-performance storage +standard composed of a host controller and a single target device. +.Pp +The driver currently provides: +.Bl -bullet +.It +Initialization of the host controller and the target device +.It +Handling of UFS Interconnect (UIC) commands +.It +Support for UTP Transfer Requests (UTR) and UTP Task Management Requests (UTMR) +.It +Support for the SCSI command set +.It +Operation in the legacy single-doorbell queue mode +.It +Support for the PCI Express bus +.El +.Pp +After initialization, the controller is registered with the +.Xr cam 4 +subsystem and its logical unit appears as the device node +.Pa /dev/daX . +.Pp +The driver is under active development; upcoming work includes full +UFS 4.1 feature coverage, additional power-management modes, and +ACPI/FDT-based attach support. +.Sh HARDWARE +The +.Nm +driver supports both host controllers and devices implementing the +Universal Flash Storage Host Controller Interface 4.1 and earlier. +.Sh CONFIGURATION +The +.Nm +driver currently operates with a single doorbell (one I/O-queue), so any +tunables that change the queue count are ignored. +When Multi-Circular Queue (MCQ) support is added and multiple queues +become available, the following queue count tunable values will take effect: +.Pp +To force a single I/O queue pair shared by all CPUs, set the following +tunable value in loader.conf(5): +.Bd -literal -offset indent +hw.ufshci.per_cpu_io_queues=0 +.Ed +.Pp +To assign more than one CPU per I/O queue pair, thereby reducing the +number of MSI-X vectors consumed by the device, set the following tunable +value in loader.conf(5): +.Bd -literal -offset indent +hw.ufshci.min_cpus_per_ioq=X +.Ed +.Pp +To change the I/O command timeout value (in seconds), set the following tunable +value in loader.conf(5): +.Bd -literal -offset indent +hw.ufshci.timeout_period=X +.Ed +.Pp +To change the I/O command retry count, set the following tunable value in +loader.conf(5): +.Bd -literal -offset indent +hw.ufshci.retry_count=X +.Ed +.Pp +To force the driver to use legacy INTx interrupts, set the following tunable +value in loader.conf(5): +.br +(Note: until MCQ support is available the driver always uses legacy INTx, so +this value effectively remains 1) +.Bd -literal -offset indent +hw.ufshci.force_intx=1 +.Ed +.Sh SYSCTL VARIABLES +The following controller-level +.Xr sysctl 8 +nodes are currently implemented: +.Bl -tag -width indent +.It Va dev.ufshci.0.num_failures +(R) Number of command failures for the entire controller. +.It Va dev.ufshci.0.num_retries +(R) Number of command retries for the entire controller. +.It Va dev.ufshci.0.num_intr_handler_calls +(R) Number of times the interrupt handler has been called. +.It Va dev.ufshci.0.num_cmds +(R) Total number of commands issued by the controller. +.It Va dev.ufshci.0.timeout_period +(RW) Configured timeout period (in seconds). +.It Va dev.ufshci.0.cap +(R) Host controller capabilities register value. +.It Va dev.ufshci.0.num_io_queues +(R) Number of I/O-queue pairs. +.It Va dev.ufshci.0.io_queue_mode +(R) Indicates single doorbell mode or multi circular queue mode. +.It Va dev.ufshci.0.minor_version +(R) Host controller minor version. +.It Va dev.ufshci.0.major_version +(R) Host controller major version. +.It Va dev.ufshci.0.utmrq.num_failures +(R) Number of failed UTP task-management requests. +.It Va dev.ufshci.0.utmrq.ioq.num_retries +(R) Number of retried UTP task-management requests. +.It Va dev.ufshci.0.utmrq.num_intr_handler_calls +(R) Number of interrupt handler calls caused by UTP task-management requests. +.It Va dev.ufshci.0.utmrq.num_cmds +(R) Number of UTP task-management requests issued. +.It Va dev.ufshci.0.utmrq.cq_head +(R) Current location of the UTP task-management completion queue head. +.It Va dev.ufshci.0.utmrq.sq_tail +(R) Current location of the UTP task-management submission queue tail. +.It Va dev.ufshci.0.utmrq.sq_head +(R) Current location of the UTP task-management submission queue head. +.It Va dev.ufshci.0.utmrq.num_trackers +(R) Number of trackers in the UTP task-management queue. +.It Va dev.ufshci.0.utmrq.num_entries +(R) Number of entries in the UTP task-management queue. +.It Va dev.ufshci.0.ioq.0.num_failures +(R) Number of failed UTP transfer requests. +.It Va dev.ufshci.0.ioq.0.num_retries +(R) Number of retried UTP transfer requests. +.It Va dev.ufshci.0.ioq.0.num_intr_handler_calls +(R) Number of interrupt-handler calls caused by UTP transfer requests. +.It Va dev.ufshci.0.ioq.0.num_cmds +(R) Number of UTP transfer requests issued. +.It Va dev.ufshci.0.ioq.0.cq_head +(R) Current location of the UTP transfer completion queue head. +.It Va dev.ufshci.0.ioq.0.sq_tail +(R) Current location of the UTP transfer submission queue tail. +.It Va dev.ufshci.0.ioq.0.sq_head +(R) Current location of the UTP transfer submission queue head. +.It Va dev.ufshci.0.ioq.0.num_trackers +(R) Number of trackers in the UTP transfer queue. +.It Va dev.ufshci.0.ioq.0.num_entries +(R) Number of entries in the UTP transfer queue. +.El +.Sh SEE ALSO +.Xr cam 4 , +.Xr pci 4 , +.Xr disk 9 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was developed by Samsung Electronics and originally written by +.An Jaeyoon Choi Aq Mt j_yoon.choi@samsung.com . +.Pp +This manual page was written by +.An Jaeyoon Choi Aq Mt j_yoon.choi@samsung.com . diff --git a/share/man/man4/uftdi.4 b/share/man/man4/uftdi.4 index 9bd3d4a4a293..b526143eaa25 100644 --- a/share/man/man4/uftdi.4 +++ b/share/man/man4/uftdi.4 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" $NetBSD: uftdi.4,v 1.5 2002/02/07 03:15:08 ross Exp $ .\" .\" Copyright (c) 2000 The NetBSD Foundation, Inc. @@ -27,61 +30,90 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 26, 2017 +.Dd June 25, 2025 .Dt UFTDI 4 .Os .Sh NAME .Nm uftdi -.Nd USB support for serial adapters based on the FTDI family of USB -serial adapter chips. +.Nd Future Technology Devices International USB to serial UART driver .Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent .Cd "device usb" .Cd "device ucom" .Cd "device uftdi" -.Ed .Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -uftdi_load="YES" -.Ed +In +.Xr rc.conf 5 : +.Cd kld_list="uftdi" +.Pp +In +.Xr sysctl.conf 5 : +.Cd hw.usb.uftdi.debug=1 +.Cd hw.usb.uftdi.skip_jtag_interfaces=0 .Sh DESCRIPTION The .Nm -driver provides support for various serial adapters based on the -following FTDI chips: +driver supports FTDI USB to serial UART devices. +If the appropriate hardware is detected, +the driver will be loaded automatically by +.Xr devmatch 8 . +To load the driver manually, add it to the +.Ic kld_list +in +.Xr rc.conf 5 , +or use +.Xr kldload 8 +at runtime. +The device is accessed through the +.Xr ucom 4 +driver which makes it behave like a +.Xr tty 4 . +.Pp +Call out through this interface with applications like +.Xr cu 1 +or +.Xr tip 1 . +.Sh HARDWARE +The +.Nm +driver supports the following USB to serial UART controllers: .Pp .Bl -bullet -compact .It -FT8U100AX +FTDI FT4232H .It -FT8U232AM +FTDI FT232R .It -FT8U232BM +FTDI FT230X .It -FT232R +FTDI FT2232H .It -FT2232C +FTDI FT2232D .It -FT2232D +FTDI FT2232C .It -FT2232H +FTDI FT8U232BM .It -FT4232H +FTDI FT8U232AM .It -FT230X +FTDI FT8U100AX .El -.Pp -The device is accessed through the -.Xr ucom 4 -driver which makes it behave like a -.Xr tty 4 . -.Pp +.Sh SYSCTL VARIABLES +These settings can be entered in the +.Xr loader 8 +prompt, set in +.Xr loader.conf 5 , +.Xr sysctl.conf 5 , +or changed at runtime with +.Xr sysctl 8 : +.Bl -tag -width "hw.usb.uftdi.skip_jtag_interfaces" +.It Va hw.usb.uftdi.debug +Enable debugging messages, default +.Ql 0 +.It Va hw.usb.uftdi.skip_jtag_interfaces +Ignore JTAG interfaces, default +.Ql 1 +.El +.Sh IOCTLS Many of the supported chips provide additional functionality such as bitbang mode and the MPSSE engine for serial bus emulation. The @@ -219,27 +251,6 @@ ioctl, you must pass the special value .Dv UFTDI_CONFIRM_ERASE as the argument to this ioctl. .El -.Sh HARDWARE -The -.Nm -driver supports the following adapters: -.Pp -.Bl -bullet -compact -.It -B&B Electronics USB->RS422/485 adapter -.It -Elexol USB MOD1 and USB MOD3 -.It -HP USB-Serial adapter shipped with some HP laptops -.It -Inland UAS111 -.It -QVS USC-1000 -.It -Buffalo PC-OP-RS / Kurouto-shikou KURO-RS universal remote -.It -Prologix GPIB-USB Controller -.El .Sh FILES .Bl -tag -width "/dev/ttyU*.init" -compact .It Pa /dev/ttyU* @@ -255,14 +266,14 @@ for callout ports corresponding callout initial-state and lock-state devices .El .Sh SEE ALSO +.Xr cu 1 , .Xr tty 4 , .Xr ucom 4 , .Xr usb 4 .Sh HISTORY The .Nm -driver -appeared in +driver appeared in .Fx 4.8 from .Nx 1.5 . diff --git a/share/man/man4/uipaq.4 b/share/man/man4/uipaq.4 index 86f3da36f9dc..b49344956541 100644 --- a/share/man/man4/uipaq.4 +++ b/share/man/man4/uipaq.4 @@ -28,7 +28,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd April 26, 2017 +.Dd April 14, 2025 .Dt UIPAQ 4 .Os .Sh NAME @@ -50,23 +50,6 @@ module at boot time, place the following line in .Bd -literal -offset indent uipaq_load="YES" .Ed -.Sh HARDWARE -The -.Nm -driver supports the following adapters: -.Pp -.Bl -tag -width Ds -offset indent -compact -.It ASUS P535 PDA -.It Casio BE300 PDA -.It Compaq IPaq PocketPC -.It HP Jornada 568 -.It HP iPAQ 22xx/Jornada 548 -.It HTC PPC6700 Modem -.It HTC Smart Phone -.It HTC Winmobile -.It Sharp W-ZERO3 ES Spart Phone -.It Most Windows CE based phones -.El .Sh DESCRIPTION The .Nm @@ -77,6 +60,33 @@ The device is accessed through the .Xr ucom 4 driver which makes it behave like a .Xr tty 4 . +.Sh HARDWARE +The +.Nm +driver supports the following iPAQ devices: +.Pp +.Bl -bullet -compact +.It +ASUS P535 PDA +.It +Casio BE300 PDA +.It +Compaq IPaq PocketPC +.It +HP Jornada 568 +.It +HP iPAQ 22xx/Jornada 548 +.It +HTC PPC6700 Modem +.It +HTC Smart Phone +.It +HTC Winmobile +.It +Sharp W-ZERO3 ES Spart Phone +.It +Most Windows CE based phones +.El .Sh FILES .Bl -tag -width "/dev/ttyU*.init" -compact .It Pa /dev/ttyU* diff --git a/share/man/man4/umb.4 b/share/man/man4/umb.4 new file mode 100644 index 000000000000..7ecc9a39c1ca --- /dev/null +++ b/share/man/man4/umb.4 @@ -0,0 +1,119 @@ +.\"- +.\" SPDX-License-Identifier: 0BSD +.\" +.\" Copyright (c) 2016 genua mbH +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.\" $NetBSD: umb.4,v 1.4 2019/08/30 09:22:17 wiz Exp $ +.\" +.Dd May 11, 2025 +.Dt UMB 4 +.Os +.Sh NAME +.Nm umb +.Nd USB Mobile Broadband Interface Model (MBIM) cellular modem driver +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device usb" +.Cd "device umb" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +umb_load="YES" +.Ed +.Pp +If neither of the above is done, the driver will automatically be loaded +by devd(8) when the device is connected. +.Sh DESCRIPTION +The +.Nm +driver provides support for USB MBIM devices. +.Pp +MBIM devices establish connections via cellular networks such as +GPRS, UMTS, and LTE. +They appear as a regular point-to-point network interface, +transporting raw IP frames. +.Pp +Required configuration parameters like PIN and APN have to be set +with +.Xr umbctl 8 . +Once the SIM card has been unlocked with the correct PIN, it +will remain in this state until the MBIM device is power-cycled. +In case the device is connected to an "always-on" USB port, +it may be possible to connect to a provider without entering the +PIN again even if the system was rebooted. +.Sh HARDWARE +The +.Nm +driver should support any USB device implementing MBIM, including +the following cellular modems: +.Pp +.Bl -bullet -compact +.It +Ericsson H5321gw and N5321gw +.It +Fibocom L831-EAU +.It +Medion Mobile S4222 (MediaTek OEM) +.It +Sierra Wireless EM7345 +.It +Sierra Wireless EM7455 +.It +Sierra Wireless EM8805 +.It +Sierra Wireless MC8305 +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr ifconfig 8 , +.Xr umbctl 8 +.Rs +.%T "Universal Serial Bus Communications Class Subclass Specification for Mobile Broadband Interface Model" +.%U http://www.usb.org/developers/docs/devclass_docs/MBIM10Errata1_073013.zip +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Ox 6.0 , +.Nx 9.0 , +and +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Gerhard Roth Aq Mt gerhard@openbsd.org +and ported from +.Ox +by +.An Pierre Pronchery Aq Mt khorben@defora.org . +.Sh CAVEATS +The +.Nm +driver does not support IPv6. +.Pp +Devices which fail to provide a conforming MBIM implementation will +probably be attached as some other driver, such as +.Xr u3g 4 . diff --git a/share/man/man4/unionfs.4 b/share/man/man4/unionfs.4 new file mode 100644 index 000000000000..85714331b6ce --- /dev/null +++ b/share/man/man4/unionfs.4 @@ -0,0 +1,89 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2020 Gordon Bergling +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd April 27, 2020 +.Dt UNIONFS 4 +.Os +.Sh NAME +.Nm unionfs +.Nd union mount file system +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "option UNIONFS" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +unionfs_load="YES" +.Ed +.Sh DESCRIPTION +The UNIONFS driver is an implementation of a stackable unification filesystem. +.Sh SEE ALSO +.Xr mount_unionfs 8 +.Sh STANDARDS +.Rs +.%T Union mounts in 4.4BSD-Lite +.%A J. S. Pendry +.%A M. K. McKusick +.%R Proceedings of the USENIX Technical Conference on UNIX and Advanced Computing Systems +.%D December 1995 +.Re +.Pp +.Rs +.%T Jails: Confining the omnipotent root +.%A P. H. Kamp +.%A R. N. M. Watson +.%R Proceedings of the Second International System Administration and Networking Conference (SANE2000) +.%D May 2000 +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 5.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +device driver was written by Jan-Simon Pendry for +.Bx 4.4 +and +.An Masanori OZAWA Aq Mt ozawa@ongs.co.jp +reimplemented the handling of the locking for +.Fx 7.0 . +The manual page was written by +.An Gordon Bergling Aq Mt gbe@FreeBSD.org . +.Sh BUGS +Please see the +.Xr mount_unionfs 8 +manual page for a list of bugs regarding the +.Nm +filesystem. diff --git a/share/man/man4/unix.4 b/share/man/man4/unix.4 index 5ac9ccd5514f..2fdfde225b14 100644 --- a/share/man/man4/unix.4 +++ b/share/man/man4/unix.4 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 1, 2022 +.Dd October 31, 2024 .Dt UNIX 4 .Os .Sh NAME @@ -77,6 +77,15 @@ removed when the socket is closed \(em .Xr unlink 2 must be used to remove the file. .Pp +Prior to binding a socket, +.Xr fchmod 2 +can be used to set the permissions of the socket file. +This avoids the race that would otherwise occur between creation of the file +and a subsequent call to +.Xr chmod 2 . +Once the socket is bound to a file name, the permissions of the file can not be +changed this way. +.Pp The length of .Ux Ns -domain address, required by @@ -441,6 +450,7 @@ The order is preserved for writes coming through a particular connection. .Sh SEE ALSO .Xr connect 2 , .Xr dup 2 , +.Xr fchmod 2 , .Xr fcntl 2 , .Xr getsockopt 2 , .Xr listen 2 , diff --git a/share/man/man4/upgt.4 b/share/man/man4/upgt.4 index 805d045e61dd..5d4ada1d1a1f 100644 --- a/share/man/man4/upgt.4 +++ b/share/man/man4/upgt.4 @@ -48,13 +48,13 @@ .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 17, 2008 +.Dd February 18, 2025 .Dt UPGT 4 .Os .Sh NAME .Nm upgt .Nd Conexant/Intersil PrismGT SoftMAC USB IEEE 802.11b/g wireless network -device +driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -74,6 +74,11 @@ module at boot time, place the following line in .Bd -literal -offset indent if_upgt_load="YES" .Ed +.Sh DEPRECATION NOTICE +The +.Nm +driver is slated to be removed in +.Fx 15.0 . .Sh DESCRIPTION The .Nm diff --git a/share/man/man4/ural.4 b/share/man/man4/ural.4 index 141777e14168..53ac1b5dd665 100644 --- a/share/man/man4/ural.4 +++ b/share/man/man4/ural.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: ISC +.\" .\" Copyright (c) 2005, 2006 .\" Damien Bergamini <damien.bergamini@free.fr> .\" @@ -13,12 +16,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd April 13, 2008 +.Dd November 10, 2024 .Dt URAL 4 .Os .Sh NAME .Nm ural -.Nd "Ralink Technology RT2500USB IEEE 802.11 driver" +.Nd Ralink RT2500USB IEEE 802.11a/b/g wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -68,7 +71,7 @@ The driver supports USB 2.0 wireless adapters based on the Ralink Technology RT2500USB chipset, including: .Pp -.Bl -column -compact ".Li Atlantis Land A02-PCM-W54" "Bus" +.Bl -column -compact "Atlantis Land A02-PCM-W54" "Bus" .It Em Card Ta Em Bus .It "AMIT WL532U" Ta USB .It "ASUS WL-167g" Ta USB @@ -103,20 +106,18 @@ An up to date list can be found at .Pa http://ralink.rapla.net/ . .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev ural0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev ural0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev ural0 ssid my_net up" +.Dl ifconfig wlan create wlandev ural0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev ural0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Pp Join a specific BSS network with 128-bit WEP encryption: @@ -140,6 +141,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 @@ -147,7 +149,9 @@ This should not happen. The .Nm driver first appeared in -.Ox 3.7 . +.Ox 3.7 +and +.Fx 6.0 . .Sh AUTHORS The original .Nm @@ -155,5 +159,5 @@ driver was written by .An Damien Bergamini Aq Mt damien.bergamini@free.fr . .Sh BUGS Host AP mode doesn't support client power save. -Clients using power save mode will experience -packet loss (disabling power saving on the client will fix this). +Clients using power save mode will experience packet loss +.Pq disabling power saving on the client will fix this . diff --git a/share/man/man4/ure.4 b/share/man/man4/ure.4 index 18b68ec9bc8a..0d14a20f5f44 100644 --- a/share/man/man4/ure.4 +++ b/share/man/man4/ure.4 @@ -1,3 +1,5 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2015-2016 Kevin Lo <kevlo@FreeBSD.org> .\" All rights reserved. @@ -23,12 +25,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 31, 2016 +.Dd April 8, 2025 .Dt URE 4 .Os .Sh NAME .Nm ure -.Nd "RealTek RTL8152/RTL8153 USB to Ethernet controller driver" +.Nd Realtek RTL8152/RTL8153/RTL8156 USB Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -51,16 +53,12 @@ if_ure_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for USB Ethernet adapters based on the RealTek -RealTek RTL8152 and RTL8153 USB Ethernet controllers. -.Pp -NICs based on the RTL8152 are capable of 10 and 100Mbps speeds. -NICs based on the RTL8153 are capable of 10, 100 and 1000Mbps operation. +driver supports the Realtek USB Ethernet Controller family. .Pp The .Nm driver supports the following media types: -.Bl -tag -width ".Cm 10baseT/UTP" +.Bl -tag -width "10baseT/UTP" .It Cm autoselect Enable auto selection of the media type and options. The user can manually override @@ -86,24 +84,40 @@ or .Cm half-duplex modes. .It Cm 1000baseTX -Set 1000baseTX operation over twisted pair. -The RealTek gigE chips support 1000Mbps in +Set 1000baseTX (Gigabit Ethernet) operation over twisted pair. +The Realtek gigE chips support 1000Mbps in +.Cm full-duplex +mode only. +.It Cm 2500base-T +Set 2500Base-T operation over twisted pair. +The Realtek 8156/8156B chips support 2500Mbps in .Cm full-duplex mode only. .El .Pp The .Nm -driver supports the following media options: -.Bl -tag -width ".Cm full-duplex" +driver supports the following media options for 10/100 operation: +.Bl -tag -width "full-duplex" .It Cm full-duplex -Force full duplex operation. +Force full-duplex operation. .It Cm half-duplex -Force half duplex operation. +Force half-duplex operation. .El .Pp For more information on configuring this device, see .Xr ifconfig 8 . +.Sh HARDWARE +The +.Nm +driver supports the following USB Ethernet controllers: +.Bl -column "Realtek RTL8168/8169/8110/8211 via rgephy(4)" "10, 100, 1000, and 2500" +.It Model: Ta Speed (Mbps): +.It Realtek RTL8156/RTL8156B/RTL8156BG Ta 10, 100, 1000, and 2500 +.It Realtek RTL8153/RTL8153B Ta 10, 100, and 1000 +.It Realtek RTL8152 Ta 10 and 100 +.It Realtek RTL8168/8169/8110/8211 via rgephy(4) Ta 10, 100, and 1000 +.El .Sh DIAGNOSTICS .Bl -diag .It "ure%d: watchdog timeout" diff --git a/share/man/man4/urtw.4 b/share/man/man4/urtw.4 index 7036aaa24df6..7252b8ac8579 100644 --- a/share/man/man4/urtw.4 +++ b/share/man/man4/urtw.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2008 Weongyo Jeong .\" All rights reserved. .\" @@ -22,12 +25,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 17, 2009 +.Dd November 10, 2024 .Dt URTW 4 .Os .Sh NAME .Nm urtw -.Nd Realtek RTL8187B/L USB IEEE 802.11b/g wireless network device +.Nd Realtek RTL8187B/L USB IEEE 802.11b/g wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: @@ -59,6 +62,7 @@ and .Cm monitor mode operation. Only one virtual interface may be configured at any time. +.Pp For more information on configuring this device, see .Xr ifconfig 8 . .Sh HARDWARE @@ -66,35 +70,33 @@ The .Nm driver supports Realtek RTL8187B/L based wireless network devices, including: .Pp -.Bl -column "Shuttle XPC Accessory PN20" "RTL8225" "USB" -compact -offset 6n -.It Em "Card Radio Bus" -.It "Belkin F5D7050E RTL8225 USB" -.It "Linksys WUSB54GCv2 RTL8225 USB" -.It "Netgear WG111v2 RTL8225 USB" -.It "Netgear WG111v3 RTL8225 USB" -.It "Safehome WLG-1500SMA5 RTL8225 USB" -.It "Shuttle XPC Accessory PN20 RTL8225 USB" -.It "Sitecom WL168v1 RTL8225 USB" -.It "Sitecom WL168v4 RTL8225 USB" -.It "SureCom EP-9001-g(2A) RTL8225 USB" -.It "TRENDnet TEW-424UB V3.xR RTL8225 USB" +.Bl -column -offset indent "Shuttle XPC Accessory PN20" "RTL8225" "USB" -compact +.It Em Card Ta Em Radio Ta Em Bus +.It Belkin F5D7050E Ta RTL8225 Ta USB +.It Linksys WUSB54GCv2 Ta RTL8225 Ta USB +.It Netgear WG111v2 Ta RTL8225 Ta USB +.It Netgear WG111v3 Ta RTL8225 Ta USB +.It Safehome WLG-1500SMA5 Ta RTL8225 Ta USB +.It Shuttle XPC Accessory PN20 Ta RTL8225 Ta USB +.It Sitecom WL168v1 Ta RTL8225 Ta USB +.It Sitecom WL168v4 Ta RTL8225 Ta USB +.It SureCom EP-9001-g(2A) Ta RTL8225 Ta USB +.It TRENDnet TEW-424UB V3.xR Ta RTL8225 Ta USB .El .Sh EXAMPLES Join an existing BSS network (i.e., connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev urtw0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed +.Pp +.Dl ifconfig wlan create wlandev urtw0 inet 192.0.2.20/24 .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp -.Dl "ifconfig wlan create wlandev urtw0 ssid my_net up" +.Dl ifconfig wlan create wlandev urtw0 ssid my_net up .Pp Join a specific BSS network with 64-bit WEP encryption: .Bd -literal -offset indent ifconfig wlan create wlandev urtw0 ssid my_net \e - wepmode on wepkey 0x1234567890 weptxkey 1 up + wepmode on wepkey 0x1234567890 weptxkey 1 up .Ed .Sh SEE ALSO .Xr intro 4 , diff --git a/share/man/man4/usbhid.4 b/share/man/man4/usbhid.4 index c47afaff3534..5109bbe72de6 100644 --- a/share/man/man4/usbhid.4 +++ b/share/man/man4/usbhid.4 @@ -55,7 +55,11 @@ tunables: .It Va hw.usb.usbhid.enable Enable .Nm -and make its priority greater than other USB HID drivers have. +and make its priority greater than other USB HID drivers, such as +.Xr ukbd 4 , +.Xr ums 4 , +and +.Xr uhid 4 . Default is 0. .El .Bl -tag -width indent diff --git a/share/man/man4/vale.4 b/share/man/man4/vale.4 index 77e4433d2742..a9f172e11fba 100644 --- a/share/man/man4/vale.4 +++ b/share/man/man4/vale.4 @@ -26,7 +26,7 @@ .\" distributed with 4.3BSD Unix. .\" $Id: $ .\" -.Dd March 6, 2022 +.Dd August 30, 2024 .Dt VALE 4 .Os .Sh NAME @@ -100,7 +100,8 @@ qemu -net nic -net netmap,ifname=vale2:c ... & qemu -net nic -net netmap,ifname=vale2:d ... & .Ed .Sh SEE ALSO -.Xr netmap 4 +.Xr netmap 4 , +.Xr valectl 8 .Pp Luigi Rizzo, Giuseppe Lettieri: VALE, a switched ethernet for virtual machines, June 2012, http://info.iet.unipi.it/~luigi/vale/ diff --git a/share/man/man4/veriexec.4 b/share/man/man4/veriexec.4 new file mode 100644 index 000000000000..14e4aeae0d10 --- /dev/null +++ b/share/man/man4/veriexec.4 @@ -0,0 +1,96 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2024, Juniper Networks, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +.\" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +.\" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +.\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 1, 2024 +.Dt VERIEXEC 4 +.Os +.Sh NAME +.Nm veriexec +.Nd the veriexec device +.Sh SYNOPSIS +.In dev/veriexec/veriexec_ioctl.h +.Sh DESCRIPTION +The +.Nm +device is used by +.Xr veriexec 8 +to query and modify the state of +.Xr mac_veriexec 4 . +.Pp +Once +.Xr mac_veriexec 4 +is active, only a process which is marked as +.Ql trusted +(normally only +.Xr veriexec 8 ) +is able to more than the +.Dv VERIEXEC_GETSTATE +ioctl. +.Sh IOCTLS +The supported ioctls are described below. +.Bl -tag +.It Dv VERIEXEC_SIGNED_LOAD Vt struct verified_exec_params +Pass file information to +.Xr mac_veriexec 4 . +.Bd -literal +struct verified_exec_params { + unsigned char flags; + char fp_type[VERIEXEC_FPTYPELEN]; /* type of fingerprint */ + char file[MAXPATHLEN]; + unsigned char fingerprint[MAXFINGERPRINTLEN]; +}; +.Ed +.It Dv VERIEXEC_LABEL_LOAD Vt struct verified_exec_label_params +Pass file information and a label to +.Xr mac_veriexec 4 . +.Bd -literal +struct verified_exec_label_params { + struct verified_exec_params params; + char label[MAXLABELLEN]; +}; +.Ed +.It Dv VERIEXEC_ACTIVE +.It Dv VERIEXEC_DEBUG_OFF +.It Dv VERIEXEC_DEBUG_ON Vt int level +.It Dv VERIEXEC_ENFORCE +.It Dv VERIEXEC_GETSTATE +.It Dv VERIEXEC_GETVERSION +.It Dv VERIEXEC_LOCK +.It Dv VERIEXEC_VERIFIED_FILE Vt int fd +Rarely needed. +Tells +.Xr mac_veriexec 4 +that the file associated with +.Va fd +is verified. +.El +.Sh HISTORY +A +.Nm +device first appeared in +.Nx . +It was added to +.Fx 13.1 . diff --git a/share/man/man4/virtio_gpu.4 b/share/man/man4/virtio_gpu.4 index bb34ec419df6..f8d48faa05f0 100644 --- a/share/man/man4/virtio_gpu.4 +++ b/share/man/man4/virtio_gpu.4 @@ -46,7 +46,7 @@ device driver provides support for VirtIO gpu devices to create a .Xr vt 4 console. .Sh SEE ALSO -.Xr virtio 4 +.Xr virtio 4 , .Xr vt 4 .Sh HISTORY The diff --git a/share/man/man4/vlan.4 b/share/man/man4/vlan.4 index 775eb3235c07..25405172ed62 100644 --- a/share/man/man4/vlan.4 +++ b/share/man/man4/vlan.4 @@ -130,7 +130,7 @@ in hardware: .Xr cxgbe 4 , .Xr em 4 , .Xr igb 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr jme 4 , .Xr liquidio 4 , .Xr msk 4 , diff --git a/share/man/man4/vmd.4 b/share/man/man4/vmd.4 index 2d6a06bc10e3..590a368f006b 100644 --- a/share/man/man4/vmd.4 +++ b/share/man/man4/vmd.4 @@ -34,7 +34,7 @@ .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: -.Bd -ragged -offset -indent +.Bd -ragged -offset indent .Cd "device vmd" .Ed .Pp diff --git a/share/man/man4/vmm.4 b/share/man/man4/vmm.4 index dfd7ad26fb98..07c40541f404 100644 --- a/share/man/man4/vmm.4 +++ b/share/man/man4/vmm.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 6, 2024 +.Dd December 30, 2024 .Dt VMM 4 .Os .Sh NAME @@ -45,15 +45,22 @@ kldload vmm provides the kernel portion of the .Xr bhyve 4 hypervisor. -.Pp -An Intel CPU with VT-x/EPT or AMD CPU with SVM support is required. +The following platforms are supported: +.Bl -bullet -compat +.It +amd64: An Intel CPU with VT-x/EPT or AMD CPU with SVM support is required. +.It +arm64: The boot CPU must start in EL2 and the system must have a GICv3 interrupt +controller. +VHE support will be used if available. +.It +riscv: The CPUs must implement the H (hypervisor) RISC-V ISA extension. +.El .Pp PCI device passthrough to a virtual machine requires -hardware with VT-d support. +hardware with VT-d support and is available only on amd64. .Sh PCI PASSTHROUGH -When the hardware supports VT-d, and -.Nm -has been loaded at boot time, +On amd64 where the hardware supports VT-d, PCI devices can be reserved for use by the hypervisor. Entries consisting of the PCI .Ar bus Ns / Ns Ar slot Ns / Ns Ar function @@ -108,16 +115,43 @@ bus 6 slot 5 function 0, and bus 6 slot 5 function 1. .Bd -literal -offset indent pptdevs="10/0/0 6/5/0 6/5/1" .Ed +.Pp +It is possible to detach +.Va ppt +from a PCI device without rebooting the host machine and then attach a host +driver, using the +.Xr devctl 8 +utility. +Suppose +.Va ppt +is currently attached to +.Va pci0:0:1:0 +and we want the host's +.Xr xhci 4 +driver to be attached instead: +.Bd -literal -offset indent +# devctl set driver -f pci0:0:1:0 xhci +.Ed +.Pp +The same can be applied to attach +.Va ppt +back: +.Bd -literal -offset indent +# devctl set driver -f pci0:0:1:0 ppt +.Ed .Sh SEE ALSO .Xr bhyve 4 , .Xr loader.conf 5 , .Xr bhyve 8 , .Xr bhyveload 8 , +.Xr devctl 8 , .Xr kldload 8 .Sh HISTORY .Nm vmm.ko first appeared in .Fx 10.0 . +arm64 and riscv support first appeared in +.Fx 15.0 . .Sh AUTHORS .An Neel Natu Aq neel@freebsd.org .An Peter Grehan Aq grehan@freebsd.org diff --git a/share/man/man4/vt.4 b/share/man/man4/vt.4 index ed4da98df673..ad050bdd0d59 100644 --- a/share/man/man4/vt.4 +++ b/share/man/man4/vt.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2014 Warren Block .\" All rights reserved. .\" @@ -22,12 +25,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 8, 2023 +.Dd July 7, 2024 .Dt "VT" 4 .Os .Sh NAME .Nm vt -.Nd virtual terminal console driver +.Nd virtual terminal system video console driver .Sh SYNOPSIS .Cd "options TERMINAL_KERN_ATTR=_attribute_" .Cd "options TERMINAL_NORM_ATTR=_attribute_" @@ -47,11 +50,13 @@ In .Cd kern.vt.color.<colornum>.rgb="<colorspec>" .Cd kern.vt.fb.default_mode="<X>x<Y>" .Cd kern.vt.fb.modes.<connector>="<X>x<Y>" +.Cd kern.vt.slow_down=<delay>" .Cd screen.font="<X>x<Y>" .Pp In .Xr loader.conf 5 or .Xr sysctl.conf 5 : +.Cd kern.consmute=1 .Cd kern.vt.kbd_halt=1 .Cd kern.vt.kbd_poweroff=1 .Cd kern.vt.kbd_reboot=1 @@ -220,6 +225,11 @@ The kernel uses .Nm when this value is not set. +Note that +.Ql sc +is not compatible with +.Xr UEFI 8 +boot. .It Va kern.vt.color. Ns Ar colornum Ns Va .rgb Set this value to override default palette entry for color .Pa colornum @@ -258,6 +268,16 @@ It will contain a list of connectors and their associated tunables. This is currently only supported by the .Cm vt_fb backend when it is paired with a KMS video driver. +.It Va kern.vt.slow_down +When debugging the kernel on modern laptops, the screen is often +the only available console, and relevant information will scroll +out of view before it can be captured by eye or camera. +.Pp +Setting +.Va kern.vt.slow_down +to a non-zero number will make console output synchronous (ie: +not dependent on timers and interrupts) and slow it down in proportion +to the number. .It Va screen.font Set this value to the base name of the desired font file located in .Pa /boot/fonts . @@ -300,11 +320,13 @@ prompt, set in or changed at runtime with .Xr sysctl 8 . .Bl -tag -width indent +.It Va kern.consmute +Disable printing kernel messages to the system console. .It Va kern.vt.enable_bell Enable the terminal bell. .El .Sh FILES -.Bl -tag -width /usr/share/vt/keymaps/* -compact +.Bl -tag -width "/usr/share/vt/keymaps/*.kbd" -compact .It Pa /dev/console .It Pa /dev/consolectl .It Pa /dev/ttyv* @@ -317,13 +339,12 @@ console fonts keyboard layouts .El .Sh DEVCTL MESSAGES -.Bl -column "System" "Subsystem" "1234567" -compact +.Bl -column "System" "Subsystem" "Type" "Description" .Sy "System" Ta Sy "Subsystem" Ta Sy "Type" Ta Sy "Description" .It Li VT Ta BELL Ta RING Ta Notification that the console bell has rung. .El -.Pp -.Bl -column "Variable" "Meaning" -compact +.Bl -column "duration_ms" "Meaning" .Sy "Variable" Ta Sy "Meaning" .It Li duration_ms Ta Length of time the bell was requested to ring in milliseconds. .It Li enabled Ta true or false indicating whether or not the bell was administratively enabled when rung. @@ -349,7 +370,8 @@ To set a 1024x768 mode on all output connectors, put the following line in .Pp .Dl kern.vt.fb.default_mode="1024x768" .Pp -To set a 800x600 only on a laptop builtin screen, use the following line instead: +To set a 800x600 only on a laptop builtin screen, +use the following line instead: .Pp .Dl kern.vt.fb.modes.LVDS-1="800x600" .Pp diff --git a/share/man/man4/vtnet.4 b/share/man/man4/vtnet.4 index e45a47ff6c87..8b99cd9f17b9 100644 --- a/share/man/man4/vtnet.4 +++ b/share/man/man4/vtnet.4 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 22, 2012 +.Dd July 29, 2025 .Dt VTNET 4 .Os .Sh NAME @@ -70,6 +70,11 @@ prompt before booting the kernel or stored in .It Va hw.vtnet. Ns Ar X Ns Va .csum_disable This tunable disables receive and send checksum offload. The default value is 0. +.It Va hw.vtnet.fixup_needs_csum +.It Va hw.vtnet. Ns Ar X Ns Va .fixup_needs_csum +This tunable enforces the calculation of a valid checksum for NEEDS_CSUM +packets. +The default value is 0. .It Va hw.vtnet.tso_disable .It Va hw.vtnet. Ns Ar X Ns Va .tso_disable This tunable disables TSO. @@ -91,6 +96,26 @@ The number of queue pairs used is the lesser of the maximum supported by the driver and the hypervisor, the number of CPUs present in the guest, and this tunable if not zero. The default value is 0. +.It Va hw.vtnet.tso_maxlen +.It Va hw.vtnet. Ns Ar X Ns Va .tso_maxlen +This tunable sets the TSO burst limit. +The default value is 65535. +.It Va hw.vtnet.rx_process_limit +.It Va hw.vtnet. Ns Ar X Ns Va .rx_process_limit +This tunable sets the number of RX segments processed in one pass. +The default value is 1024. +.It Va hw.vtnet.lro_entry_count +.It Va hw.vtnet. Ns Ar X Ns Va .lro_entry_count +This tunable sets the software LRO entry count. +The default value is 128, the minimum value is 8. +.It Va hw.vtnet.lro_mbufq_depth +.It Va hw.vtnet. Ns Ar X Ns Va .lro_mbufq_depth +This tunable sets the depth of the software LRO mbuf queue. +The default value is 0. +.It Va hw.vtnet.altq_disable +This tunable disables ALTQ support, allowing the use of multiqueue instead. +This option applies to all interfaces. +The default value is 0. .El .Sh SEE ALSO .Xr arp 4 , diff --git a/share/man/man4/watchdog.4 b/share/man/man4/watchdog.4 index 2cd66bb8ba85..b74640de8469 100644 --- a/share/man/man4/watchdog.4 +++ b/share/man/man4/watchdog.4 @@ -42,7 +42,7 @@ supports several optional .Xr ioctl 2 calls for configuration, and responds to a single operational -.Xr ioctl +.Xr ioctl 2 call, .Dv WDIOCPATPAT . It takes a single argument which represents a timeout value specified as a @@ -84,7 +84,7 @@ The watchdog might still be armed! .Pp The optional configuration -.Xr ioctl +.Xr ioctl 2 commands are listed here, along with the type of the parameter used. Examples of their use can be found in .Xr watchdogd 8 . @@ -127,7 +127,7 @@ printf(9) .Sh RETURN VALUES The .Dv WDIOCPATPAT -.Xr ioctl +.Xr ioctl 2 returns zero on success and non-zero on failure. .Bl -tag -width Er .It Bq Er EOPNOTSUPP @@ -141,7 +141,7 @@ Invalid flag combination passed. .El .Pp The configuration -.Xr ioctl +.Xr ioctl 2 operations return zero on success and non-zero on failure. .Sh EXAMPLES .Bd -literal -offset indent diff --git a/share/man/man4/wg.4 b/share/man/man4/wg.4 index 2f758c2a8e11..8e2fcfe6b863 100644 --- a/share/man/man4/wg.4 +++ b/share/man/man4/wg.4 @@ -23,14 +23,21 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 12, 2023 +.Dd February 12, 2025 .Dt WG 4 .Os .Sh NAME .Nm wg .Nd "WireGuard protocol driver" .Sh SYNOPSIS -To load the driver as a module at boot time, place the following line in +To compile this driver into the kernel, +place the following lines in your kernel configuration file: +.Bd -ragged -offset indent +.Cd "device wg" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, +place the following line in .Xr loader.conf 5 : .Bd -literal -offset indent if_wg_load="YES" diff --git a/share/man/man4/witness.4 b/share/man/man4/witness.4 index ab23eb49d9fe..f382a9378727 100644 --- a/share/man/man4/witness.4 +++ b/share/man/man4/witness.4 @@ -21,7 +21,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 18, 2015 +.Dd March 5, 2025 .Dt WITNESS 4 .Os .Sh NAME @@ -62,12 +62,12 @@ kernel option controls the maximum number of .Nm entries that are tracked in the kernel. The maximum number of entries can be queried via the -.Va debug.witness.count +.Va debug.witness.witness_count sysctl. It can also be set from the .Xr loader 8 via the -.Va debug.witness.count +.Va debug.witness.witness_count environment variable. .Pp The diff --git a/share/man/man4/wlan.4 b/share/man/man4/wlan.4 index 4cd1bfbdc9d5..ff983c66c1cb 100644 --- a/share/man/man4/wlan.4 +++ b/share/man/man4/wlan.4 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 5, 2023 +.Dd June 13, 2025 .Dt WLAN 4 .Os .Sh NAME @@ -44,7 +44,7 @@ module is required by all native 802.11 drivers. .Nm supports multi-mode devices capable of operating in both 2.4GHz and 5GHz bands and supports numerous -802.11 standards: 802.11a, 802.11b, 802.11g, 802.11n, and 802.11s (Draft 3.0). +802.11 standards: 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, and 802.11s (Draft 3.0). The WPA, 802.11i, and 802.1x security protocols are supported through a combination of in-kernel code and user-mode applications. The WME/WMM multi-media protocols are supported entirely within @@ -174,6 +174,7 @@ Stations implementing earlier drafts (e.g., Linux) may be incompatible. .Xr iwlwifi 4 , .Xr iwm 4 , .Xr iwn 4 , +.Xr iwx 4 , .Xr malo 4 , .Xr mwl 4 , .Xr netintro 4 , @@ -181,6 +182,7 @@ Stations implementing earlier drafts (e.g., Linux) may be incompatible. .Xr ral 4 , .Xr rsu 4 , .Xr rtw88 4 , +.Xr rtw89 4 , .Xr rtwn 4 , .Xr rum 4 , .Xr run 4 , @@ -190,6 +192,7 @@ Stations implementing earlier drafts (e.g., Linux) may be incompatible. .Xr urtw 4 , .Xr wlan_acl 4 , .Xr wlan_ccmp 4 , +.Xr wlan_gcmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , diff --git a/share/man/man4/wlan_ccmp.4 b/share/man/man4/wlan_ccmp.4 index f0efa86d2fdb..ffd4da8694e9 100644 --- a/share/man/man4/wlan_ccmp.4 +++ b/share/man/man4/wlan_ccmp.4 @@ -53,6 +53,7 @@ calculations in hardware, the module will do the work. .Sh SEE ALSO .Xr wlan 4 , +.Xr wlan_gcmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 .Sh STANDARDS diff --git a/share/man/man4/wlan_gcmp.4 b/share/man/man4/wlan_gcmp.4 new file mode 100644 index 000000000000..a7657a9ad91b --- /dev/null +++ b/share/man/man4/wlan_gcmp.4 @@ -0,0 +1,72 @@ +.\" +.\" Copyright (c) 2004 Sam Leffler +.\" All rights reserved. +.\" Copyright (c) 2025 The FreeBSD Foundation +.\" +.\" Portions of this documentation were written by Bj\xc3\xb6rn Zeeb +.\" under sponsorship from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" Based on wlan_ccmp.4. +.\" +.Dd June 13, 2025 +.Dt WLAN_GCMP 4 +.Os +.Sh NAME +.Nm wlan_gcmp +.Nd AES-GCMP crypto support for 802.11 devices +.Sh SYNOPSIS +.Cd "device wlan_gcmp" +.Sh DESCRIPTION +The +.Nm +module handles the +.Em Galois/Counter Mode Protocol +cryptographic requirements of the IEEE 802.11ad and WPA2/WPA3 protocols. +It does encapsulation and decapsulation of GCMP-encoded 802.11 frames +and optionally calculates the AES-GCMP cipher. +The +.Nm +module is an 802.11 cryptographic plugin module for use by the +.Xr wlan 4 +module. +This module is automatically loaded if an AES-GCMP key is configured; +typically by a WPA supplicant program such as wpa_supplicant, +or a WPA authenticator program such as +.Nm hostapd . +Should the underlying network device not be capable of doing the AES-GCMP +calculations in hardware, the +.Nm +module will do the work. +.Sh SEE ALSO +.Xr wlan 4 , +.Xr wlan_ccmp 4 , +.Xr wlan_tkip 4 , +.Xr wlan_wep 4 +.Sh STANDARDS +More information can be found in the IEEE 802.11, and WPA Standards. +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 15.0 . diff --git a/share/man/man4/wlan_tkip.4 b/share/man/man4/wlan_tkip.4 index 2e812ceffe9a..e74c24d45614 100644 --- a/share/man/man4/wlan_tkip.4 +++ b/share/man/man4/wlan_tkip.4 @@ -54,6 +54,7 @@ module will do the work. .Sh SEE ALSO .Xr wlan 4 , .Xr wlan_ccmp 4 , +.Xr wlan_gcmp 4 , .Xr wlan_wep 4 .Sh STANDARDS More information can be found in the IEEE 802.11, WPA, and 802.11i Standards. diff --git a/share/man/man4/wlan_wep.4 b/share/man/man4/wlan_wep.4 index 4e5887bbc35e..d83ef23e7a4e 100644 --- a/share/man/man4/wlan_wep.4 +++ b/share/man/man4/wlan_wep.4 @@ -51,6 +51,7 @@ module will do the work. .Sh SEE ALSO .Xr wlan 4 , .Xr wlan_ccmp 4 , +.Xr wlan_gcmp 4 , .Xr wlan_tkip 4 .Sh STANDARDS More information can be found in the IEEE 802.11 Standard. diff --git a/share/man/man4/wpi.4 b/share/man/man4/wpi.4 index 8fe52cdc58eb..9d8d5fb1bd65 100644 --- a/share/man/man4/wpi.4 +++ b/share/man/man4/wpi.4 @@ -1,3 +1,6 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2004-2007 .\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved. .\" Benjamin Close <Benjamin.Close@clearchain.com>. All rights reserved. @@ -26,12 +29,12 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 31, 2016 +.Dd October 17, 2024 .Dt WPI 4 .Os .Sh NAME .Nm wpi -.Nd "Intel 3945ABG Wireless LAN IEEE 802.11 driver" +.Nd Intel PRO/Wireless 3945ABG IEEE 802.11a/b/g network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -48,16 +51,13 @@ kernel configuration file: Alternatively, to load the driver as a module at boot time, place the following line in .Xr loader.conf 5 : -.Bd -literal -offset indent -if_wpi_load="YES" -.Ed +.Pp +.Dl if_wpi_load="YES" .Sh DESCRIPTION The .Nm -driver provides support for the -.Tn Intel -3945ABG Wireless network adapter. -The driver supports +driver supports running the +Intel PRO/Wireless 3945ABG network adapter in .Cm station , .Cm adhoc , .Cm adhoc-demo , @@ -65,6 +65,11 @@ The driver supports and .Cm monitor mode operation. +This driver requires the wpifw firmware module +and can be configured at runtime with +.Xr ifconfig 8 +or at boot in +.Xr rc.conf 5 . Only one virtual interface may be configured at any time. .Pp The @@ -81,17 +86,13 @@ The .Nm driver offloads both encryption and decryption of data frames to the hardware for the CCMP cipher. -.Pp -This driver requires the firmware built with the -.Nm wpifw 4 -module to work. -.Pp +.Sh HARDWARE The .Nm -driver can be configured at runtime with -.Xr ifconfig 8 . +driver provides support for the +Intel PRO/Wireless 3945ABG Mini PCIe network adapter. .Sh FILES -.Bl -tag -width ".Pa /usr/share/doc/legal/intel_wpi.LICENSE" -compact +.Bl -tag -width "/usr/share/doc/legal/intel_wpi.LICENSE" -compact .It Pa /usr/share/doc/legal/intel_wpi.LICENSE .Nm firmware license @@ -104,7 +105,7 @@ ifconfig wlan0 create wlandev wpi0 inet 192.168.0.20 \e .Ed .Pp Join a specific BSS network with network name -.Dq Li my_net : +.Ar my_net : .Pp .Dl "ifconfig wlan0 create wlandev wpi0 ssid my_net up" .Pp @@ -122,7 +123,7 @@ ifconfig wlan0 create wlandev wpi0 wlanmode adhoc ssid my_net \e .Ed .Pp Join/create an 802.11b IBSS network with network name -.Dq Li my_net : +.Ar my_net : .Bd -literal -offset indent ifconfig wlan0 create wlandev wpi0 wlanmode adhoc ifconfig wlan0 inet 192.168.0.22 netmask 0xffffff00 ssid my_net \e @@ -141,9 +142,7 @@ ifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e The driver failed to load the firmware image using the .Xr firmware 9 subsystem. -Verify the -.Xr wpifw 4 -firmware module is installed. +Verify the wpifw firmware module is installed. .It "wpi%d: %s: timeout waiting for adapter to initialize, error %d" The onboard microcontroller failed to initialize in time. This should not happen. @@ -189,7 +188,7 @@ This should not happen. .Xr wlan_tkip 4 , .Xr wlan_wep 4 , .Xr wlan_xauth 4 , -.Xr wpifw 4 , +.Xr networking 7 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 @@ -207,10 +206,11 @@ ported to .Fx . .Sh CAVEATS -Hostap mode is not directly supported by the device; +.Cm Hostap +mode is not directly supported by the device; it is implemented through IBSS mode (as a result, DFS/passive channels are not available in this mode). .Pp -Powersave may be unstable on some networks (results in -occasional 'wpi%d: device timeout' messages); you can try -to disable it to improve device stability. +Powersave may be unstable on some networks +.Po results in occasional Sy 'wpi%d: device timeout' No messages Pc ; +you can try to disable it to improve device stability. diff --git a/share/man/man4/wsp.4 b/share/man/man4/wsp.4 index 39660a53ee9a..50ada937e104 100644 --- a/share/man/man4/wsp.4 +++ b/share/man/man4/wsp.4 @@ -49,27 +49,150 @@ The driver provides support for the Apple Internal Trackpad device found in many Apple laptops. .Pp -The driver simulates a three-button mouse using multi-finger tap +The driver simulates a three-button mouse using multi-finger press/tap detection. A single-finger press generates a left button click. -A two-finger tap maps to the right button; whereas a three-finger tap -gets treated as a middle button click. +A two-finger press maps to the right button; whereas a three-finger +press gets treated as a middle button click. .Pp +The trackpad functions with presses and taps. +A press is a full-forced +press which causes a physical lowering of the trackpad. +A tap is a +touch of the trackpad which does not depress the physical trackpad. +.Pp +The .Nm -supports dynamic reconfiguration using +driver supports receiving evdev input device data if enabled. +This data +is used for extended usage of the touchpad like multi-finger support, +pressure detection, tap support, and gestures. +At least the second bit of the .Xr sysctl 8 -through nodes under -.Nm hw.usb.wsp . -Pointer sensitivity can be controlled using the sysctl tunable -.Nm hw.usb.wsp.scale_factor . -Tap to left-click can be controlled using the sysctl tunable -.Nm hw.usb.wsp.enable_single_tap_clicks , -set to 0 to disable single tap clicks or 1 to enable them (default). -Z-Axis sensitivity can be controlled using the sysctl tunable -.Nm hw.usb.wsp.z_factor . -Z-Axis inversion can be controlled using the sysctl tunable -.Nm hw.usb.wsp.z_invert , -set to 0 to disable (default) or 1 to enable inversion. +tunable +.Va kern.evdev.rcpt_mask +must be set. +This can be enabled with +.Va kern.evdev.rcpt_mask=3 . +.Pp +Vertical scrolling (z-axis) is enabled by default with a two-finger +tap and the movement of a finger up and down. +Horizontal scrolling (t-axis) is not natively supported by the sysmouse +protocol, therefore must be enabled with evdev data. +This can be enabled with the +.Xr sysctl 8 +tunable +.Va kern.evdev.sysmouse_t_axis=3 . +Horizontal scrolling can be used with a two-finger tap and the movement +of a finger from side to side. +The +.Xr sysctl 8 +tunable +.Va hw.usb.wsp.t_factor +must be greater than 0 for horizontal scrolling to be enabled, too. +.Pp +Horizontal swiping with a three-finger tap is registered as mouse buttons +8 and 9, depending on the direction. +These buttons default to backwards and forwards keyboard events. +.Sh SYSCTL VARIABLES +The following variables are available as +.Xr sysctl 8 +tunables: +.Bl -tag -width indent +.It Va hw.usb.wsp.scale_factor +Controls the pointer sensitivity. +Default is 12. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.enable_single_tap_clicks +Enables single-tap to register as a left-click. +Default is 1 (enabled). +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.enable_single_tap_movement +Enables movement on the trackpad follow a partially-released left-click. +Default is 1 (enabled). +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.max_finger_diameter +Specifies the maximum finger diameter on the trackpad that is registered as a +finger (a lower value is used for palm detection). Default is 1900. +.El +.Bl -tag -width indent +.It Va max_scroll_finger_distance +Specifies the maximum distance between two fingers where z-axis +and t-axis movements are registered. +Z-axis and T-axis movements +are vertical and horizontal movements with more than one finger +tapped (not clicked), respectively. +Default is 8192. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.max_double_tap_distance +Specifies the maximum distance between two fingers that a two-finger +click will be registered as a right-click. +Default is 2500. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.scr_threshold +Specifies the minimum horizontal or vertical distance required to +register as a scrolling gesture. +Default is 20. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.z_factor +Z-axis sensitivity. +Default is 5. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.z_invert +Z-axis inversion. +Default is 0 (disabled). +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.t_factor +T-axis sensitivity. +Default is 0 (disabled). +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.t_invert +T-axis inversion. +Default is 0 (disabled). +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.scroll_finger_count +Specifies the number of tapped fingers which registers as a scrolling +movement. +Default is 2. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.horizontal_swipe_finger_count +Speifies the number of tapped fingers which registers as a swipe +gesture. +Default is 3. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.pressure_touch_threshold +Specifies the threshold for a finger to be registered as a click. +Default is 50. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.pressure_untouch_threshold +Specifies the threshold for a finger to be registered as an unclick. +Default is 10. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.pressure_tap_threshold +Specifies the threadhold for a finger to be registered as a tap. +Default is 120. +.El +.Bl -tag -width indent +.It Va hw.usb.wsp.debug +Specifies the +.Nm +driver debugging level (0-3). +Default is 1. +.El .Sh FILES .Nm creates a blocking pseudo-device file, @@ -80,8 +203,7 @@ or .Em mousesystems type device--see .Xr moused 8 -for an explanation of these mouse -types. +for an explanation of these mouse types. .Sh SEE ALSO .Xr sysmouse 4 , .Xr usb 4 , diff --git a/share/man/man4/xen.4 b/share/man/man4/xen.4 index 15312866dae6..284b09bc87b7 100644 --- a/share/man/man4/xen.4 +++ b/share/man/man4/xen.4 @@ -39,7 +39,6 @@ PVH mode only. .Pp Xen support is built by default in the i386 and amd64 GENERIC kernels; note however that host mode is only available on amd64. -.Ed .Sh DESCRIPTION The Xen Hypervisor allows multiple virtual machines to be run on a single computer system. diff --git a/share/man/man4/zyd.4 b/share/man/man4/zyd.4 index 1c73c0563e05..687adb97ad3d 100644 --- a/share/man/man4/zyd.4 +++ b/share/man/man4/zyd.4 @@ -31,12 +31,12 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 7, 2013 +.Dd November 10, 2024 .Dt ZYD 4 .Os .Sh NAME .Nm zyd -.Nd ZyDAS ZD1211/ZD1211B USB IEEE 802.11b/g wireless network device +.Nd ZyDAS ZD1211/ZD1211B USB IEEE 802.11b/g wireless network driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -77,51 +77,95 @@ The following devices are known to be supported by the .Nm driver: .Pp -.Bl -tag -width Ds -offset indent -compact -.It 3COM 3CRUSB10075 -.It Acer WLAN-G-US1 -.It Airlink+ AWLL3025 -.It Airlink 101 AWLL3026 -.It AOpen 802.11g WL54 -.It Asus A9T integrated wireless -.It Asus WL-159g -.It Belkin F5D7050 v.4000 -.It Billion BiPAC 3011G -.It Buffalo WLI-U2-KG54L -.It CC&C WL-2203B -.It DrayTek Vigor 550 -.It Edimax EW-7317UG -.It Edimax EW-7317LDG -.It Fiberline Networks WL-43OU -.It iNexQ UR055g -.It Linksys WUSBF54G -.It Longshine LCS-8131G3 -.It MSI US54SE -.It MyTek MWU-201 USB adapter -.It Philips SNU5600 -.It Planet WL-U356 -.It Planex GW-US54GZ -.It Planex GW-US54GZL -.It Planex GW-US54Mini -.It Safecom SWMULZ-5400 -.It Sagem XG 760A -.It Sagem XG 76NA -.It Sandberg Wireless G54 USB -.It Sitecom WL-113 -.It SMC SMCWUSB-G -.It Sweex wireless USB 54 Mbps -.It Tekram/Siemens USB adapter -.It Telegent TG54USB -.It Trendnet TEW-424UB rev A -.It Trendnet TEW-429UB -.It TwinMOS G240 -.It Unicorn WL-54G -.It US Robotics 5423 -.It X-Micro XWL-11GUZX -.It Yakumo QuickWLAN USB -.It Zonet ZEW2501 -.It ZyXEL ZyAIR G-202 -.It ZyXEL ZyAIR G-220 +.Bl -bullet -offset indent -compact +.It +3COM 3CRUSB10075 +.It +Acer WLAN-G-US1 +.It +Airlink+ AWLL3025 +.It +Airlink 101 AWLL3026 +.It +AOpen 802.11g WL54 +.It +Asus A9T integrated wireless +.It +Asus WL-159g +.It +Belkin F5D7050 v.4000 +.It +Billion BiPAC 3011G +.It +Buffalo WLI-U2-KG54L +.It +CC&C WL-2203B +.It +DrayTek Vigor 550 +.It +Edimax EW-7317UG +.It +Edimax EW-7317LDG +.It +Fiberline Networks WL-43OU +.It +iNexQ UR055g +.It +Linksys WUSBF54G +.It +Longshine LCS-8131G3 +.It +MSI US54SE +.It +MyTek MWU-201 USB adapter +.It +Philips SNU5600 +.It +Planet WL-U356 +.It +Planex GW-US54GZ +.It +Planex GW-US54GZL +.It +Planex GW-US54Mini +.It +Safecom SWMULZ-5400 +.It +Sagem XG 760A +.It +Sagem XG 76NA +.It +Sandberg Wireless G54 USB +.It +Sitecom WL-113 +.It +SMC SMCWUSB-G +.It +Sweex wireless USB 54 Mbps +.It +Tekram/Siemens USB adapter +.It +Telegent TG54USB +.It +Trendnet TEW-424UB rev A +.It +Trendnet TEW-429UB +.It +TwinMOS G240 +.It +Unicorn WL-54G +.It +US Robotics 5423 +.It +X-Micro XWL-11GUZX +.It +Yakumo QuickWLAN USB +.It +Zonet ZEW2501 +.It +ZyXEL ZyAIR G-202 +.It +ZyXEL ZyAIR G-220 .El .Sh EXAMPLES The following @@ -131,14 +175,14 @@ channel 11: .Bd -literal -offset indent ifconfig wlan create wlandev zyd0 channel 11 \e wepmode on wepkey 0x1deadbeef1 weptxkey 1 \e - inet 192.168.1.1 netmask 255.255.255.0 + inet 192.0.2.20/24 .Ed .Pp Join an existing BSS network, -.Dq my_net : +.Ar my_net : .Bd -literal -offset indent -ifconfig wlan create wlandev zyd0 192.168.0.2 \e - netmask 0xffffff00 ssid my_net +ifconfig wlan create wlandev zyd0 192.0.2.20/24 \e + ssid my_net .Ed .Sh DIAGNOSTICS .Bl -diag @@ -167,6 +211,7 @@ This should not happen. .Xr wlan_ccmp 4 , .Xr wlan_tkip 4 , .Xr wlan_wep 4 , +.Xr networking 7 , .Xr ifconfig 8 , .Xr wpa_supplicant 8 .Sh AUTHORS |