mbox series

[ath-next,0/2] Add split-phy scan support in single wiphy

Message ID 20250428151927.1169783-1-rameshkumar.sundaram@oss.qualcomm.com
Headers show
Series Add split-phy scan support in single wiphy | expand

Message

Rameshkumar Sundaram April 28, 2025, 3:19 p.m. UTC
When two split-phy devices having supported frequency range in same band
(as mentioned below) are combined into an ath12k HW group, they will be part
of same wiphy and hence the channel list (wiphy->bands[]) will be common
for all of the radios (ar).

1 - 2.4 GHz + 5 GHz Low band
2 - 5 GHz High band + 6 GHz

When a scan is triggered with frequency list containing frequencies of
both  5 GHz low and 5 GHz high, mac80211 generates a single scan request
to driver with both the frequencies. This is because mac80211 splits the
the scan request based on band.
This results in driver scheduling scan for both frequencies in same radio,
as driver always assumes that the scan request frequency list from
mac80211 only contains frequencies for one radio.
Split the scan request frequency list based on the supported frequency
ranges of radios in a band and schedule scan to corresponding radios.

Since the scan request is split in ath12k driver internally, wait for
all radios to complete their scan and report the same to mac80211.

Depends-on: https://lore.kernel.org/linux-wireless/20250417-fix_scan_vdev_handling-v3-0-9ec42513d26b@oss.qualcomm.com/
Depends-on: https://lore.kernel.org/linux-wireless/20250417073954.632994-1-rameshkumar.sundaram@oss.qualcomm.com/

Rameshkumar Sundaram (2):
  wifi: ath12k: Prepare ahvif scan link for parallel scan
  wifi: ath12k: Split scan request for split band device

 drivers/net/wireless/ath/ath12k/core.h |   4 +-
 drivers/net/wireless/ath/ath12k/mac.c  | 197 +++++++++++++++++++------
 drivers/net/wireless/ath/ath12k/mac.h  |   7 +-
 3 files changed, 160 insertions(+), 48 deletions(-)


base-commit: 21346cd925c2567d5f56cdb1421c94815ac10221
prerequisite-patch-id: 621a0dbeb6269fcaf27c808f951d9e2a2c3ac8f7
prerequisite-patch-id: a9eebd8a3cc3b1ed9ed3574ce9fee088af9c5798

Comments

Jeff Johnson May 2, 2025, 8:55 p.m. UTC | #1
On 4/28/2025 8:19 AM, Rameshkumar Sundaram wrote:
> When two split-phy devices having supported frequency range in same band
> (as mentioned below) are combined into an ath12k HW group, they will be part
> of same wiphy and hence the channel list (wiphy->bands[]) will be common
> for all of the radios (ar).
> 
> 1 - 2.4 GHz + 5 GHz Low band
> 2 - 5 GHz High band + 6 GHz
> 
> When a scan is triggered with frequency list containing frequencies of
> both  5 GHz low and 5 GHz high, mac80211 generates a single scan request
> to driver with both the frequencies. This is because mac80211 splits the
> the scan request based on band.
> This results in driver scheduling scan for both frequencies in same radio,
> as driver always assumes that the scan request frequency list from
> mac80211 only contains frequencies for one radio.
> Split the scan request frequency list based on the supported frequency
> ranges of radios in a band and schedule scan to corresponding radios.
> 
> Since the scan request is split in ath12k driver internally, wait for
> all radios to complete their scan and report the same to mac80211.
> 
> Depends-on: https://lore.kernel.org/linux-wireless/20250417-fix_scan_vdev_handling-v3-0-9ec42513d26b@oss.qualcomm.com/
> Depends-on: https://lore.kernel.org/linux-wireless/20250417073954.632994-1-rameshkumar.sundaram@oss.qualcomm.com/
> 
> Rameshkumar Sundaram (2):
>   wifi: ath12k: Prepare ahvif scan link for parallel scan
>   wifi: ath12k: Split scan request for split band device
> 
>  drivers/net/wireless/ath/ath12k/core.h |   4 +-
>  drivers/net/wireless/ath/ath12k/mac.c  | 197 +++++++++++++++++++------
>  drivers/net/wireless/ath/ath12k/mac.h  |   7 +-
>  3 files changed, 160 insertions(+), 48 deletions(-)
> 
> 
> base-commit: 21346cd925c2567d5f56cdb1421c94815ac10221
> prerequisite-patch-id: 621a0dbeb6269fcaf27c808f951d9e2a2c3ac8f7
> prerequisite-patch-id: a9eebd8a3cc3b1ed9ed3574ce9fee088af9c5798

While this series applies cleanly on top of ath-next + the dependencies, it
does not apply cleanly on the pending branch (which already contains the
dependencies).

Can you please rebase on ath/main-pending, and post a v2 with ath-pending as
the destination branch tag? Don't worry if the patchwork bot ignores it due to
an unknown branch tag.

/jeff
Rameshkumar Sundaram May 6, 2025, 10:58 a.m. UTC | #2
On 5/3/2025 2:25 AM, Jeff Johnson wrote:
> On 4/28/2025 8:19 AM, Rameshkumar Sundaram wrote:
>> When two split-phy devices having supported frequency range in same band
>> (as mentioned below) are combined into an ath12k HW group, they will be part
>> of same wiphy and hence the channel list (wiphy->bands[]) will be common
>> for all of the radios (ar).
>>
>> 1 - 2.4 GHz + 5 GHz Low band
>> 2 - 5 GHz High band + 6 GHz
>>
>> When a scan is triggered with frequency list containing frequencies of
>> both  5 GHz low and 5 GHz high, mac80211 generates a single scan request
>> to driver with both the frequencies. This is because mac80211 splits the
>> the scan request based on band.
>> This results in driver scheduling scan for both frequencies in same radio,
>> as driver always assumes that the scan request frequency list from
>> mac80211 only contains frequencies for one radio.
>> Split the scan request frequency list based on the supported frequency
>> ranges of radios in a band and schedule scan to corresponding radios.
>>
>> Since the scan request is split in ath12k driver internally, wait for
>> all radios to complete their scan and report the same to mac80211.
>>
>> Depends-on: https://lore.kernel.org/linux-wireless/20250417-fix_scan_vdev_handling-v3-0-9ec42513d26b@oss.qualcomm.com/
>> Depends-on: https://lore.kernel.org/linux-wireless/20250417073954.632994-1-rameshkumar.sundaram@oss.qualcomm.com/
>>
>> Rameshkumar Sundaram (2):
>>    wifi: ath12k: Prepare ahvif scan link for parallel scan
>>    wifi: ath12k: Split scan request for split band device
>>
>>   drivers/net/wireless/ath/ath12k/core.h |   4 +-
>>   drivers/net/wireless/ath/ath12k/mac.c  | 197 +++++++++++++++++++------
>>   drivers/net/wireless/ath/ath12k/mac.h  |   7 +-
>>   3 files changed, 160 insertions(+), 48 deletions(-)
>>
>>
>> base-commit: 21346cd925c2567d5f56cdb1421c94815ac10221
>> prerequisite-patch-id: 621a0dbeb6269fcaf27c808f951d9e2a2c3ac8f7
>> prerequisite-patch-id: a9eebd8a3cc3b1ed9ed3574ce9fee088af9c5798
> 
> While this series applies cleanly on top of ath-next + the dependencies, it
> does not apply cleanly on the pending branch (which already contains the
> dependencies).
> 
> Can you please rebase on ath/main-pending, and post a v2 with ath-pending as
> the destination branch tag? Don't worry if the patchwork bot ignores it due to
> an unknown branch tag.
> 
> /jeff


Sure, will rebase on ath/main-pending and post it.