Message ID | 20231017025358.1773598-1-Jun.Ma2@amd.com (mailing list archive) |
---|---|
Headers | show |
Series | Enable Wifi RFI interference mitigation feature support | expand |
ping... Any other comments? Regards, Ma Jun On 10/17/2023 10:53 AM, Ma Jun wrote: > 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 we introuduced WBRF(Wifi Band RFI mitigation Feature). > 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.0. With some brief introductions > as below: > Patch1: Document about WBRF > Patch2: Core functionality setup for WBRF feature support > Patch3 - 4: Bring WBRF support to wifi subsystem. > Patch5 - 9: Bring WBRF support to AMD graphics driver. > > Evan Quan (7): > 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 > > Ma Jun (2): > Documentation/driver-api: Add document about WBRF mechanism > platform/x86/amd: Add support for AMD ACPI based Wifi band RFI > mitigation feature > > Documentation/driver-api/wbrf.rst | 71 +++ > 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 + > drivers/platform/x86/amd/Kconfig | 15 + > drivers/platform/x86/amd/Makefile | 1 + > drivers/platform/x86/amd/wbrf.c | 422 ++++++++++++++++++ > include/linux/acpi_amd_wbrf.h | 101 +++++ > 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 +- > 27 files changed, 1180 insertions(+), 6 deletions(-) > create mode 100644 Documentation/driver-api/wbrf.rst > create mode 100644 drivers/platform/x86/amd/wbrf.c > create mode 100644 include/linux/acpi_amd_wbrf.h > create mode 100644 net/mac80211/wbrf.c >
Hi, On 10/19/23 08:17, Ma, Jun wrote: > ping... > Any other comments? Patches 1/9 and 2/9 look reasonable, once the questions about use of the _DSM vs directly calling the WBRF ACPI method are resolved I can merge patches 1/9 and 2/9 and create an immutable feature branch based on 6.7-rc1 + these 2 patches. I'll then also send a pull-request to the wifi /resp amdgpu maintainers from this branch. I see no acks / reviews from the wifi folks yet, so once that immutable feature branch is ready the first thing to do is try to get the wifi folks to review + merge WBRF support. Note I plan to not actually merge the feature branch into for-next until the wifi folks are happy with the code. This way if changes are necessary I can do a v2 feature branch and the wifi folks can merge that instead. Regards, Hans > On 10/17/2023 10:53 AM, Ma Jun wrote: >> 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 we introuduced WBRF(Wifi Band RFI mitigation Feature). >> 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.0. With some brief introductions >> as below: >> Patch1: Document about WBRF >> Patch2: Core functionality setup for WBRF feature support >> Patch3 - 4: Bring WBRF support to wifi subsystem. >> Patch5 - 9: Bring WBRF support to AMD graphics driver. >> >> Evan Quan (7): >> 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 >> >> Ma Jun (2): >> Documentation/driver-api: Add document about WBRF mechanism >> platform/x86/amd: Add support for AMD ACPI based Wifi band RFI >> mitigation feature >> >> Documentation/driver-api/wbrf.rst | 71 +++ >> 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 + >> drivers/platform/x86/amd/Kconfig | 15 + >> drivers/platform/x86/amd/Makefile | 1 + >> drivers/platform/x86/amd/wbrf.c | 422 ++++++++++++++++++ >> include/linux/acpi_amd_wbrf.h | 101 +++++ >> 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 +- >> 27 files changed, 1180 insertions(+), 6 deletions(-) >> create mode 100644 Documentation/driver-api/wbrf.rst >> create mode 100644 drivers/platform/x86/amd/wbrf.c >> create mode 100644 include/linux/acpi_amd_wbrf.h >> create mode 100644 net/mac80211/wbrf.c >> >
Hi Hans, Thanks for review and your suggestion. I'll check and fix the _DSM calling issue in the next version. Regards, Ma Jun On 11/20/2023 6:54 PM, Hans de Goede wrote: > Hi, > > On 10/19/23 08:17, Ma, Jun wrote: >> ping... >> Any other comments? > > Patches 1/9 and 2/9 look reasonable, once the questions about > use of the _DSM vs directly calling the WBRF ACPI method are > resolved I can merge patches 1/9 and 2/9 and create an immutable > feature branch based on 6.7-rc1 + these 2 patches. > > I'll then also send a pull-request to the wifi /resp amdgpu > maintainers from this branch. > > I see no acks / reviews from the wifi folks yet, > so once that immutable feature branch is ready the first > thing to do is try to get the wifi folks to review + merge WBRF > support. > > Note I plan to not actually merge the feature branch > into for-next until the wifi folks are happy with the code. > > This way if changes are necessary I can do a v2 feature branch > and the wifi folks can merge that instead. > > Regards, > > Hans > > > > >> On 10/17/2023 10:53 AM, Ma Jun wrote: >>> 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 we introuduced WBRF(Wifi Band RFI mitigation Feature). >>> 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.0. With some brief introductions >>> as below: >>> Patch1: Document about WBRF >>> Patch2: Core functionality setup for WBRF feature support >>> Patch3 - 4: Bring WBRF support to wifi subsystem. >>> Patch5 - 9: Bring WBRF support to AMD graphics driver. >>> >>> Evan Quan (7): >>> 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 >>> >>> Ma Jun (2): >>> Documentation/driver-api: Add document about WBRF mechanism >>> platform/x86/amd: Add support for AMD ACPI based Wifi band RFI >>> mitigation feature >>> >>> Documentation/driver-api/wbrf.rst | 71 +++ >>> 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 + >>> drivers/platform/x86/amd/Kconfig | 15 + >>> drivers/platform/x86/amd/Makefile | 1 + >>> drivers/platform/x86/amd/wbrf.c | 422 ++++++++++++++++++ >>> include/linux/acpi_amd_wbrf.h | 101 +++++ >>> 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 +- >>> 27 files changed, 1180 insertions(+), 6 deletions(-) >>> create mode 100644 Documentation/driver-api/wbrf.rst >>> create mode 100644 drivers/platform/x86/amd/wbrf.c >>> create mode 100644 include/linux/acpi_amd_wbrf.h >>> create mode 100644 net/mac80211/wbrf.c >>> >> >