[PATCH 0/9] Support Wifi RFI interference mitigation feature

From: Evan Quan
Date: Mon May 29 2023 - 22:43:24 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 6.4-rc3. With some brief introductions as below:
Patch1: Core ACPI interfaces needed to support WBRF feature.
Patch2 - 4: Enable WBRF support for some Mediatek and Qualcomm wifi drivers.
Patch5 - 9: Enable WBRF support for AMD graphics driver.

Anson Tsao (1):
wifi: ath11k: Add support to the Qualcomm ath11k for ACPI WBRF

Evan Quan (6):
wifi: ath12k: Add support to the Qualcomm ath12k for ACPI WBRF
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

Mario Limonciello (2):
drivers/acpi: Add support for Wifi band RF mitigations
mt76: Add support to the Mediatek MT7921 for ACPI WBRF

drivers/acpi/Kconfig | 7 +
drivers/acpi/Makefile | 2 +
drivers/acpi/acpi_wbrf.c | 343 ++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 26 ++
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 63 ++++
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 19 +
drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 204 +++++++++++
drivers/gpu/drm/amd/pm/swsmu/inc/amdgpu_smu.h | 31 ++
.../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 | 62 ++++
.../drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 61 ++++
drivers/gpu/drm/amd/pm/swsmu/smu_internal.h | 3 +
drivers/net/wireless/ath/Makefile | 1 +
drivers/net/wireless/ath/acpi_wbrf.c | 45 +++
drivers/net/wireless/ath/ath.h | 15 +
drivers/net/wireless/ath/ath11k/core.c | 23 ++
drivers/net/wireless/ath/ath11k/core.h | 14 +
drivers/net/wireless/ath/ath11k/mac.c | 4 +
drivers/net/wireless/ath/ath11k/pci.c | 3 +
drivers/net/wireless/ath/ath12k/core.c | 21 ++
drivers/net/wireless/ath/ath12k/core.h | 14 +
drivers/net/wireless/ath/ath12k/mac.c | 4 +
drivers/net/wireless/ath/ath12k/pci.c | 3 +
drivers/net/wireless/mediatek/mt76/Makefile | 1 +
.../net/wireless/mediatek/mt76/acpi_wbrf.c | 36 ++
drivers/net/wireless/mediatek/mt76/mt76.h | 19 +
.../net/wireless/mediatek/mt76/mt7921/init.c | 2 +
.../net/wireless/mediatek/mt76/mt7921/main.c | 3 +
include/linux/wbrf.h | 70 ++++
35 files changed, 1143 insertions(+), 5 deletions(-)
create mode 100644 drivers/acpi/acpi_wbrf.c
create mode 100644 drivers/net/wireless/ath/acpi_wbrf.c
create mode 100644 drivers/net/wireless/mediatek/mt76/acpi_wbrf.c
create mode 100644 include/linux/wbrf.h

--
2.34.1