linux/drivers/net/wireless
Zong-Zhe Yang 8704d0befb rtw88: support SAR via kernel common API
Register cfg80211_sar_capa with type NL80211_SAR_TYPE_POWER and four
frequency ranges for configurations in unit of 0.25 dBm. And handle
callback set_sar_specs.

Originally, TX power has three main parameters, i.e. power base,
power by rate, and power limit. The formula can be simply considered
as TX power = power base + min(power by rate, power limit). With the
support of SAR which can be treated as another power limit, there is
one more parameter for TX power. And the formula will evolve into
TX power = power base + min(power by rate, power limit, power sar).

Besides, debugfs tx_pwr_tbl is also refined to show SAR information.
The following is an example for the difference.
Before supporting SAR,
-----------------------------------
...
path rate       pwr       base      (byr  lmt ) rem
   A  CCK_1M     66(0x42)   78  -12 (  12  -12)    0
   A  CCK_2M     66(0x42)   78  -12 (   8  -12)    0
...
-----------------------------------
After supporting SAR and making some configurations,
-----------------------------------
...
path rate       pwr       base      (byr  lmt  sar ) rem
   A  CCK_1M     62(0x3e)   78  -16 (  12  -12  -16)    0
   A  CCK_2M     62(0x3e)   78  -16 (   8  -12  -16)    0
...
-----------------------------------

Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20211220093656.65312-1-pkshih@realtek.com
2021-12-21 20:22:38 +02:00
..
admtek
ath wireless-drivers-next patches for v5.17 2021-12-17 07:30:07 -08:00
atmel atmel: use eth_hw_addr_set() 2021-10-20 12:39:44 +03:00
broadcom wireless-drivers-next patches for v5.17 2021-12-17 07:30:07 -08:00
cisco airo: use eth_hw_addr_set() 2021-10-20 12:39:45 +03:00
intel wlwifi patches for v5.17 v2 2021-12-21 20:07:09 +02:00
intersil intersil: Use struct_group() for memcpy() region 2021-11-29 12:45:17 +02:00
marvell libertas_tf: Add missing __packed annotations 2021-12-08 20:39:54 +02:00
mediatek mt76: mt7921s: fix cmd timeout in throughput test 2021-12-19 15:24:05 +01:00
microchip wilc1000: fix double free error in probe() 2021-12-20 20:44:03 +02:00
quantenna wireless: use eth_hw_addr_set() instead of ether_addr_copy() 2021-10-20 12:39:42 +03:00
ralink rt2x00: do not mark device gone on EPROTO errors during start 2021-11-29 12:53:50 +02:00
realtek rtw88: support SAR via kernel common API 2021-12-21 20:22:38 +02:00
rsi rsi: fix array out of bound 2021-12-15 16:28:26 +02:00
st wireless: Remove redundant 'flush_workqueue()' calls 2021-10-13 09:22:19 +03:00
ti wl1251: specify max. IE length 2021-12-16 10:28:38 +02:00
zydas zd1201: use eth_hw_addr_set() 2021-10-20 12:39:47 +03:00
Kconfig
mac80211_hwsim.c Quite a few changes: 2021-10-22 10:20:56 -07:00
mac80211_hwsim.h
Makefile
ray_cs.c ray_cs: use eth_hw_addr_set() 2021-10-20 12:39:46 +03:00
ray_cs.h
rayctl.h
rndis_wlan.c wireless: Remove redundant 'flush_workqueue()' calls 2021-10-13 09:22:19 +03:00
virt_wifi.c virt_wifi: fix error on connect 2021-07-23 10:34:31 +02:00
wl3501_cs.c wl3501_cs: use eth_hw_addr_set() 2021-10-20 12:39:47 +03:00
wl3501.h