rtwn: remove unused rate configuration code for management traffic.
After discussion with the rtlwifi maintainers, it looks like this
path isn't even used.
(And it's part of the firmware rate control path which we currently
don't enable for other reasons.)
Differential Revision: https://reviews.freebsd.org/D47938
rtwn: add VHT awareness to rtwn_chan2centieee()
Since we're not doing 80+80 yet, this is easy - just use
the freq1 centre.
Differential Revision: https://reviews.freebsd.org/D47900
rtwn: program the 1 and 2 stream VHT transmit power rates
This is needed to be able to successfully transmit VHT frames.
Locally tested:
* RTL8821AU, STA mode (with the rest of VHT work to actually test VHT)
Differential Revision: https://reviews.freebsd.org/D47899
rtwn: calculate the transmit power for VHT rates
The VHT rate power array wasn't populated, and it needs to be in order
to use VHT rates.
The vendor driver reuses the HT40 values for VHT rates.
Differential Revision: https://reviews.freebsd.org/D47898
rtwn: refactor out the rtl8812/rtl8821 tx power programming
In preparation for the VHT TX power programming, refactor out the
CCK, OFDM and HT programming into their own routines.
Locally tested:
* RTL8821AU, STA mode
rtwn: expand the ridx numbers to include VHT; add accessor macros
* expand the ridx field all the way through 4x4 11n (MCS0..MCS31)
* and then expand it through VHT 4x4 (MCS0..9 for each stream)
* add accessor macros to check if the rate is HT, VHT
* use accessor macros to check if the rate is HT rather than
comparing it against OFDM54 or RIDX_HT_MCS(0); the values
aobve HT MCS will be VHT, and we don't want to trigger on those!
* add a couple of appropriate TODO VHT bits in the TX path
Locally tested:
* RTL8192CU, STA mode
* RTL8188EU, STA mode
* RTL8821AU, STA mode
* RTL8192EU, STA mode
Differential Revision: https://reviews.freebsd.org/D47896
amdiommu: correctly initialize iommu.unit
The field is mostly used for display, and should match device unit, not
BIOS IVHD device id, which is deprecated and is practically zero.
Sponsored by: Advanced Micro Devices (AMD)
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
rtwn: add missing iv_ampdu_limit
This explicitly sets it rather than defaulting to the RX value.
Differential Revision: https://reviews.freebsd.org/D47895
rtwn: add placeholder for the per-MACID rate report
Some chipsets (such as the RTL8188E) have firmware which supports
a second kind of TX report - instead of a per-packet TX report,
it can generate a per-MACID summary of packet success/failure counters.
This would be helpful for those chips to cut back on the USB traffic
to get rate control feedback for the driver based rate control we're
currently using.
This is a no-op; it just gets the pieces in place for future work.
Differential Revision: https://reviews.freebsd.org/D47894
rtwn: enable HT40 for RTL8821/RTL8812 series NICs
HT40 works fine in 2GHz and 5GHz modes in both 1 and 2 stream
scenarios, so just enable it here.
Differential Revision: https://reviews.freebsd.org/D47874
rtwn: use ieee80211_ht_check_tx_ht40() to transmit HT40 frames
Using ieee80211_ht_check_tx_ht40() means that not only the
bss and node channel are checked, but the ni_chw value is also
now correctly checked.
Differential Revision: https://reviews.freebsd.org/D47862
ACPI: Treat all 20-element _BIX entires as revision 0
Some Fujitsu Lifebooks return an invalid _BIX object. The first element
of _BIX is a revision number, which indicates what elements will follow:
* ACPI 4.0 defined _BIX revision 0 with 20 elements.
* ACPI 6.0 introduced _BIX revision 1 with 21 elements.
The problem is that the offending Lifebooks have the a non-zero _BIX
revision, but provide 20 fields only.
The ACPICA parser chokes on this [1], but that seems to be
inconsequential. More importantly, our own battery info handling code
also verifies that for revision > 0, there are at least 21 fields - and
refuses to process the invalid _BIX. One workaround would be to
introduce special case / quirk handling for Fujitsu Lifebooks. A better
one is to relax the requirements check: If there are only 20 elements,
treat the _BIX as revision 0, no matter what revision number was
provided by the device.
Linux doesn't run into this problem by the way because it only supports
[12 lines not shown]
ACPI: Treat all 20-element _BIX entires as revision 0
Some Fujitsu Lifebooks return an invalid _BIX object. The first element
of _BIX is a revision number, which indicates what elements will follow:
* ACPI 4.0 defined _BIX revision 0 with 20 elements.
* ACPI 6.0 introduced _BIX revision 1 with 21 elements.
The problem is that the offending Lifebooks have the a non-zero _BIX
revision, but provide 20 fields only.
The ACPICA parser chokes on this [1], but that seems to be
inconsequential. More importantly, our own battery info handling code
also verifies that for revision > 0, there are at least 21 fields - and
refuses to process the invalid _BIX. One workaround would be to
introduce special case / quirk handling for Fujitsu Lifebooks. A better
one is to relax the requirements check: If there are only 20 elements,
treat the _BIX as revision 0, no matter what revision number was
provided by the device.
Linux doesn't run into this problem by the way because it only supports
[12 lines not shown]
cd9660: Apply the file and directory mode masks bits to all 12 access bits
This permits the mask bits to control the upper 3 bits used for setuid,
setgid, and sticky permissions. While here, clarify the manpage language
as non-Rockridge volumes with extended attributes can also supply users
and groups along with permissions.
Reviewed by: olce
Fixes: 82f2275b73e5 cd9660: Add support for mask,dirmask,uid,gid options
Differential Revision: https://reviews.freebsd.org/D47357
Remove SOC FPGA drivers
The drivers have been disconnected from the build since the removal of
the SOCFPGA kernel configs.
Reviewed by: manu, imp, andrew
Sponsored by: AFRL, DARPA
Differential Revision: https://reviews.freebsd.org/D47885
arm64: Add a constant to document the TZ bit in CPTR_EL2 without VHE
Reviewed by: emaste
Sponsored by: AFRL, DARPA
Differential Revision: https://reviews.freebsd.org/D47882
rtld: Support multiple PT_GNU_RELRO program headers
Iterate over all the program headers in obj_remap_relro and remove the
relro fields from Obj_Entry.
Skip the call to obj_enforce_relro() in relocate_object() for the rtld
object as well as the main program object. obj_enforce_relro() is
called later when it safe to reference globals such as page_size.
Reviewed by: kib
Obtained from: CheriBSD
Sponsored by: AFRL, DARPA
Differential Revision: https://reviews.freebsd.org/D47884
bus_delayed_attach_children: Switch return type to void
This function never fails similar to bus_attach_children.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47677
cdefs: Add __deprecated1 which accepts a message as an argument
This message will be included in any warning issued by the compiler
for use of the deprecated function.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47701
new-bus: Add bus_(identify|attach|detach)_children
These correspond to the current implementations of
bus_generic_(probe|attach|detach) but with more accurate names and
semantics. The intention is to deprecate bus_generic_(probe|attach)
and reimplement bus_generic_detach in a future commit.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47673
prison_proc_iterate(): make it work for prison0
Do not exclude processes owned by host/prison0 if there are jails
configured.
PR: 283163
Reviewed by: jamie, markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D47943
cxgbe/t4_tom: Change stid allocation strategy to be more IPv6 friendly.
A hardware IPv6 server needs 2 consecutive stids (server tids) starting
from a 2-aligned stid whereas an IPv4 server needs only 1 stid without
any constraint. The allocator used to grab the first free stid(s) for
both but this can fragment the stid space leaving nothing suitable for
IPv6 even when lots of stids are available. Change the allocator to
prefer stids for IPv4 from the ones that cannot be used for IPv6.
Reviewed by: jhb
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D47042
(cherry picked from commit f48fb131c2523d4915d1ad4eba002251c64f5574)
intr/x86: cleanup io_apic device method tables
Replace the { 0, 0 } construct with the preferred DEVMETHOD_END. Add
a space after to indicate it is separate from the section above.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1457
find: Re-enable the -acl primary on FreeBSD
This was made conditional to support cross-builds, but the relevant
header wasn't included so it was never enabled for native builds.
PR: 278124
Fixes: c3a6ea5ba6b5 Allow compiling usr.bin/find on Linux and Mac