1: 6278f3ed0d27 ! 1: a74214b5b8e0 wifi: ath12k: Add EHT capabilities to scan probe frame @@ Metadata ## Commit message ## wifi: ath12k: Add EHT capabilities to scan probe frame  - Currently, ath12k does not set the EHT flag in scan channel - information and does not send WMI_VDEV_SET_IE_CMDID with the EHT - Capabilities element configuration. As a result, EHT-capable STA - Probe Requests do not contain the EHT Capabilities element. + ath12k hardware scan Probe Request frames do not include the EHT + Capabilities element. Without this element, an AP cannot identify the + STA as EHT-capable during active scanning and may omit EHT-related + information from its Probe Response. This can result in incomplete scan + information and prevent userspace from correctly determining the AP's + EHT capabilities.  - Without this element, AP can't identify the STA as EHT-capable - during active scanning and may omit EHT-related information from its - Probe Response. This can result in incomplete scan information and - prevent userspace from correctly determining the AP's EHT capabilities. + For firmware to include the EHT Capabilities element in scan Probe + Request frames, two conditions are required:  - Set the EHT scan flag and configure the EHT Capabilities element so - that ath12k includes it in STA Probe Request frames. + - The scan channel must have WMI_CHAN_INFO_ALLOW_EHT set, which allows + firmware to add the EHT Capabilities element to Probe Request frames. + - The EHT Capabilities element must be configured on the vdev through + WMI_VDEV_SET_IE_CMDID, so firmware can use it when building Probe + Request frames. + + Set WMI_CHAN_INFO_ALLOW_EHT for channels when 11be is supported by + firmware and not disabled by ACPI. Also configure the EHT Capabilities + element before each hardware scan when the element is present in the + mac80211 scan IE buffer. + + Firmware retains the configured element in the vdev context until it is + replaced or the vdev is deleted. However, ath12k scans may either reuse + an already started vdev or create a temporary scan vdev that is cleaned + up after scan completion. Sending WMI_VDEV_SET_IE_CMDID for each scan + request ensures correct behavior in both cases.  Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c7-00108-QCAHMTSWPL_V1.0_V2.0_SILICONZ_UPSTREAM-3