All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hans de Goede <hansg@kernel.org>
To: "Bryan O'Donoghue" <bod.linux@nxsw.ie>,
	jerome.debretagne@gmail.com,
	"Bjorn Andersson" <andersson@kernel.org>,
	"Konrad Dybcio" <konradybcio@kernel.org>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Johannes Berg" <johannes@sipsolutions.net>,
	"Lorenzo Bianconi" <lorenzo@kernel.org>,
	"Maximilian Luz" <luzmaximilian@gmail.com>,
	"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
	"Jeff Johnson" <jjohnson@kernel.org>,
	"Manivannan Sadhasivam" <mani@kernel.org>
Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org,
	platform-driver-x86@vger.kernel.org, ath12k@lists.infradead.org,
	Jeff Johnson <jeff.johnson@oss.qualcomm.com>,
	Dale Whinham <daleyo@gmail.com>
Subject: Re: [PATCH v5 2/7] dt-bindings: wireless: ieee80211: Add disable-rfkill property
Date: Mon, 22 Dec 2025 11:23:18 +0100	[thread overview]
Message-ID: <c29de60c-c7c6-45d7-8d90-616df23df01c@kernel.org> (raw)
In-Reply-To: <e0e9e690-c56e-4b56-90f9-2af46a7feaf3@nxsw.ie>

+Cc Mani

Hi,

On 20-Dec-25 07:04, Bryan O'Donoghue wrote:
> On 20/12/2025 00:21, Jérôme de Bretagne via B4 Relay wrote:
>> From: Jérôme de Bretagne <jerome.debretagne@gmail.com>
>>
>> For some devices, Wi-Fi is entirely hard blocked by default making
>> the Wi-Fi radio unusable, except if rfkill is disabled as expected
>> on those models.
>>
>> Commit c6a7c0b09d5f ("wifi: ath12k: Add Support for enabling or
>> disabling specific features based on ACPI bitflag") added a way to
>> support features set via ACPI, including the DISABLE_RFKILL bit.
>>
>> Add a disable-rfkill property to expose the DISABLE_RFKILL bit
>> equivalent for devices described by a Devicetree instead of ACPI.
>>
>> Signed-off-by: Jérôme de Bretagne <jerome.debretagne@gmail.com>
>> ---
>>   Documentation/devicetree/bindings/net/wireless/ieee80211.yaml | 6 ++++++
>>   1 file changed, 6 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/net/wireless/ieee80211.yaml b/Documentation/devicetree/bindings/net/wireless/ieee80211.yaml
>> index d89f7a3f88a71d45d6f4ab2ae909eae09cbcaf9a..c10a4675640be947cd0b5eaec2c7ff367fd93945 100644
>> --- a/Documentation/devicetree/bindings/net/wireless/ieee80211.yaml
>> +++ b/Documentation/devicetree/bindings/net/wireless/ieee80211.yaml
>> @@ -29,6 +29,12 @@ properties:
>>         different 5 GHz subbands. Using them incorrectly could not work or
>>         decrease performance noticeably
>>
>> +  disable-rfkill:
>> +    type: boolean
>> +    description:
>> +      Disable rfkill for some devices on which Wi-Fi would be entirely hard
>> +      blocked by default otherwise
>> +
>>   additionalProperties: true
>>
>>   examples:
>>
>> -- 
>> 2.47.3
>>
>>
>>
> 
> Is this really a hardware description though ?

I would say yes it is. The wifi chip has an rfkill input pin and
things will be broken when that pin is hardwired to a fixed value
rather then being actually connected to a GPIO from say
the embedded controller.

So I think that we would need here is not a disable-rfkill property
but some way to indicate in the DT-node that the rfkill input pin
is not connected and thus should be ignored.

This (the rfkill input pin being not-connected) IMHO very much
is hw-description.

Also see the
"[PATCH 0/9] Add support for handling PCIe M.2 Key E connectors in devicetree"
series and then specifically:

https://lore.kernel.org/platform-driver-x86/20251112-pci-m2-e-v1-7-97413d6bf824@oss.qualcomm.com/

Which adds:

+  w_disable1-gpios:
+    description: GPIO controlled connection to W_DISABLE1# signal. This signal
+      is used by the system to disable WiFi radio in the M.2 card. Refer, PCI
+      Express M.2 Specification r4.0, sec 3.1.12.3 for more details.
+    maxItems: 1

What if there is no such GPIO, because the W_DISABLE1# signal is hardwired
in a specific implementation of the M.2 slot ?

In that case we will also need some way to propagate that info to the wifi
driver, having some sort of generic devicetree property for wifi-cards
which can be injected as a software-node property in the PCI-device being
instantiated for the WIFI card to let the driver no not to honor to
W_DISABLE1# signal will be useful here too and this is as hardware-description
as hardware-description can get.

So how about: "w_disable1-not-connected" + "w_disable2-not-connected" boolean
properties in a generic WIFI devicetree binding and also use that here?

> I think this logic belongs in drivers/net/wireless/ath/ath12k/ triggering on a compat string.

See above, I do not believe that abusing compat-strings for this is the way
to go.

Regards,

Hans




  parent reply	other threads:[~2025-12-22 10:23 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-20  0:21 [PATCH v5 0/7] Microsoft Surface Pro 11 support Jérôme de Bretagne via B4 Relay
2025-12-20  0:21 ` Jérôme de Bretagne
2025-12-20  0:21 ` [PATCH v5 1/7] dt-bindings: arm: qcom: Document Microsoft Surface Pro 11 Jérôme de Bretagne via B4 Relay
2025-12-20  0:21   ` Jérôme de Bretagne
2025-12-20  9:12   ` Krzysztof Kozlowski
2025-12-20  0:21 ` [PATCH v5 2/7] dt-bindings: wireless: ieee80211: Add disable-rfkill property Jérôme de Bretagne via B4 Relay
2025-12-20  0:21   ` Jérôme de Bretagne
2025-12-20  6:04   ` Bryan O'Donoghue
2025-12-20  9:12     ` Krzysztof Kozlowski
2025-12-20 14:02       ` Jérôme de Bretagne
2025-12-20 16:05       ` Dmitry Baryshkov
2025-12-22 10:06         ` Konrad Dybcio
2025-12-22 10:23     ` Hans de Goede [this message]
2025-12-22 11:04       ` Krzysztof Kozlowski
2025-12-22 11:45       ` Manivannan Sadhasivam
2025-12-22 12:41         ` Hans de Goede
2025-12-22 13:41           ` Manivannan Sadhasivam
2025-12-22 14:22             ` Hans de Goede
2025-12-23  6:31               ` Manivannan Sadhasivam
2025-12-23  9:23                 ` Jérôme de Bretagne
2025-12-20  0:22 ` [PATCH v5 3/7] dt-bindings: wireless: ath12k: Allow " Jérôme de Bretagne via B4 Relay
2025-12-20  0:22   ` Jérôme de Bretagne
2025-12-20  0:22 ` [PATCH v5 4/7] firmware: qcom: scm: allow QSEECOM on Surface Pro 11 Jérôme de Bretagne via B4 Relay
2025-12-20  0:22   ` Jérôme de Bretagne
2025-12-20  0:22 ` [PATCH v5 5/7] platform/surface: aggregator_registry: Add Surface Pro 11 (QCOM) Jérôme de Bretagne via B4 Relay
2025-12-20  0:22   ` Jérôme de Bretagne
2025-12-20  0:22 ` [PATCH v5 6/7] arm64: dts: qcom: Add support for Surface Pro 11 Jérôme de Bretagne via B4 Relay
2025-12-20  0:22   ` Jérôme de Bretagne
2025-12-20  0:22 ` [PATCH v5 7/7] wifi: ath12k: Add support for disabling rfkill via devicetree Jérôme de Bretagne via B4 Relay
2025-12-20  0:22   ` Jérôme de Bretagne
2025-12-20  6:07   ` Bryan O'Donoghue

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c29de60c-c7c6-45d7-8d90-616df23df01c@kernel.org \
    --to=hansg@kernel.org \
    --cc=andersson@kernel.org \
    --cc=ath12k@lists.infradead.org \
    --cc=bod.linux@nxsw.ie \
    --cc=conor+dt@kernel.org \
    --cc=daleyo@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=jeff.johnson@oss.qualcomm.com \
    --cc=jerome.debretagne@gmail.com \
    --cc=jjohnson@kernel.org \
    --cc=johannes@sipsolutions.net \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=lorenzo@kernel.org \
    --cc=luzmaximilian@gmail.com \
    --cc=mani@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.