[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b8277024-f9d4-4f17-946f-c2c390669067@oss.qualcomm.com>
Date: Mon, 17 Nov 2025 17:40:06 +0800
From: Baochen Qiang <baochen.qiang@....qualcomm.com>
To: Manivannan Sadhasivam <manivannan.sadhasivam@....qualcomm.com>
Cc: Jeff Johnson <jjohnson@...nel.org>,
Johannes Berg <johannes@...solutions.net>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley
<conor+dt@...nel.org>, linux-wireless@...r.kernel.org,
linux-kernel@...r.kernel.org, ath10k@...ts.infradead.org,
ath11k@...ts.infradead.org, devicetree@...r.kernel.org,
ath12k@...ts.infradead.org,
Miaoqing Pan <miaoqing.pan@....qualcomm.com>
Subject: Re: [PATCH 0/2] wifi: ath: Use static calibration variant table for
devicetree platforms
On 11/17/2025 5:00 PM, Manivannan Sadhasivam wrote:
> On Mon, Nov 17, 2025 at 10:36:39AM +0800, Baochen Qiang wrote:
>>
>>
>> On 11/14/2025 6:22 PM, Manivannan Sadhasivam wrote:
>>> Hi,
>>>
>>> This series aims to deprecate the usage of "qcom,*calibration-variant"
>>> devicetree property to select the calibration variant for the WLAN devices. This
>>> is necessary for WLAN devices connected using PCI bus, as hardcoding the device
>>> specific information in PCI devicetree node causes the node to be updated every
>>> time when a new device variant is attached to the PCI slot. This approach is not
>>> scalable and causes bad user experience.
>>
>> I am not very clear about the problem here: is calibration variant device/module specific,
>> or platform specific? If it is module specific, why the lookup is based on the machine
>> 'model' property? While if it is platform specific, why do we need to update devicetree
>> node whenever a new device is attached?
>>
>
> I think I mixed the usecase of the 'firmware-name' property in the above
> description.
>
> But nevertheless, the calibration info platform specific, and hardcoding the DT
> property fixes the location of the WLAN card with a specific slot. For instance,
> if the board has a couple of M.2 slots, users should be free to plug the WLAN in
> any slot, not just a single slot where the property was defined in DT.
>
> Also, if the users plug-in the WLAN card of another vendor, not Qcom, this
> property is irrelevant/wrong.
>
> PCIe slots should be plug and play i.e., users should plug-in any M.2 card and
> expect it to work.
>
correct
> However, as I learned from Jeff, calibration variant property is also going to
> be required in cases like router boards where each slot is dedicated to a fixed
> band and the calibration variant is going to be different for each band for the
> platform. So unlike I thought, this DT property cannot be deprecated. But going
> forward, I'd like it to be used only in these special usecases. Most of the
> upstream DTS have a single calibration variant for the platform and for those
> generic usecases, this static table should be used.
If that property is not going to be deprecated, should it take precedence?
>
> - Mani
>
>>>
>>> So to avoid relying on the "qcom,*calibration-variant" property, this series
>>> introduces a new static calibration variant table based lookup. The newly
>>> introduced helper, ath_get_calib_variant() will parse the model name from
>>> devicetree and use it to do the variant lookup during runtime. The
>>> ath_calib_variant_table[] will hold all the model and calibration variant
>>> entries for the supported devices.
>>>
>>> Going forward, new entries will be added to this table to support calibration
>>> variants.
>>>
>>> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@....qualcomm.com>
>>> ---
>>> Manivannan Sadhasivam (2):
>>> wifi: ath: Use static calibration variant table for devicetree platforms
>>> dt-bindings: wireless: ath: Deprecate 'qcom,calibration-variant' property
>>>
>>> .../bindings/net/wireless/qcom,ath10k.yaml | 1 +
>>> .../bindings/net/wireless/qcom,ath11k-pci.yaml | 3 +-
>>> .../bindings/net/wireless/qcom,ath11k.yaml | 1 +
>>> .../bindings/net/wireless/qcom,ath12k-wsi.yaml | 6 +-
>>> .../bindings/net/wireless/qcom,ipq5332-wifi.yaml | 2 +-
>>> drivers/net/wireless/ath/ath.h | 98 ++++++++++++++++++++++
>>> drivers/net/wireless/ath/ath10k/core.c | 5 ++
>>> drivers/net/wireless/ath/ath11k/core.c | 7 ++
>>> 8 files changed, 115 insertions(+), 8 deletions(-)
>>> ---
>>> base-commit: 3a8660878839faadb4f1a6dd72c3179c1df56787
>>> change-id: 20251114-ath-variant-tbl-22865456a527
>>>
>>> Best regards,
>>
>
Powered by blists - more mailing lists