Re: [PATCH 4/6] arm64: dts: qcom: kaanapali-mtp: Enable bluetooth and Wifi
From: Zijun Hu
Date: Wed Apr 01 2026 - 09:46:19 EST
On 4/1/2026 7:08 PM, Dmitry Baryshkov wrote:
>>>>> - Is the pin wired in the hardware?
>>>> pin SW_CTRL is wired in hardware.
>>> Granted your three answers, it can and should be described in the DT.
>>>
>>>> i have below confusions about 'swctrl-gpios' of 'qcom,wcn7850-pmu'
>>>> which WCN7850 pin is 'swctrl-gpios' mean for ?
>>>> Why to introduce 'swctrl-gpios' ?
>>>> what problem does it solve ?
>>>> how to solve the problem ?
>>> Please descibe the hardware in the DT. Problem solving belongs to the
>>> driver.
>> sorry for not agreeing with your points here.
>>
>> it is better to correct or remove 'swctrl-gpios' within DT binding spec at least
>> for 'qcom,wcn7850-pmu' with below reasons:
>>
>> 1) provided that 'swctrl-gpios' is for pin SW_CTRL of datasheet, binding spec's
>> both description and its expected usage are wrong.
> Please correct it.
>
>> 2) its driver does not parse and use the property 'swctrl-gpios', moreover, the
>> property have no user within upstream DT tree.
> There is no "driver" in the "DT bindings"
>
'its driver' i mean here is the driver which drives the device which is generated
by this DT node 'qcom,wcn7850-pmu'.
source code of the driver is drivers/power/sequencing/pwrseq-qcom-wcn.c
>> 3) the property is not mandatory based on binding spec.
> Which is expected, because on some platforms it might be not wired up
> and on the other platforms the pin to which it is wired to might be
> unknown (think about all the phones for which the community doesn't have
> schematics).
>
got your points and will explain mine at below 2) together.
>> 4) upstream DT tree have had many such usages as mine which just set default pin
>> configuration and not specify 'swctrl-gpios' explicitly.
> I don't understand this part.
>
For DT node 'qcom,wcn7850-pmu' of products identified by the following dts file at least:
wcn7850-pmu {
compatible = "qcom,wcn7850-pmu";
pinctrl-names = "default"; // config SW_CTRL pin default settings, but
pinctrl-0 = ....; // this DT node does not specify property 'swctrl-gpios'.
....
}
grep -l -r "qcom,wcn7850-pmu" arch/arm64/boot/dts/qcom/ | xargs grep -l -r "sw[_-]ctrl"
arch/arm64/boot/dts/qcom/sm8550-hdk.dts
arch/arm64/boot/dts/qcom/sm8650-qrd.dts
arch/arm64/boot/dts/qcom/sm8750-mtp.dts
arch/arm64/boot/dts/qcom/sm8650-ayaneo-pocket-s2.dts
arch/arm64/boot/dts/qcom/sm8550-qrd.dts
arch/arm64/boot/dts/qcom/sm8650-hdk.dts
>> 5) kaanapali-mtp is originally preinstalled with android OS which supports some
>> qualcomm specific feature which have not been supported by up-stream kernel.
>> so kaanapali-mtp H/W has some wired pins which is not used by up-stream
>> kernel sometimes
> Again, what does that have to do with the hardware description?
kaanapali-mtp hardware supports the feature pin SW_CTRL involved, but we can decide
not to enable the feature based on requirements.
any advise about how to correct DTS to not enable the feature SW_CTRL involved ?