* [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:09 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 2/7] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks Antony Kurniawan Soemardi via B4 Relay
` (5 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Krzysztof Kozlowski
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Add compat for Smart Peripheral System (SPS) Interrupt Controller (SIC)
present on Qualcomm MSM8960 SoC.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
Documentation/devicetree/bindings/mfd/syscon.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/mfd/syscon.yaml b/Documentation/devicetree/bindings/mfd/syscon.yaml
index e22867088063..5f12ccf4483f 100644
--- a/Documentation/devicetree/bindings/mfd/syscon.yaml
+++ b/Documentation/devicetree/bindings/mfd/syscon.yaml
@@ -107,6 +107,7 @@ select:
- nxp,s32g3-gpr
- qcom,apq8064-mmss-sfpb
- qcom,apq8064-sps-sic
+ - qcom,msm8960-sps-sic
- rockchip,px30-qos
- rockchip,rk3036-qos
- rockchip,rk3066-qos
@@ -221,6 +222,7 @@ properties:
- nxp,s32g3-gpr
- qcom,apq8064-mmss-sfpb
- qcom,apq8064-sps-sic
+ - qcom,msm8960-sps-sic
- rockchip,px30-qos
- rockchip,rk3036-qos
- rockchip,rk3066-qos
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic
2026-08-02 19:03 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:09 ` sashiko-bot
0 siblings, 0 replies; 15+ messages in thread
From: sashiko-bot @ 2026-08-02 19:09 UTC (permalink / raw)
To: Antony Kurniawan Soemardi; +Cc: conor+dt, devicetree, lee, robh, mfd
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The commit message description starts with a lowercase letter, which violates the MFD subsystem guidelines for commit message capitalization.
--
--- Patch [1]: [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic ---
commit 1cfd706762cb6881d8994b3ced230db695470176
Author: Antony Kurniawan Soemardi <linux@smankusors.com>
dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic
This commit adds the compatible string for the Smart Peripheral System (SPS)
Interrupt Controller (SIC) on the Qualcomm MSM8960 SoC to the syscon
dt-bindings.
> dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic
[Severity: Low]
This isn't a bug, but the description after the subsystem prefix is lowercase.
Could "add" be capitalized to "Add" to align with the MFD subsystem commit
message conventions?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260803-msm8960-wifi-v4-0-5ffa27aea39d@smankusors.com?part=1
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v4 2/7] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:03 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:21 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 3/7] ARM: dts: qcom: msm8960: add SCM Antony Kurniawan Soemardi via B4 Relay
` (4 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Dmitry Baryshkov
From: Antony Kurniawan Soemardi <linux@smankusors.com>
The RPM clock controller manages clocks shared between the application
processor and the RPM firmware, including fabric and bus clocks required
by several peripherals.
With the RPM clock controller now available in the device tree, the USB
controller must explicitly declare its dependency on
RPM_DAYTONA_FABRIC_CLK. Without this declaration, the clock framework
would consider it unused and disable it, breaking USB functionality.
This also corrects the previous misuse of USB_HS1_XCVR_CLK as the core
clock. The XCVR clock is in fact used for PHY/reset handling rather than
as the main core clock.
A similar issue has been observed on APQ8064, where missing the RPM
fabric clock dependency leads to broken USB.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
index fd28401cebb5..6ead9fec557a 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
@@ -5,6 +5,7 @@
#include <dt-bindings/clock/qcom,gcc-msm8960.h>
#include <dt-bindings/reset/qcom,gcc-msm8960.h>
#include <dt-bindings/clock/qcom,lcc-msm8960.h>
+#include <dt-bindings/clock/qcom,rpmcc.h>
#include <dt-bindings/mfd/qcom-rpm.h>
#include <dt-bindings/soc/qcom,gsbi.h>
@@ -98,6 +99,16 @@ rpm: rpm@108000 {
interrupt-names = "ack",
"err",
"wakeup";
+
+ rpmcc: clock-controller {
+ compatible = "qcom,rpmcc-apq8064",
+ "qcom,rpmcc";
+ #clock-cells = <1>;
+ clocks = <&pxo_board>,
+ <&cxo_board>;
+ clock-names = "pxo",
+ "cxo";
+ };
};
ssbi: ssbi@500000 {
@@ -507,8 +518,12 @@ usb1: usb@12500000 {
reg = <0x12500000 0x200>,
<0x12500200 0x200>;
interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>;
- clock-names = "core", "iface";
+ clocks = <&rpmcc RPM_DAYTONA_FABRIC_CLK>,
+ <&gcc USB_HS1_H_CLK>,
+ <&gcc USB_HS1_XCVR_CLK>;
+ clock-names = "iface",
+ "core",
+ "fs";
assigned-clocks = <&gcc USB_HS1_XCVR_CLK>;
assigned-clock-rates = <60000000>;
resets = <&gcc USB_HS1_RESET>;
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH v4 2/7] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks
2026-08-02 19:03 ` [PATCH v4 2/7] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:21 ` sashiko-bot
0 siblings, 0 replies; 15+ messages in thread
From: sashiko-bot @ 2026-08-02 19:21 UTC (permalink / raw)
To: Antony Kurniawan Soemardi; +Cc: conor+dt, mfd, robh, devicetree, lee
> From: Antony Kurniawan Soemardi <linux@smankusors.com>
>
> The RPM clock controller manages clocks shared between the application
> processor and the RPM firmware, including fabric and bus clocks required
> by several peripherals.
>
> With the RPM clock controller now available in the device tree, the USB
> controller must explicitly declare its dependency on
> RPM_DAYTONA_FABRIC_CLK. Without this declaration, the clock framework
> would consider it unused and disable it, breaking USB functionality.
>
> This also corrects the previous misuse of USB_HS1_XCVR_CLK as the core
> clock. The XCVR clock is in fact used for PHY/reset handling rather than
> as the main core clock.
>
> A similar issue has been observed on APQ8064, where missing the RPM
> fabric clock dependency leads to broken USB.
>
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260803-msm8960-wifi-v4-0-5ffa27aea39d@smankusors.com?part=2
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v4 3/7] ARM: dts: qcom: msm8960: add SCM
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:03 ` [PATCH v4 1/7] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:03 ` [PATCH v4 2/7] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:22 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 4/7] ARM: dts: qcom: msm8960: add SMEM & hwlock Antony Kurniawan Soemardi via B4 Relay
` (3 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Dmitry Baryshkov
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Add the Secure Channel Manager firmware device node to the MSM8960
device tree. The SCM is required for secure communication between the
application processor and other subsystems.
Tested-by: Rudraksha Gupta <guptarud@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
index 6ead9fec557a..00957482dee6 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
@@ -77,6 +77,15 @@ l2: l2-cache {
};
};
+ firmware {
+ scm {
+ compatible = "qcom,scm-msm8960", "qcom,scm";
+
+ clocks = <&rpmcc RPM_DAYTONA_FABRIC_CLK>;
+ clock-names = "core";
+ };
+ };
+
memory@80000000 {
device_type = "memory";
reg = <0x80000000 0>;
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v4 4/7] ARM: dts: qcom: msm8960: add SMEM & hwlock
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
` (2 preceding siblings ...)
2026-08-02 19:03 ` [PATCH v4 3/7] ARM: dts: qcom: msm8960: add SCM Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:08 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS Antony Kurniawan Soemardi via B4 Relay
` (2 subsequent siblings)
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Dmitry Baryshkov,
Konrad Dybcio
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Enable shared memory communication and add the SFPB lock for MSM8960.
These provide the foundation for inter-processor communication with the
Riva (BT + Wi-Fi) subsystem.
Tested-by: Rudraksha Gupta <guptarud@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
index 00957482dee6..9389b6358d8d 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
@@ -91,6 +91,24 @@ memory@80000000 {
reg = <0x80000000 0>;
};
+ reserved-memory {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+
+ smem_region: smem@80000000 {
+ reg = <0x80000000 0x200000>;
+ no-map;
+ };
+ };
+
+ smem {
+ compatible = "qcom,smem";
+ memory-region = <&smem_region>;
+
+ hwlocks = <&sfpb_mutex 3>;
+ };
+
soc: soc {
compatible = "simple-bus";
ranges;
@@ -343,6 +361,12 @@ tsens: thermal-sensor {
};
};
+ sfpb_mutex: hwlock@1200600 {
+ compatible = "qcom,sfpb-mutex";
+ reg = <0x01200600 0x100>;
+ #hwlock-cells = <1>;
+ };
+
intc: interrupt-controller@2000000 {
compatible = "qcom,msm-qgic2";
reg = <0x02000000 0x1000>,
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
` (3 preceding siblings ...)
2026-08-02 19:03 ` [PATCH v4 4/7] ARM: dts: qcom: msm8960: add SMEM & hwlock Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:14 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 6/7] ARM: dts: qcom: msm8960: add Riva Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:03 ` [PATCH v4 7/7] ARM: dts: qcom: msm8960: huashan: enable Wi-Fi and Bluetooth Antony Kurniawan Soemardi via B4 Relay
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Konrad Dybcio,
Dmitry Baryshkov
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Add the Shared Memory State Machine node to coordinate state transitions
between the Applications processor and the Riva subsystem.
Tested-by: Rudraksha Gupta <guptarud@gmail.com>
Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
index 9389b6358d8d..0088381d77ea 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
@@ -109,6 +109,31 @@ smem {
hwlocks = <&sfpb_mutex 3>;
};
+ smsm {
+ compatible = "qcom,smsm";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ qcom,ipc-1 = <&l2cc 8 4>;
+ qcom,ipc-2 = <&l2cc 8 14>;
+ qcom,ipc-3 = <&l2cc 8 23>;
+ qcom,ipc-4 = <&sps_sic_non_secure 0x4094 0>;
+
+ apps_smsm: apps@0 {
+ reg = <0>;
+ #qcom,smem-state-cells = <1>;
+ };
+
+ wcnss_smsm: wcnss@3 {
+ reg = <3>;
+ interrupts = <GIC_SPI 204 IRQ_TYPE_EDGE_RISING>;
+
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ };
+ };
+
soc: soc {
compatible = "simple-bus";
ranges;
@@ -458,6 +483,11 @@ clock-controller@4000000 {
"hdmipll";
};
+ sps_sic_non_secure: interrupt-controller@12100000 {
+ compatible = "qcom,msm8960-sps-sic", "syscon";
+ reg = <0x12100000 0x10000>;
+ };
+
sdcc3: mmc@12180000 {
compatible = "arm,pl18x", "arm,primecell";
reg = <0x12180000 0x2000>;
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* Re: [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS
2026-08-02 19:03 ` [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:14 ` sashiko-bot
0 siblings, 0 replies; 15+ messages in thread
From: sashiko-bot @ 2026-08-02 19:14 UTC (permalink / raw)
To: Antony Kurniawan Soemardi; +Cc: robh, devicetree, mfd, conor+dt, lee
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The `sps_sic_non_secure` node is named `interrupt-controller@12100000` but lacks the required `interrupt-controller;` and `#interrupt-cells` properties, which will trigger a dtbs_check warning.
--
--- Patch [5]: [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS ---
commit b1991478faae0d83b35d683654faa3614f645d90
Author: Antony Kurniawan Soemardi <linux@smankusors.com>
ARM: dts: qcom: msm8960: add SMSM & SPS
This commit adds the Shared Memory State Machine (SMSM) node to coordinate
state transitions between the Applications processor and the Riva subsystem.
It also introduces the SPS SIC non-secure node as a syscon.
> diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
> index 9389b6358d8d2..0088381d77ea0 100644
> --- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
[ ... ]
> @@ -458,6 +483,11 @@ clock-controller@4000000 {
> "hdmipll";
> };
>
> + sps_sic_non_secure: interrupt-controller@12100000 {
> + compatible = "qcom,msm8960-sps-sic", "syscon";
> + reg = <0x12100000 0x10000>;
> + };
[Severity: Low]
Would it be better to name this node syscon@12100000 or
system-controller@12100000?
Because it is named interrupt-controller, dtbs_check will emit a warning since
the schema mandates that nodes with this name must include the
interrupt-controller; and #interrupt-cells properties, which are not present
here.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260803-msm8960-wifi-v4-0-5ffa27aea39d@smankusors.com?part=5
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH v4 6/7] ARM: dts: qcom: msm8960: add Riva
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
` (4 preceding siblings ...)
2026-08-02 19:03 ` [PATCH v4 5/7] ARM: dts: qcom: msm8960: add SMSM & SPS Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:14 ` sashiko-bot
2026-08-02 19:03 ` [PATCH v4 7/7] ARM: dts: qcom: msm8960: huashan: enable Wi-Fi and Bluetooth Antony Kurniawan Soemardi via B4 Relay
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Dmitry Baryshkov
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Add the Riva Peripheral Image Loader node to support the Wireless
Connectivity and Networking Subsystem on MSM8960. This includes:
- Reserved memory region for WCNSS firmware
- WCN3660 iris radio controller
- Bluetooth and Wi-Fi sub-devices exposed via the SMD edge
- Pinctrl states for Bluetooth and Wi-Fi power management
Tested-by: Rudraksha Gupta <guptarud@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 87 ++++++++++++++++++++++++++++++++
1 file changed, 87 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
index 0088381d77ea..b9c28e468d32 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
@@ -100,6 +100,11 @@ smem_region: smem@80000000 {
reg = <0x80000000 0x200000>;
no-map;
};
+
+ wcnss_mem: wcnss@8f000000 {
+ reg = <0x8f000000 0x700000>;
+ no-map;
+ };
};
smem {
@@ -320,6 +325,34 @@ i2c12-pins {
};
};
+ riva_bt_default_state: riva-bt-active-state {
+ pins = "gpio28", "gpio29";
+ function = "bt";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ riva_bt_sleep_state: riva-bt-sleep-state {
+ pins = "gpio28", "gpio29";
+ function = "bt";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ riva_wlan_default_state: riva-wlan-active-state {
+ pins = "gpio84", "gpio85", "gpio86", "gpio87", "gpio88";
+ function = "wlan";
+ drive-strength = <6>;
+ bias-pull-down;
+ };
+
+ riva_wlan_sleep_state: riva-wlan-sleep-state {
+ pins = "gpio84", "gpio85", "gpio86", "gpio87", "gpio88";
+ function = "wlan";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
sdcc3_default_state: sdcc3-default-state {
clk-pins {
pins = "sdc3_clk";
@@ -459,6 +492,60 @@ saw1_vreg: regulator {
};
};
+ riva: riva-pil@3200800 {
+ compatible = "qcom,riva-pil";
+ reg = <0x03200800 0x1000>,
+ <0x03202000 0x2000>,
+ <0x03204000 0x100>;
+ reg-names = "ccu",
+ "dxe",
+ "pmu";
+ pinctrl-0 = <&riva_wlan_default_state>, <&riva_bt_default_state>;
+ pinctrl-1 = <&riva_wlan_sleep_state>, <&riva_bt_sleep_state>;
+ pinctrl-names = "default", "sleep";
+ interrupts-extended = <&intc GIC_SPI 199 IRQ_TYPE_EDGE_RISING>,
+ <&wcnss_smsm 6 IRQ_TYPE_EDGE_RISING>;
+ interrupt-names = "wdog", "fatal";
+ memory-region = <&wcnss_mem>;
+
+ status = "disabled";
+
+ iris {
+ compatible = "qcom,wcn3660";
+ clocks = <&cxo_board>;
+ clock-names = "xo";
+ };
+
+ smd-edge {
+ interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
+ label = "riva";
+ qcom,ipc = <&l2cc 8 25>;
+ qcom,smd-edge = <6>;
+
+ wcnss {
+ compatible = "qcom,wcnss";
+ qcom,smd-channels = "WCNSS_CTRL";
+ qcom,mmio = <&riva>;
+
+ bluetooth {
+ compatible = "qcom,wcnss-bt";
+ };
+
+ wifi {
+ compatible = "qcom,wcnss-wlan";
+ interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "tx",
+ "rx";
+ qcom,smem-states = <&apps_smsm 10>,
+ <&apps_smsm 9>;
+ qcom,smem-state-names = "tx-enable",
+ "tx-rings-empty";
+ };
+ };
+ };
+ };
+
clock-controller@4000000 {
compatible = "qcom,mmcc-msm8960";
reg = <0x4000000 0x1000>;
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread* [PATCH v4 7/7] ARM: dts: qcom: msm8960: huashan: enable Wi-Fi and Bluetooth
2026-08-02 19:03 [PATCH v4 0/7] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
` (5 preceding siblings ...)
2026-08-02 19:03 ` [PATCH v4 6/7] ARM: dts: qcom: msm8960: add Riva Antony Kurniawan Soemardi via B4 Relay
@ 2026-08-02 19:03 ` Antony Kurniawan Soemardi via B4 Relay
2026-08-02 19:10 ` sashiko-bot
6 siblings, 1 reply; 15+ messages in thread
From: Antony Kurniawan Soemardi via B4 Relay @ 2026-08-02 19:03 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Bjorn Andersson, Konrad Dybcio
Cc: phone-devel, Rudraksha Gupta, mfd, devicetree, linux-kernel,
linux-arm-msm, Antony Kurniawan Soemardi, Konrad Dybcio,
Dmitry Baryshkov
From: Antony Kurniawan Soemardi <linux@smankusors.com>
Add Wi-Fi and Bluetooth support for Sony Xperia SP.
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
---
arch/arm/boot/dts/qcom/qcom-msm8960-sony-huashan.dts | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960-sony-huashan.dts b/arch/arm/boot/dts/qcom/qcom-msm8960-sony-huashan.dts
index 591dc837e600..7d54ced3641f 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8960-sony-huashan.dts
+++ b/arch/arm/boot/dts/qcom/qcom-msm8960-sony-huashan.dts
@@ -95,6 +95,21 @@ MATRIX_KEY(1, 1, KEY_CAMERA)
status = "okay";
};
+&riva {
+ vddcx-supply = <&pm8921_s3>;
+ vddmx-supply = <&pm8921_l24>;
+ vddpx-supply = <&pm8921_s4>;
+
+ status = "okay";
+
+ iris {
+ vdddig-supply = <&pm8921_lvs2>;
+ vddpa-supply = <&pm8921_l10>;
+ vddrfa-supply = <&pm8921_s2>;
+ vddxo-supply = <&pm8921_l4>;
+ };
+};
+
&rpm {
regulators {
compatible = "qcom,rpm-pm8921-regulators";
--
2.34.1
^ permalink raw reply related [flat|nested] 15+ messages in thread