Commit graph

144541 commits

Author SHA1 Message Date
Gordon Bergling
4e50737fa8 sound(4): Fix a typo in a source code comment
- s/availavle/available/

MFC after:	3 days
2022-09-04 11:23:34 +02:00
Bjoern A. Zeeb
a486fbbd78 LinuxKPI: 80211: scanning code updates
For consistency rename LKPI_SCAN_RUNNING adding a LHW_ prefix.
Add a local flag LKPI_LHW_SCAN_HW mirroring the net80211
IEEE80211_FEXT_SCAN_OFFLOAD flag.
Slightly simplify the code.
Overload (*ic_scan_curchan) and (*ic_scan_mindwell) so that we can
call the net80211 implementation in case of software scan but skip it
in case of full-offload scans.
Also add a bandaid to our (*ic_set_channel) implementation to not siwtch
channels if we have an active hw_scan running.

Obtained from:	bz/wireless-dev
Sponsored by:	The FreeBSD Foundation (partially)
MFC after:	4 days
2022-09-03 23:40:51 +00:00
Bjoern A. Zeeb
527687a9e3 LinuxKPI: 80211: implement (*get_antenna) and set ic_[rt]xstream
Implement the mac80211 (*get_antenna) call and after checking any
antenna information present query the current configuration on startup
(both informations should be identical at this point in theory).
Both the wiphy variables and function call report a bitmask not a count.
Count the bits for net80211 for as long as we get away with just a
number in ic_[rt]xstream.

Sponsored by:	The FreeBSD Foundation
MFC after:	4 days
2022-09-03 23:11:05 +00:00
Bjoern A. Zeeb
b35f6cd066 LinuxKPI: 80211: make HW_CRYPTO compileable again
Rename TRY_HW_CRYPTO to LKPI_80211_HW_CRYPTO for consitency and make
it compileable again in case someone wants to sit down and make it
work.  It's probably not too much to do.  Otherwise I might eventually
get around to it.

Obtained from:	bz/wireless-dev
Sponsored by:	The FreeBSD Foundation
MFC after:	4 days
2022-09-03 22:51:16 +00:00
Bjoern A. Zeeb
570773d68c mgb: quiten -Wunused-function with LINT builds
As the function itself seems to be helpful don't remove the code but
change the #ifdef DEBUG to #if 0 to avoid:
  warning: unused function 'mgb_dump_some_stats' [-Wunused-function]
with LINT builds.
2022-09-03 22:47:19 +00:00
Bjoern A. Zeeb
fb47649ebc net80211: update (parts of) frame types and subtypes and annotate
Update to the full list of frame type and subtype values based on
802.11-2020 with 11ax and 11ay extensions. This includes the 4th type
"Extension" (IEEE80211_FC0_TYPE_EXT).
While here annotate them with descriptions which should help matching
names (as at times things get confusing with LinuxKPI).
Also remove some 802.11-1997 values Reserved nowadays.

No functional changes.

Sponsored by:	The FreeBSD Foundation
MFC after:	5 days
Reviewed by:	adrian
Differential Revision: https://reviews.freebsd.org/D36410
2022-09-03 21:18:40 +00:00
Kirk McKusick
82ee4e1c42 Updates to UFS/FFS superblock integrity checks when reading a superblock.
Yet more updates based on ways Peter Holm found to corrupt UFS
superblocks in ways that could cause kernel hangs or crashes.

No legitimate superblocks should fail as a result of these changes.

Reported by:  Peter Holm
Tested by:    Peter Holm
Sponsored by: The FreeBSD Foundation
2022-09-03 14:11:38 -07:00
Bjoern A. Zeeb
c9b7e9df18 net80211 / drivers: rename to IEEE80211_FC0_SUBTYPE_QOS_DATA
Going through the Frame (Sub)types the "QOS Data" being called "QOS"
scheme leads to a naming conflict for QOS_CFPOLL and QOS_CFACKPOLL
(if added).   Rename QOS* to QOS_DATA* to avoid the conflict and
to also better match the standards name.

No functional changes intended.

Sponsored by:	The FreeBSD Foundation
MFC after:	5 days
Reviewed by:	hselasky
Differential Revision: https://reviews.freebsd.org/D36409
2022-09-03 21:04:13 +00:00
Bjoern A. Zeeb
8def06d5af net80211: simplify an #ifdef INET/INET6 block
I got lost in the #ifdef #endif here so I changed the code to a
switch block with two non-overlapping #ifdef parts and a default
which makes it a lot easier to read.

No functional changes.

Sponsored by:	The FreeBSD Foundation
Reviewed by:	(zlei.huang gmail.com)
MFC after:	5 days
Differential Revision: https://reviews.freebsd.org/D36411
2022-09-03 20:59:30 +00:00
Gordon Bergling
e1a40dd294 mlx5en(4): Correct a typo in a kernel error message
- s/ouput/output

MFC after:	5 days
2022-09-03 19:29:33 +02:00
Gordon Bergling
fd2235ffdc netpfil: Fix a typo in a source code comment
- s/intergers/integers/

While here, fix some whitespace issues.

MFC after:	3 days
2022-09-03 19:18:54 +02:00
Gordon Bergling
b0e86eed27 ltc430x(4): Fix a typo in a source code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:43:05 +02:00
Gordon Bergling
ddf38e0204 bce(4): Fix a typo in a source code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:39:51 +02:00
Gordon Bergling
de47bf0d52 bge(4): Fix a typo in a source code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:38:26 +02:00
Gordon Bergling
f93ef3ff06 bxe(4): Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:36:00 +02:00
Gordon Bergling
b55a0762fc malo(4): Fix a typo in asource code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:34:27 +02:00
Gordon Bergling
cc280cac34 sdhci(4): Fix a typo in asource code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:31:59 +02:00
Gordon Bergling
ac34f366cc sound(4): Fix a typo in asource code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:30:39 +02:00
Gordon Bergling
6b49770088 pci(4): Fix a typo in asource code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:28:05 +02:00
Gordon Bergling
2b7d656f17 kern: Fix a typo in asource code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:26:55 +02:00
Gordon Bergling
f9a9fe46dc ath(4): Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:24:48 +02:00
Gordon Bergling
d0ddb5aaca usb: Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:22:42 +02:00
Gordon Bergling
fa52f9dc9a tcp_rack: Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:05:42 +02:00
Gordon Bergling
028ecc7aa1 netisr(9): Fix a typo in a source code comment
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 15:04:15 +02:00
Gordon Bergling
310d144a83 isp(4): Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 14:54:14 +02:00
Gordon Bergling
05e1ac3cbf impi(4): Fix two typos in source code comments
- s/overriden/overridden/

MFC after:	3 days
2022-09-03 14:52:44 +02:00
John Baldwin
e120d3b2d4 qat: Move CWARNFLAGS down so it works.
CWARNFLAGS must be added to after including kern.mk, otherwise all the
warnings set in kern.mk are ignored.  This is why the
-Wmissing-prototypes warnings were not seen previously.

While here, drop -Wno-pointer-sign as it is doesn't seem to be needed,
but add -Wno-cast-qual to silence warnings for various casts of const
pointers to non-const pointers.

Reviewed by:	MichalX.Gulbicki_intel.com, markj
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D36332
2022-09-02 14:52:55 -07:00
John Baldwin
1c4c92f91b qat: Add #includes for missing prototypes.
This fixes numerous -Wmissing-prototypes warnings when that warning
is enabled.

Reviewed by:	MichalX.Gulbicki_intel.com, markj
Sponsored by:	DARPA
Obtained from:	CheriBSD
Differential Revision:	https://reviews.freebsd.org/D36331
2022-09-02 14:51:54 -07:00
John Baldwin
50f1a377da qat: Add a prototype for icp_adf_is_dev_in_error.
Reviewed by:	MichalX.Gulbicki_intel.com, markj
Sponsored by:	DARPA
Obtained from:	CheriBSD
Differential Revision:	https://reviews.freebsd.org/D36330
2022-09-02 14:51:39 -07:00
John Baldwin
e3b17b5042 qat: Drop extraneous parentheses from some macro values.
This header duplicates a few #defines in "adf_cfg_strings.h".  The
latter header does not use the unneeded parentheses, but if a C file
includes both of these headers, clang raises an error because the macro
is redefined with a different value.

Reviewed by:	markj
Sponsored by:	DARPA
Obtained from:	CheriBSD
Differential Revision:	https://reviews.freebsd.org/D36329
2022-09-02 14:49:40 -07:00
Gleb Smirnoff
74ed2e8ab2 raw ip: fix regression with multicast and RSVP
With 61f7427f02 raw sockets protosw has wildcard pr_protocol.  Protocol
of a specific pcb is stored in inp_ip_p.

Reviewed by:		karels
Reported by:		karels
Differential revision:	https://reviews.freebsd.org/D36429
Fixes:			61f7427f02
2022-09-02 12:17:09 -07:00
Tijl Coosemans
cfdc649e45 i386 doreti: Fix calculation of stack frame size
Reviewed by:	kib
Fixes:		e8b2980e4a - i386 doreti: stop saving/restoring %ecx
2022-09-02 16:41:52 +02:00
Kornel Dulęba
e23ad9c4ba tpm: Fix entropy harvesting logic
Use a taskqueue instead of a callout.
Callout functions mustn't sleep, where as the TPM driver
uses a sx lock in order to serialize accesses to the device.
Since the entropy harvesting feature is not enabled by default,
this commit should not bring any functional changes to the GENERIC
kernel.

Approved by:	mw(mentor)
Sponsored by:	Stormshield
Obtained from:	Semihalf
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D36412
2022-09-02 13:09:41 +02:00
Mathew McBride
2486b446db ds1307: add support for the EPSON RX-8035SA I2C RTC
The EPSON RX-8035SA I2C RTC has a similar time register layout to the
ds1307 family, with some minor differences in bit positions, polarity
and control registers.  Further generalize ds1307 to make it easier
to add more compatible chips and add support for the EPSON RX-8035SA.

MFC after:	6 days
Sponsored by:	Traverse Technologies
Differential Revision: https://reviews.freebsd.org/D35837
2022-09-02 00:51:42 +00:00
Warner Losh
281a6ff273 acpi: Fix error message
Fix a formatting error from 195f794318

Fixes:		195f794318
Sponsored by:	Netflix
2022-09-01 11:35:45 -06:00
Alexander Motin
4e679d8aea hwpmc: Avoid touching MSR_DEBUGCTLMSR inside VMs.
At least KVM in Proxmox seems not happy about it.  Just to be safe
block it for all VMs, since it should just improve profile accuracy.

MFC after:	1 week
2022-09-01 13:23:11 -04:00
Warner Losh
991aef9795 acpi: Move some errors with RSDP and XSLT out from under bootverbose
Failure to map RSDP, XSLT and checksum failures are events that can't
happen unless something has gone wrong. As such, they should be reported
always, and not in bootverbose. This has been this way since it was
originally brought in to parse APIC tables.

Sponsored by:		Netflix
Reviewed by:		andrew
Differential Revision:	https://reviews.freebsd.org/D36406
2022-09-01 10:40:15 -06:00
Warner Losh
a14b26a6bd acpi: Unmap RSDP in more error cases
Add missing pmap_unmapbios() calls for when we return 0. Otherwise we
can leave the table mapped when it is of no use.

Sponsored by:		Netflix
Reviewed by:		andrew
Differential Revision:	https://reviews.freebsd.org/D36405
2022-09-01 10:39:20 -06:00
Warner Losh
195f794318 acpi: arm64 doesn't support ACPI 1.0 RSDP, report when we see one
arm64 requires ACPI RSDP Revision 2.0 since it requires 64-bit physical
addresses. It is an error worth reporting if we have a RSDP pointer, but
it points to the wrong version.

Sponsored by:		Netflix
Reviewed by:		andrew
Differential Revision:	https://reviews.freebsd.org/D36404
2022-09-01 10:38:53 -06:00
Tijl Coosemans
fdc1894795 linuxkpi: on i386 only use first_msi_irq if apic is in kernel config 2022-09-01 14:08:15 +02:00
Tijl Coosemans
598b6d4a7c i386 machine/cpu.h: include sys/systm.h for cpu_ticks()
Fixes build of graphics/drm-510-kmod on i386.
2022-09-01 13:54:00 +02:00
Søren Schmidt
90098ee30e Fix reading the correct ID and REV.
Reviewed by:	manu
2022-09-01 07:36:37 +00:00
Ganbold Tsagaankhuu
53b80f4d41 Add support for TCS4525 pmic.
Reviewed by:	manu
Differential Revision:	https://reviews.freebsd.org/D36209
2022-09-01 07:31:08 +00:00
Ganbold Tsagaankhuu
48551d3240 Fix problem getting gpio version during attach.
Both RK3328 and RK3399 don't have GPIO_VER_ID register.
Set gpio version depending on compat string of the parent.
2022-09-01 07:21:56 +00:00
Bjoern A. Zeeb
26a3694833 iwlwifi: move an ieee80211_get_tid() call
Introduce a local change.  It seems ieee80211_get_tid() does not deal
with non-dataqos packets unlike net80211's ieee80211_gettid().
Gernally all calls in Linux drivers to ieee80211_get_tid() seem to
be proceeded by an ieee80211_is_data_qos() check.

Moving the ieee80211_get_tid() has no difference in the result, but
(a) saves us the call if we do not need it due to an earlier return,
and (b) allows us to put an assert into the LinuxKPI ieee80211_get_tid()
implementation to avoid accidentally returning random frame header data
in case of a missing earlier ieee80211_is_data_qos() check in (future/
other) drivers.

Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
2022-08-31 23:01:36 +00:00
Richard Scheffenegger
4012ef7754 tcp: Functional implementation of Accurate ECN
The AccECN handshake and TCP header flags are supported,
no support yet for the AccECN option. This minimalistic
implementation is sufficient to support DCTCP while
dramatically cutting the number of ACKs, and provide ECN
response from the receiver to the CC modules.

Reviewed By:		#transport, #manpages, rrs, pauamma
Sponsored by:		NetApp, Inc.
Differential Revision:	https://reviews.freebsd.org/D21011
2022-08-31 15:05:53 +02:00
Richard Scheffenegger
c21b7b55be tcp: finish SACK loss recovery on sudden lack of SACK blocks
While a receiver should continue sending SACK blocks for the
duration of a SACK loss recovery, if for some reason the
TCP options no longer contain these SACK blocks, but we
already started maintaining the Scoreboard, keep on handling
incoming ACKs (without SACK) as belonging to the SACK recovery.

Reported by:		thj
Reviewed by:		tuexen, #transport
MFC after:		2 weeks
Sponsored by:		NetApp, Inc.
Differential Revision:	https://reviews.freebsd.org/D36046
2022-08-31 14:49:47 +02:00
Andrew Turner
544f047f89 Store mpidr as a 64-bit value on arm64
The mpidr register is 64 bit on arm64 and 32 bit on arm. Fix this by
extending the arm64 definition to include the top 32 bits.

To preserve KBI when MFCing split the value into two 32 bit values.
This will be cleaned up later only on main.

Reviewed by:	bz
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D36346
2022-08-31 11:48:31 +01:00
Emmanuel Vadot
0a9a4d2cd6 arm64: Fix hwpmc module for OPT_ACPI isn't selected
Fixes: 59191f3573 ("Add support of ARM CMN-600 controller ...")
Sponsored by:	Beckhoff Automation GmbH & Co. KG
2022-08-31 09:25:39 +02:00
Gleb Smirnoff
24af7808fa protosw: repair protocol selection logic in socket(2)
Pointy hat to:	glebius
Fixes:		61f7427f02
2022-08-30 21:19:46 -07:00