[V11 0/8] Enable Wifi RFI interference mitigation feature support

From: Evan Quan
Date: Thu Aug 31 2023 - 02:21:26 EST


Due to electrical and mechanical constraints in certain platform designs there
may be likely interference of relatively high-powered harmonics of the (G-)DDR
memory clocks with local radio module frequency bands used by Wifi 6/6e/7. To
mitigate possible RFI interference producers can advertise the frequencies in
use and consumers can use this information to avoid using these frequencies for
sensitive features.

The whole patch set is based on Linux 6.5-rc5. With some brief introductions
as below:
Patch1: Core functionality setup for WBRF feature support
Patch2 - 3: Bring WBRF support to wifi subsystem.
Patch4 - 8: Bring WBRF support to AMD graphics driver.

Evan Quan (8):
ACPI: Add support for AMD ACPI based Wifi band RFI mitigation feature
cfg80211: expose nl80211_chan_width_to_mhz for wide sharing
wifi: mac80211: Add support for WBRF features
drm/amd/pm: update driver_if and ppsmc headers for coming wbrf feature
drm/amd/pm: setup the framework to support Wifi RFI mitigation feature
drm/amd/pm: add flood detection for wbrf events
drm/amd/pm: enable Wifi RFI mitigation feature support for SMU13.0.0
drm/amd/pm: enable Wifi RFI mitigation feature support for SMU13.0.7

drivers/acpi/Kconfig | 17 +
drivers/acpi/Makefile | 2 +
drivers/acpi/amd_wbrf.c | 414 ++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 2 +
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 17 +
drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 214 +++++++++
drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h | 33 ++
.../inc/pmfw_if/smu13_driver_if_v13_0_0.h | 14 +-
.../inc/pmfw_if/smu13_driver_if_v13_0_7.h | 14 +-
.../pm/swsmu/inc/pmfw_if/smu_v13_0_0_ppsmc.h | 3 +-
.../pm/swsmu/inc/pmfw_if/smu_v13_0_7_ppsmc.h | 3 +-
drivers/gpu/drm/amd/pm/swsmu/inc/smu_types.h | 3 +-
drivers/gpu/drm/amd/pm/swsmu/inc/smu_v13_0.h | 3 +
.../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c | 9 +
.../drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 60 +++
.../drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 59 +++
drivers/gpu/drm/amd/pm/swsmu/smu_internal.h | 3 +
include/linux/acpi_amd_wbrf.h | 140 ++++++
include/linux/ieee80211.h | 1 +
include/net/cfg80211.h | 8 +
net/mac80211/Makefile | 2 +
net/mac80211/chan.c | 9 +
net/mac80211/ieee80211_i.h | 9 +
net/mac80211/main.c | 2 +
net/mac80211/wbrf.c | 105 +++++
net/wireless/chan.c | 3 +-
26 files changed, 1143 insertions(+), 6 deletions(-)
create mode 100644 drivers/acpi/amd_wbrf.c
create mode 100644 include/linux/acpi_amd_wbrf.h
create mode 100644 net/mac80211/wbrf.c

--
2.34.1