Qualcomm Arm32 DeviceTree updates for v6.16

Introduce support for the AP8064-based LG Nexus 4. MSM8226 is extended
 with modem-related features, the LTE-capable variant MSM8926 is
 introduced, and modem support is enabled on Samsung Galaxy Tab 4.
 
 Display-related clocks and power-domains are defined for the simple
 framebuffer of Motorola Moto G, to allow booting without
 clk_ignore_unused and pd_ignore_unused.
 
 On MSM8960 SDCC BAM and thermal sensor (tsens) is introduced.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmgju+QVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FH7oQAMuLGyWTReLqQ3FCdnlI/kXWH2qF
 Fg4VJb2zM0eYpaBPXS8fkD0BlxXPHy/CD9A/yKWpHMkD706J4PlsCfMLzj6pzbJJ
 tzP9fA/v2deGl/G/OKsM+Yp7a6Ocl2VzXU2eOakWMBlWQUcTv020jz+4wNwKDwx3
 85BESrpr6yCG55dOddZI1etKb2oVXKuvZAvYSELNb4l2PkIN+stJ0HoMykTWn9XD
 WD7QvD1LONi8eldt65O2Dz7cwN5eHybD4QPpYvW41OudP6reqTyTlE/NQSdP4eg5
 RyKXevjYemZTGX5YsNFR2p/y3zhLU95LH8+MSIm0d7DlpLMPNz88hedCEM+Mr+fp
 egHAfH+smWNki5xlaWUZwbRCIKZVz6SR5utnzudcC9obJMOrtajvBjaQ1WbsrzS3
 l4nka/Csn9KY/E0X6wKHXGzJlSOe87XlnF7HUlsfbzs1AQpNADgCtwFM5eJZLhhb
 TcxbjKh1ZOrznuPxCRA0na0zuH/kEgdchs4F4dsJ3/I42tDAXFYBmjw97R07J/Xx
 fJEtqhfvxTQSv5RR6cfbbayXPEJpvJ6uygmJCOx+ZzhRWroOqB7dlWp1/kForhAn
 FZYdu/4rZn9IWOJJEc0QcRLKyeekFca4pXMZfLk3nN6iGu7IwlWtzFr0wbgkVDBk
 m18POm/F0EA1BeG8
 =kQf8
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguSekACgkQmmx57+YA
 GNkaQxAAs+kfGjBKytJDybAG4Eh6EJ0UrMAMyPLqNx/DaXxM+QZ+ZLzFvMdNMz8i
 srLipwPQKyqN2EvYB0vWzx/3uAabVG8ZhIFYFFVVIpsy9jZkWF27Yw7ybAQg935P
 U+X5M26AdZv/Dkf1LYRcDZnSObtRL/Q8Hl+MxWjnt0GQDAtOX1DA3oksNvmdS7pQ
 pJEM0KX/PShZibpj0iGugGMMTBwvwHlj2hLpNrBCjISuHXwhbufXs6bEyoXcV5SL
 FuS8aK3eOvr2PntZsrHArJxRZMXKPBA17F2NsifCnucmt0Lqmz8V92lObGiORkHr
 kTvrJmIc1CSwSZrFyhq1C+azs2rx++BvCl7mFElK1tn9czod7LT7wUasDRu185wY
 qGGtg1dvfotxAI1ctt3ogtKu4pBONwbnb5cNjxPTHy0pNPIOBiCWy4NGxM3wJ7wJ
 zKukpczNwk7H1NFAd+0sx0XnGebGhz3Qs9jV3VD7sjdYdMZlIBYce13Rl9j70nWV
 OKcMjW0NYC+SNa/1vNE4ZpUqKjIiOvVXi9MPKnR2DPKKXXO1B8lT4pMcgr06wysL
 60fqIcqghsoeQEAwc20geimkgJkxusbpAXNqX9eY/kZOy7s2eVdzoXPLeCt0FEWV
 x2jNix94bPZLujFKb9jhpYZl4dz6/6RK/yYZwm+x4klJKxO+Z/c=
 =2aVB
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm32-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt

Qualcomm Arm32 DeviceTree updates for v6.16

Introduce support for the AP8064-based LG Nexus 4. MSM8226 is extended
with modem-related features, the LTE-capable variant MSM8926 is
introduced, and modem support is enabled on Samsung Galaxy Tab 4.

Display-related clocks and power-domains are defined for the simple
framebuffer of Motorola Moto G, to allow booting without
clk_ignore_unused and pd_ignore_unused.

On MSM8960 SDCC BAM and thermal sensor (tsens) is introduced.

* tag 'qcom-arm32-for-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  ARM: dts: qcom: apq8064: move replicator out of soc node
  ARM: dts: qcom: apq8064: use new compatible for SPS SIC device
  ARM: dts: qcom: apq8064: use new compatible for SFPB device
  ARM: dts: qcom: apq8064 merge hw splinlock into corresponding syscon device
  ARM: dts: qcom: apq8064: add missing clocks to the timer node
  ARM: dts: qcom: apq8064-lg-nexus4-mako: Enable WiFi
  ARM: dts: qcom: msm8226-motorola-falcon: specify vddio_disp output voltage
  ARM: dts: qcom: msm8226-motorola-falcon: limit TPS65132 to 5.4V
  ARM: dts: qcom: msm8226-motorola-falcon: add I2C clock frequencies
  ARM: dts: qcom: msm8226-motorola-falcon: add clocks, power-domain to simpleFB
  ARM: dts: qcom: ipq4019: Drop redundant CPU "clock-latency"
  ARM: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
  ARM: dts: qcom: msm8974: Use the header with DSI phy clock IDs
  ARM: dts: qcom: msm8226: Use the header with DSI phy clock IDs

Link: https://lore.kernel.org/r/20250513214111.43401-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2025-05-21 23:47:20 +02:00
commit 759dd3fea1
8 changed files with 99 additions and 67 deletions

View File

@ -31,6 +31,15 @@ framebuffer@3200000 {
vsp-supply = <&reg_lcd_pos>;
vsn-supply = <&reg_lcd_neg>;
vddio-supply = <&vddio_disp_vreg>;
clocks = <&mmcc MDSS_AHB_CLK>,
<&mmcc MDSS_AXI_CLK>,
<&mmcc MDSS_BYTE0_CLK>,
<&mmcc MDSS_ESC0_CLK>,
<&mmcc MDSS_MDP_CLK>,
<&mmcc MMSS_MISC_AHB_CLK>,
<&mmcc MDSS_PCLK0_CLK>,
<&mmcc MDSS_VSYNC_CLK>;
power-domains = <&mmcc MDSS_GDSC>;
};
};
@ -53,9 +62,12 @@ key-volume-up {
};
};
/* TI TPS22902 */
vddio_disp_vreg: regulator-vddio-disp {
compatible = "regulator-fixed";
regulator-name = "vddio_disp";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
gpio = <&tlmm 34 GPIO_ACTIVE_HIGH>;
vin-supply = <&pm8226_l8>;
startup-delay-us = <300>;
@ -97,6 +109,7 @@ reserved@fb00000 {
};
&blsp1_i2c2 {
clock-frequency = <100000>;
status = "okay";
magnetometer@c {
@ -126,6 +139,7 @@ accelerometer@19 {
};
&blsp1_i2c3 {
clock-frequency = <400000>;
status = "okay";
regulator@3e {
@ -136,8 +150,8 @@ regulator@3e {
reg_lcd_pos: outp {
regulator-name = "outp";
regulator-min-microvolt = <4000000>;
regulator-max-microvolt = <6000000>;
regulator-min-microvolt = <5400000>;
regulator-max-microvolt = <5400000>;
regulator-active-discharge = <1>;
regulator-boot-on;
enable-gpios = <&tlmm 31 GPIO_ACTIVE_HIGH>;
@ -145,8 +159,8 @@ reg_lcd_pos: outp {
reg_lcd_neg: outn {
regulator-name = "outn";
regulator-min-microvolt = <4000000>;
regulator-max-microvolt = <6000000>;
regulator-min-microvolt = <5400000>;
regulator-max-microvolt = <5400000>;
regulator-active-discharge = <1>;
regulator-boot-on;
enable-gpios = <&tlmm 33 GPIO_ACTIVE_HIGH>;

View File

@ -86,6 +86,24 @@ MATRIX_KEY(0, 1, KEY_VOLUMEUP)
status = "okay";
};
&riva {
pinctrl-names = "default";
pinctrl-0 = <&riva_wlan_pin_a>, <&riva_bt_pin_a>, <&riva_fm_pin_a>;
vddcx-supply = <&pm8921_s3>;
vddmx-supply = <&pm8921_l24>;
vddpx-supply = <&pm8921_s4>;
status = "okay";
iris {
vddxo-supply = <&pm8921_l4>;
vddrfa-supply = <&pm8921_s2>;
vddpa-supply = <&pm8921_l10>;
vdddig-supply = <&pm8921_lvs2>;
};
};
&rpm {
regulators {
compatible = "qcom,rpm-pm8921-regulators";

View File

@ -213,12 +213,6 @@ sleep_clk: sleep_clk {
};
};
sfpb_mutex: hwmutex {
compatible = "qcom,sfpb-mutex";
syscon = <&sfpb_wrapper_mutex 0x604 0x4>;
#hwlock-cells = <1>;
};
smem {
compatible = "qcom,smem";
memory-region = <&smem_region>;
@ -284,6 +278,40 @@ scm {
};
};
replicator {
compatible = "arm,coresight-static-replicator";
clocks = <&rpmcc RPM_QDSS_CLK>;
clock-names = "apb_pclk";
in-ports {
port {
replicator_in: endpoint {
remote-endpoint = <&funnel_out>;
};
};
};
out-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
replicator_out0: endpoint {
remote-endpoint = <&etb_in>;
};
};
port@1 {
reg = <1>;
replicator_out1: endpoint {
remote-endpoint = <&tpiu_in>;
};
};
};
};
soc: soc {
#address-cells = <1>;
#size-cells = <1>;
@ -305,9 +333,10 @@ tlmm_pinmux: pinctrl@800000 {
pinctrl-0 = <&ps_hold_default_state>;
};
sfpb_wrapper_mutex: syscon@1200000 {
compatible = "syscon";
reg = <0x01200000 0x8000>;
sfpb_mutex: hwmutex@1200600 {
compatible = "qcom,sfpb-mutex";
reg = <0x01200600 0x100>;
#hwlock-cells = <1>;
};
intc: interrupt-controller@2000000 {
@ -326,6 +355,8 @@ timer@200a000 {
<GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
reg = <0x0200a000 0x100>;
clock-frequency = <27000000>;
clocks = <&sleep_clk>;
clock-names = "sleep";
cpu-offset = <0x80000>;
};
@ -405,8 +436,8 @@ saw3_vreg: regulator {
};
};
sps_sic_non_secure: sps-sic-non-secure@12100000 {
compatible = "syscon";
sps_sic_non_secure: interrupt-controller@12100000 {
compatible = "qcom,apq8064-sps-sic", "syscon";
reg = <0x12100000 0x10000>;
};
@ -1089,7 +1120,7 @@ opp-27000000 {
};
mmss_sfpb: syscon@5700000 {
compatible = "syscon";
compatible = "qcom,apq8064-mmss-sfpb", "syscon";
reg = <0x5700000 0x70>;
};
@ -1532,39 +1563,6 @@ tpiu_in: endpoint {
};
};
replicator {
compatible = "arm,coresight-static-replicator";
clocks = <&rpmcc RPM_QDSS_CLK>;
clock-names = "apb_pclk";
out-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
replicator_out0: endpoint {
remote-endpoint = <&etb_in>;
};
};
port@1 {
reg = <1>;
replicator_out1: endpoint {
remote-endpoint = <&tpiu_in>;
};
};
};
in-ports {
port {
replicator_in: endpoint {
remote-endpoint = <&funnel_out>;
};
};
};
};
funnel@1a04000 {
compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
reg = <0x1a04000 0x1000>;

View File

@ -53,7 +53,6 @@ cpu@0 {
reg = <0x0>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@ -67,7 +66,6 @@ cpu@1 {
reg = <0x1>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@ -81,7 +79,6 @@ cpu@2 {
reg = <0x2>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@ -95,7 +92,6 @@ cpu@3 {
reg = <0x3>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};

View File

@ -6,6 +6,7 @@
/dts-v1/;
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
#include <dt-bindings/clock/qcom,gcc-msm8974.h>
#include <dt-bindings/clock/qcom,mmcc-msm8974.h>
#include <dt-bindings/clock/qcom,rpmcc.h>
@ -1138,8 +1139,8 @@ mmcc: clock-controller@fd8c0000 {
<&gcc GPLL0_VOTE>,
<&gcc GPLL1_VOTE>,
<&rpmcc RPM_SMD_GFX3D_CLK_SRC>,
<&mdss_dsi0_phy 1>,
<&mdss_dsi0_phy 0>;
<&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>,
<&mdss_dsi0_phy DSI_BYTE_PLL_CLK>;
clock-names = "xo",
"mmss_gpll0_vote",
"gpll0_vote",
@ -1215,8 +1216,8 @@ mdss_dsi0: dsi@fd922800 {
assigned-clocks = <&mmcc BYTE0_CLK_SRC>,
<&mmcc PCLK0_CLK_SRC>;
assigned-clock-parents = <&mdss_dsi0_phy 0>,
<&mdss_dsi0_phy 1>;
assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>,
<&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>;
clocks = <&mmcc MDSS_MDP_CLK>,
<&mmcc MDSS_AHB_CLK>,

View File

@ -3,6 +3,7 @@
#include <dt-bindings/interconnect/qcom,msm8974.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
#include <dt-bindings/clock/qcom,gcc-msm8974.h>
#include <dt-bindings/clock/qcom,mmcc-msm8974.h>
#include <dt-bindings/clock/qcom,rpmcc.h>
@ -1871,10 +1872,10 @@ mmcc: clock-controller@fd8c0000 {
<&gcc GPLL0_VOTE>,
<&gcc GPLL1_VOTE>,
<&rpmcc RPM_SMD_GFX3D_CLK_SRC>,
<&mdss_dsi0_phy 1>,
<&mdss_dsi0_phy 0>,
<&mdss_dsi1_phy 1>,
<&mdss_dsi1_phy 0>,
<&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>,
<&mdss_dsi0_phy DSI_BYTE_PLL_CLK>,
<&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>,
<&mdss_dsi1_phy DSI_BYTE_PLL_CLK>,
<0>,
<0>,
<0>;
@ -1961,8 +1962,10 @@ mdss_dsi0: dsi@fd922800 {
interrupt-parent = <&mdss>;
interrupts = <4>;
assigned-clocks = <&mmcc BYTE0_CLK_SRC>, <&mmcc PCLK0_CLK_SRC>;
assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
assigned-clocks = <&mmcc BYTE0_CLK_SRC>,
<&mmcc PCLK0_CLK_SRC>;
assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>,
<&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>;
clocks = <&mmcc MDSS_MDP_CLK>,
<&mmcc MDSS_AHB_CLK>,
@ -2032,8 +2035,10 @@ mdss_dsi1: dsi@fd922e00 {
interrupt-parent = <&mdss>;
interrupts = <4>;
assigned-clocks = <&mmcc BYTE1_CLK_SRC>, <&mmcc PCLK1_CLK_SRC>;
assigned-clock-parents = <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>;
assigned-clocks = <&mmcc BYTE1_CLK_SRC>,
<&mmcc PCLK1_CLK_SRC>;
assigned-clock-parents = <&mdss_dsi1_phy DSI_BYTE_PLL_CLK>,
<&mdss_dsi1_phy DSI_PIXEL_PLL_CLK>;
clocks = <&mmcc MDSS_MDP_CLK>,
<&mmcc MDSS_AHB_CLK>,

View File

@ -57,7 +57,7 @@ cpu0: cpu@0 {
enable-method = "psci";
clocks = <&apcs>;
power-domains = <&rpmhpd SDX55_CX>;
power-domain-names = "rpmhpd";
power-domain-names = "perf";
operating-points-v2 = <&cpu_opp_table>;
};
};

View File

@ -58,7 +58,7 @@ cpu0: cpu@0 {
enable-method = "psci";
clocks = <&apcs>;
power-domains = <&rpmhpd SDX65_CX_AO>;
power-domain-names = "rpmhpd";
power-domain-names = "perf";
operating-points-v2 = <&cpu_opp_table>;
};
};