[PATCH v3 0/8] Bluetooth, wifi, arm64: extend WCN driver to support WCN399x device

Dmitry Baryshkov
2026-01-19T17:08:02Z

Qualcomm WCN3950, WCN3988 and WCN399x families of WiFi/BT chips preceed
the later WCN / QCA devices, but they still incorporate a very simple
PMU on die. It controls internal on-chip power networks, but, most
importantly, it also requires a certain start-up procedure (first bring
up VDD_IO, then bring up other voltages). In order to further unify code
supporting different families of QCA / WCN chips and in order to
maintain the required power up sequence, properly represent these chips
in DTs and modify drivers to use power sequencing for these chips.

Backwards compatibility with the existing DTs is retained by keeping the
regulator&clock code in the drivers as a fallback.

As a part of the series I've converted only several boards, verifying
that all known instances of WCN39xx family work (fixing the issues
meanwhile). The rest of devices might follow the pattern later.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
Changes in v3:
- Dropped patches accepted by maintainers
- Changed ath10k to call pwrseq_power_on() unconditionally (Jeff)
- Added copyright headers to the changed ath10k files (Jeff)
- Link to v2: https://lore.kernel.org/r/20260106-wcn3990-pwrctl-v2-0-0386204328be@oss.qualcomm.com

Changes in v2:
- Split the WCN39xx PMU schema from the qcom,qca6390-pmu.yaml
(Krzysztof)
- Expanded the comment in the WiFi driver (Bartosz)
- Changed vddrfa1p3-supply to vddrf-supply.
- Link to v1: https://lore.kernel.org/r/20251231-wcn3990-pwrctl-v1-0-1ff4d6028ad5@oss.qualcomm.com

---
Dmitry Baryshkov (8):
Bluetooth: qca: enable pwrseq support for WCN39xx devices
Bluetooth: qca: fix ROM version reading on WCN3998 chips
wifi: ath10k: snoc: support powering on the device via pwrseq
arm64: dts: qcom: qrb2210-rb1: describe WiFi/BT properly
arm64: dts: qcom: qrb4210-rb2: describe WiFi/BT properly
arm64: dts: qcom: sda660-ifc6560: describe WiFi/BT properly
arm64: dts: qcom: sdm845-db845c: describe WiFi/BT properly
arm64: dts: qcom: sm8150-hdk: describe WiFi/BT properly

arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 60 +++++++--
arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 60 +++++++--
.../arm64/boot/dts/qcom/sda660-inforce-ifc6560.dts | 66 ++++++++--
arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 69 ++++++++--
arch/arm64/boot/dts/qcom/sm8150-hdk.dts | 141 ++++++++++++++++++++-
drivers/bluetooth/btqca.c | 2 +
drivers/bluetooth/hci_qca.c | 26 ++--
drivers/net/wireless/ath/ath10k/snoc.c | 53 +++++++-
drivers/net/wireless/ath/ath10k/snoc.h | 3 +
9 files changed, 430 insertions(+), 50 deletions(-)
---
base-commit: 46fe65a2c28ecf5df1a7475aba1f08ccf4c0ac1b
change-id: 20251229-wcn3990-pwrctl-cfa64f9d8167

Best regards,
--
With best wishes
Dmitry