opnsense-src/sys/compat/linuxkpi/common/include/linux
Bjoern A. Zeeb 19a405d238 LinuxKPI: 802.11: bring in some HT code
Fix defines and structures to use proper types.

Bring in basic ni->sta synchronization, some channel width handling,
and overload the net80211 functions so that we can talk to
driver/firmware to setup parameters.  We will likely not need one
or two of those but it is good for tracing currently.

Cover HT and bits of VHT code in LinuxKPI behind apropriate #ifdef
which are currently not enabled (like LKPI_80211_HW_CRYPTO) until
confirmed to work.
Last, IEEE80211_AMPDU_RX_START made some firmware unhappy.

This will allow others to work on it and test as well.

Sponsored by:	The FreeBSD Foundation

(cherry picked from commit 9fb914634eff85b3b36bcbf39c1faf2967b0aa9e)
2024-02-18 18:31:13 +00:00
..
sched linuxkpi: Add memalloc_noreclaim_save() and memalloc_noreclaim_restore() 2023-01-16 19:27:16 +01:00
soc mt76: update driver from upstream 2023-08-21 01:34:03 +00:00
acpi.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
agp_backend.h linuxkpi: Add linux/agp_backend.h 2023-04-04 11:49:48 +02:00
anon_inodes.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
apple-gmux.h LinuxKPI: Add linux/apple-gmux.h 2024-02-17 23:58:39 +03:00
atomic.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
average.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
backlight.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bcd.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bitfield.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bitmap.h LinuxKPI: Constify src parameter of bitmap_copy 2024-02-17 23:58:39 +03:00
bitops.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bottom_half.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bsearch.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
build_bug.h LinuxKPI: Add static_assert() macro 2024-02-17 23:58:36 +03:00
cache.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
capability.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
cc_platform.h linuxkpi: Include <linux/types.h> from <linux/cc_platform.h> 2024-02-17 23:58:35 +03:00
cdev.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
circ_buf.h linuxkpi: Add circ_buf.h 2022-06-29 09:54:45 +02:00
clocksource.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
compat.h LinuxKPI: Allow kmalloc to be called when FPU protection is enabled 2024-02-17 23:58:39 +03:00
compiler.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
completion.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
console.h linuxkpi: Add console.h 2022-06-29 09:54:49 +02:00
container_of.h LinuxKPI: Split linux/container_of.h off from linux/kernel.h 2024-02-17 23:58:36 +03:00
cpu.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
crc32.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dcache.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
debugfs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
delay.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
devcoredump.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
device.h LinuxKPI: sort dev_<loglevel>() functions 2024-02-18 16:41:06 +00:00
dma-attrs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dma-buf-map.h linuxkpi: Add <linux/dma-buf-map.h> 2022-11-11 18:40:57 +01:00
dma-mapping.h linuxkpi: dma_get_cache_alignment(): Fix off-by-one result 2023-11-16 10:07:18 -05:00
dmapool.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dmi.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dynamic_debug.h LinuxKPI: Add linux/dynamic_debug.h header 2024-02-17 23:58:38 +03:00
efi.h LinuxKPI: in efi.h include queue.h 2022-11-15 23:08:05 +00:00
err.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
errno.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
etherdevice.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ethtool.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
eventpoll.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
export.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
file.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
firmware.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
fs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
fwnode.h linuxkpi: Declare struct fwnode_handle in <linux/fwnode.h> 2023-02-14 23:01:06 +01:00
gcd.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
gfp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
hardirq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
hash.h LinuxKPI: Implement linux/hashtable.h for FreeBSD. 2022-05-12 16:32:47 +02:00
hashtable.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
hdmi.h linuxkpi: Add hdmi helpers 2023-03-28 09:11:06 +02:00
highmem.h LinuxKPI: cleanup internal calls to VM_PAGE_TO_PHYS 2023-08-07 00:57:42 +00:00
hrtimer.h linuxkpi: Include <linux/rbtree.h> from <linux/hrtimer.h> and <linux/mm_types.h> 2024-02-17 23:58:35 +03:00
i2c-algo-bit.h linuxkpi: Add i2c support 2022-01-25 16:15:39 +01:00
i2c.h linuxkpi: Add i2c_adapter_quirks support 2023-02-13 22:09:31 +01:00
idr.h LinuxKPI: Add ida_alloc_min() 2024-02-17 23:58:38 +03:00
ieee80211.h LinuxKPI: 802.11: bring in some HT code 2024-02-18 18:31:13 +00:00
if_arp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_ether.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_vlan.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
in.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
in6.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
inetdevice.h LinuxKPI: Constantly use _LINUXKPI_ prefix in include guards 2022-01-10 22:49:38 +03:00
interrupt.h LinuxKPI: Remove sys/rman.h include from LKPI headers. 2024-02-17 23:58:36 +03:00
interval_tree.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
interval_tree_generic.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
io-64-nonatomic-lo-hi.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
io-mapping.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
io.h LinuxKPI: Define ioread64() in linux/io.h only on 64 bit archs. 2024-02-17 23:58:39 +03:00
ioctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
iommu.h linuxkpi: Add <linux/iommu.h> 2023-03-20 21:47:36 +01:00
iopoll.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ioport.h LinuxKPI: Add linux/ioport.h header 2024-02-17 23:58:38 +03:00
iosys-map.h LinuxKPI: Add linux/iosys-map.h header 2024-02-17 23:58:37 +03:00
ip.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
irq_work.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
irqdomain.h LinuxKPI: Add some header pollution and dummy headers 2024-02-17 23:58:37 +03:00
irqreturn.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
jhash.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
jiffies.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
jump_label.h LinuxKPI: Constantly use _LINUXKPI_ prefix in include guards 2022-01-10 22:49:38 +03:00
kconfig.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kdev_t.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kernel.h LinuxKPI: Split linux/container_of.h off from linux/kernel.h 2024-02-17 23:58:36 +03:00
kfifo.h LinuxKPI: extend kfifo to be usable 2022-08-18 20:26:20 +00:00
kmemleak.h linuxkpi: Add kmemleak.h 2022-06-29 09:54:57 +02:00
kmod.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kobject.h LinuxKPI: Add some header pollution and dummy headers 2024-02-17 23:58:37 +03:00
kref.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kthread.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ktime.h LinuxKPI: Add ktime_get_raw_fast_ns() to linux/ktime.h 2024-02-17 23:58:37 +03:00
leds.h LinuxKPI: add linux/leds.h 2022-11-07 12:52:41 +00:00
list.h LinuxKPI: Rename linux_list_add to __list_add() in linux/list.h 2024-02-17 23:58:39 +03:00
llist.h LinuxKPI: Constantly use _LINUXKPI_ prefix in include guards 2022-01-10 22:49:38 +03:00
lockdep.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
log2.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
math64.h linuxkpi math: fix kassert in math64.h 2023-08-18 00:31:03 -05:00
media-bus-format.h linuxkpi: Add media-bus-format.h 2022-06-29 09:55:00 +02:00
mhi.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
miscdevice.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mm.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mm_types.h linuxkpi: Include <linux/rbtree.h> from <linux/hrtimer.h> and <linux/mm_types.h> 2024-02-17 23:58:35 +03:00
mman.h linuxkpi: Add <linux/mman.h> which includes <linux/smp.h> 2022-11-11 20:57:46 +01:00
mmap_lock.h linuxkpi: Add mmap_lock.h 2022-02-17 09:31:51 +01:00
mmu_context.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mmu_notifier.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mmzone.h linuxkpi: Add <linux/mmzone.h> 2022-11-11 18:39:48 +01:00
mod_devicetable.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
module.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
moduleparam.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mutex.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
net.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
net_dim.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
netdev_features.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
netdevice.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
nl80211.h LinuxKPI: 802.11: update compat code for updated drivers 2023-08-21 00:39:57 +00:00
nospec.h linuxkpi: Add linux/nospec.h 2022-08-08 15:22:35 +02:00
notifier.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
numa.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
of.h LinuxKPI: Add some header pollution and dummy headers 2024-02-17 23:58:37 +03:00
overflow.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
page-flags.h linuxkpi: Add <linux/page-flags.h> 2022-11-11 20:56:42 +01:00
page.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pagemap.h linuxkpi: Move invalidate_mapping_pages() to <linux/pagemap.h> 2024-02-17 23:58:35 +03:00
pagevec.h LinuxKPI: reduce usage of struct vm_page and vm_page_t 2023-08-07 00:55:30 +00:00
pci.h LinuxKPI: Add pcie_capability_clear_and_set_word() function 2024-02-17 23:58:39 +03:00
pci_ids.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pfn.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pfn_t.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pid.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
platform_device.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pm.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pm_qos.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pm_runtime.h linuxkpi: Add pm_runtime_suspended() 2023-01-25 22:26:53 +01:00
poison.h LinuxKPI: Constantly use _LINUXKPI_ prefix in include guards 2022-01-10 22:49:38 +03:00
poll.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
power_supply.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
preempt.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
prefetch.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
printk.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ptp_clock_kernel.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pwm.h linuxkpi: Add pwm.h 2022-06-29 09:55:26 +02:00
qrtr.h ath10k: ath11k: add specific LinuxKPI support 2023-04-23 21:31:07 +00:00
radix-tree.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
random.h LinuxKPI: Add get_random_u64() function 2024-02-17 23:58:38 +03:00
ratelimit.h LinuxKPI: Constantly use _LINUXKPI_ prefix in include guards 2022-01-10 22:49:38 +03:00
rbtree.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rculist.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rcupdate.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
reboot.h linuxkpi: Add orderly_poweroff 2022-02-17 09:31:25 +01:00
refcount.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rhashtable.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rwlock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rwsem.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
scatterlist.h linuxkpi: fix iteration in __sg_alloc_table_from_pages 2023-10-06 12:47:39 +00:00
sched.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
semaphore.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
seq_file.h linuxkpi: Include <linux/string_helpers.h> from <linux/seq_file.h> 2024-02-17 23:58:36 +03:00
seqlock.h LinuxKPI: Add write_seqcount_invalidate() and seqprop_sequence() 2024-02-17 23:58:38 +03:00
shmem_fs.h LinuxKPI: Add some header pollution and dummy headers 2024-02-17 23:58:37 +03:00
shrinker.h LinuxKPI: Chase for new "name" argument of register_shrinker() 2024-02-17 23:58:38 +03:00
sizes.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
skbuff.h LinuxKPI: skbuff: remove assumption about mac_header 2023-10-04 15:19:18 +00:00
slab.h LinuxKPI: Allow kmalloc to be called when FPU protection is enabled 2024-02-17 23:58:39 +03:00
smp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
socket.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sort.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
spinlock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
srcu.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stackdepot.h linuxkpi: Add linux/stackdepot.h 2022-08-18 09:46:36 +02:00
stdarg.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
stddef.h LinuxKPI: add struct_group(...) 2023-06-08 18:00:57 +00:00
string.h LinuxKPI: implement memset_after() 2024-02-18 16:41:17 +00:00
string_helpers.h LinuxKPI: Add str_on_off and other helpers to linux/string_helpers.h 2024-02-17 23:58:36 +03:00
stringify.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
suspend.h linuxkpi: Add more suspend defines 2023-02-17 14:50:58 +01:00
swap.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sysfs.h linuxkpi: Fix __ATTR_RO() in <linux/sysfs.h> 2024-02-17 23:58:35 +03:00
tcp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
time.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
timer.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tracepoint.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
typecheck.h linuxkpi: Add typecheck.h 2022-06-29 09:55:15 +02:00
types.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
uaccess.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
udp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
usb.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
utsname.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
uuid.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vgaarb.h linuxkpi: Update vga_client_register() and add vga_client_unregister() 2023-02-13 22:09:31 +01:00
vmalloc.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
wait.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
wait_bit.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
workqueue.h LinuxKPI: Add cancel_work() function. 2024-02-17 23:58:38 +03:00
ww_mutex.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
xarray.h LinuxKPI: Add xa_(un)lock_irq to linux/xarray.h 2024-02-17 23:58:37 +03:00