Qualcomm DTS updates for v5.16

This extends the previous limited description of MSM8226 with SDHC,
 UART, I2C, SCM, SMEM, RPM and basic PMIC definitions. Based on this,
 initial support for the LG G Watch R smartwatch is introduced.
 
 APQ8064 gets a couple of DT updates, one which will allow the GPU driver
 to drop supporting legacy "opp tables" in the future.
 
 DT bindings and DTS files are updated with additional compatibles, for
 completeness.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmFlyMwbHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3F6v0P/17moA0ag9bouNejiVbz
 qEYqDobqi6YvdEv8bDMcbHZKe7WpWy3eW304pp8gKj/u7E05rNdNAi45bZZ697Zt
 BhisknGupCw0+WjKVViAG7jSi7wVuBHyxJ5Y9e/iwItpmLaApQkW7/1lMIegOlsY
 BboFsHgRnflFO6fBg5LRhRPwFxZG0x1GRjtTYH4LiG8bOUa6TJy+/V+Wj8UTOspL
 ntmfFd295S4tm92XEYWhvIqKCrYLrn4/HQ5P9nB0kRFpPS7VX5C96a3t+vY9wSin
 IZwX+p4BsdnIG2ZucGKbEH+9PnWqrH1hmFJVLu99s/PulOd2GGEtWZeW3JongLp6
 R42JTx+nmFD4yCzL34qSVUEschcNaprSwqZLesJcFcXR1ZJ86Eo5S/8DMbmpscXT
 uIDkhTNTsoOVSpjZ5ZKfok2J9lpKl+FmpST25FuNapUmuAkgvJapipRk6DkXyT0r
 jAmTrSBRFAFcWY9isikKPPp97MuXguX+rHv+8Ki+K1ePfU+/8CftFIwlg8z6TfvY
 tUugn5K3xXrRBgR/WWH+6VJF9mq/XTCeaAlvmJzDlnTE/z2qGCrgQLKeH9vWTwT3
 uBG9dP+YhDvhXXWLU00W8xhSN/yb+riU2jj3FElhREmHL5B0/cKM2Hf1X5ugGImV
 2XKdAwuXcqJT9NpGgxuyL/KD
 =x0TI
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFvLEIACgkQmmx57+YA
 GNl7tQ/5AVaJo5EQ+EUSq/410r2S+8EdSK/NIxhQ3DQNkvmqfsNQwg+AawrX9MDD
 GwGvWo0vcOKJxV0XR3R9tHEJn/AKTT+s4qop/khRE3SNWP6+T6fPpcB5wjzS0Y15
 Tz/Nz0L6AGL4k0woDJQYLau7yFMIbGi+HdWzKTfztR1fOKBUPc8EQ5jxQKW0I78C
 Rc+o0+GvZxGejLq/400axhFR8+vHKtU+aUc6mdpmfl3mBLXBAUH8kD8tBdySgGsv
 Li408VgADL036X6vXLG1ScNcREsGB+nw/lzb9JQfXXYkv/aNN37f/YXZUNWgdaQF
 8jJRIMmVsB6nfUmoKCcJVb50/YCzAJYJqS7P+Z0v586DgxPUqaxD5pqPdze2/kz0
 Qhfu4959yBUd0YdaFgMm2UanqbyMYI0gux5EsCxTNsPhd8qRThSLiCr7zoqTK2pE
 ksbdUUiNftcHpVnXMyeepK9XENfvnD1ROcdC209Mh0c+EGTE+3b7gqUV75NRYYW6
 Ek0N0w2h6tOGci/Q+rwk09JunqefjLViNjRcz/QSMV4feuw7ck/+1Hm8u+ydFqOa
 u5DgvLVaXLIslrMz7bCO7eGpY5KHomsKbPx7c4UmTTH/nN/DQMOLsaf4RmDa1ROW
 7Rjiwc9rCV+uZ9ET3ZNmGOyIkgguTksRFSidEXTdeqYKIhuFXms=
 =ur86
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt

Qualcomm DTS updates for v5.16

This extends the previous limited description of MSM8226 with SDHC,
UART, I2C, SCM, SMEM, RPM and basic PMIC definitions. Based on this,
initial support for the LG G Watch R smartwatch is introduced.

APQ8064 gets a couple of DT updates, one which will allow the GPU driver
to drop supporting legacy "opp tables" in the future.

DT bindings and DTS files are updated with additional compatibles, for
completeness.

* tag 'qcom-dts-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
  dt-bindings: arm: qcom, add missing devices
  ARM: dts: qcom: msm8974: Add xo_board reference clock to DSI0 PHY
  ARM: dts: qcom: fill secondary compatible for multiple boards
  ARM: dts: qcom: apq8064: adjust memory node according to specs
  ARM: dts: qcom: apq8064: Convert adreno from legacy gpu-pwrlevels to opp-v2
  ARM: dts: qcom: Add support for LG G Watch R
  dt-bindings: arm: qcom: Document APQ8026 SoC binding
  ARM: dts: qcom: Add pm8226 PMIC
  ARM: dts: qcom: msm8226: Add more SoC bits
  dt-bindings: arm: qcom: Document SDX65 platform and boards

Link: https://lore.kernel.org/r/20211012174310.1017857-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2021-10-19 22:36:17 +02:00
commit 878e26d360
12 changed files with 554 additions and 22 deletions

View File

@ -25,6 +25,7 @@ description: |
The 'SoC' element must be one of the following strings:
apq8016
apq8026
apq8074
apq8084
apq8096
@ -44,6 +45,7 @@ description: |
sdm660
sdm845
sdx55
sdx65
sm8150
sm8250
sm8350
@ -94,6 +96,14 @@ properties:
- items:
- enum:
- lge,lenok
- const: qcom,apq8026
- items:
- enum:
- asus,nexus4-mako
- asus,nexus7-flo
- sony,xperia-yuga
- qcom,apq8064-cm-qs600
- qcom,apq8064-ifc6410
- const: qcom,apq8064
@ -129,6 +139,7 @@ properties:
- enum:
- fairphone,fp2
- lge,hammerhead
- samsung,klte
- sony,xperia-amami
- sony,xperia-castor
- sony,xperia-honami
@ -206,6 +217,11 @@ properties:
- qcom,sdx55-t55
- const: qcom,sdx55
- items:
- enum:
- qcom,sdx65-mtp
- const: qcom,sdx65
- items:
- enum:
- qcom,ipq6018-cp01

View File

@ -941,6 +941,7 @@ dtb-$(CONFIG_ARCH_OXNAS) += \
ox810se-wd-mbwe.dtb \
ox820-cloudengines-pogoplug-series-3.dtb
dtb-$(CONFIG_ARCH_QCOM) += \
qcom-apq8026-lge-lenok.dtb \
qcom-apq8060-dragonboard.dtb \
qcom-apq8064-cm-qs600.dtb \
qcom-apq8064-ifc6410.dtb \

View File

@ -0,0 +1,237 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2021, Luca Weiss <luca@z3ntu.xyz>
*/
/dts-v1/;
#include "qcom-msm8226.dtsi"
#include "qcom-pm8226.dtsi"
/ {
model = "LG G Watch R";
compatible = "lge,lenok", "qcom,apq8026";
qcom,board-id = <132 0x0a>;
qcom,msm-id = <199 0x20000>;
aliases {
serial0 = &blsp1_uart3;
};
chosen {
stdout-path = "serial0:115200n8";
};
};
&blsp1_i2c5 {
status = "okay";
clock-frequency = <384000>;
touchscreen@20 {
compatible = "syna,rmi4-i2c";
reg = <0x20>;
interrupts-extended = <&tlmm 17 IRQ_TYPE_EDGE_FALLING>;
vdd-supply = <&pm8226_l15>;
vio-supply = <&pm8226_l22>;
pinctrl-names = "default";
pinctrl-0 = <&touch_pins>;
#address-cells = <1>;
#size-cells = <0>;
rmi4-f01@1 {
reg = <0x1>;
syna,nosleep-mode = <1>;
};
rmi4-f12@12 {
reg = <0x12>;
syna,sensor-type = <1>;
};
};
};
&blsp1_uart3 {
status = "okay";
};
&rpm_requests {
pm8226-regulators {
compatible = "qcom,rpm-pm8226-regulators";
pm8226_s1: s1 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1275000>;
};
pm8226_s3: s3 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1350000>;
};
pm8226_s4: s4 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2200000>;
};
pm8226_s5: s5 {
regulator-min-microvolt = <1150000>;
regulator-max-microvolt = <1150000>;
};
pm8226_l1: l1 {
regulator-min-microvolt = <1225000>;
regulator-max-microvolt = <1225000>;
};
pm8226_l2: l2 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
pm8226_l3: l3 {
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1337500>;
};
pm8226_l4: l4 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
pm8226_l5: l5 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
pm8226_l6: l6 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
pm8226_l7: l7 {
regulator-min-microvolt = <1850000>;
regulator-max-microvolt = <1850000>;
};
pm8226_l8: l8 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
pm8226_l9: l9 {
regulator-min-microvolt = <2050000>;
regulator-max-microvolt = <2050000>;
};
pm8226_l10: l10 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
pm8226_l12: l12 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
pm8226_l14: l14 {
regulator-min-microvolt = <2750000>;
regulator-max-microvolt = <2750000>;
};
pm8226_l15: l15 {
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
pm8226_l16: l16 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3350000>;
};
pm8226_l17: l17 {
regulator-min-microvolt = <2950000>;
regulator-max-microvolt = <2950000>;
};
pm8226_l18: l18 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
};
pm8226_l19: l19 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
};
pm8226_l20: l20 {
regulator-min-microvolt = <3075000>;
regulator-max-microvolt = <3075000>;
};
pm8226_l21: l21 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
};
pm8226_l22: l22 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
pm8226_l23: l23 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2950000>;
};
pm8226_l24: l24 {
regulator-min-microvolt = <1300000>;
regulator-max-microvolt = <1350000>;
};
pm8226_l25: l25 {
regulator-min-microvolt = <1775000>;
regulator-max-microvolt = <2125000>;
};
pm8226_l26: l26 {
regulator-min-microvolt = <1225000>;
regulator-max-microvolt = <1225000>;
};
pm8226_l27: l27 {
regulator-min-microvolt = <2050000>;
regulator-max-microvolt = <2050000>;
};
pm8226_l28: l28 {
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3000000>;
};
pm8226_lvs1: lvs1 {};
};
};
&sdhc_1 {
status = "okay";
vmmc-supply = <&pm8226_l17>;
vqmmc-supply = <&pm8226_l6>;
bus-width = <8>;
non-removable;
pinctrl-names = "default";
pinctrl-0 = <&sdhc1_pin_a>;
};
&tlmm {
sdhc1_pin_a: sdhc1-pin-active {
clk {
pins = "sdc1_clk";
drive-strength = <10>;
bias-disable;
};
cmd-data {
pins = "sdc1_cmd", "sdc1_data";
drive-strength = <10>;
bias-pull-up;
};
};
touch_pins: touch {
irq {
pins = "gpio17";
function = "gpio";
drive-strength = <8>;
bias-pull-down;
input-enable;
};
reset {
pins = "gpio16";
function = "gpio";
drive-strength = <8>;
bias-disable;
output-high;
};
};
};

View File

@ -95,7 +95,7 @@
};
};
memory {
memory@0 {
device_type = "memory";
reg = <0x0 0x0>;
};
@ -1230,13 +1230,17 @@
&gfx3d1 30
&gfx3d1 31>;
qcom,gpu-pwrlevels {
compatible = "qcom,gpu-pwrlevels";
qcom,gpu-pwrlevel@0 {
qcom,gpu-freq = <450000000>;
operating-points-v2 = <&gpu_opp_table>;
gpu_opp_table: opp-table {
compatible = "operating-points-v2";
opp-320000000 {
opp-hz = /bits/ 64 <450000000>;
};
qcom,gpu-pwrlevel@1 {
qcom,gpu-freq = <27000000>;
opp-27000000 {
opp-hz = /bits/ 64 <27000000>;
};
};
};

View File

@ -5,7 +5,7 @@
/ {
model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK04.1-C1";
compatible = "qcom,ipq4019-dk04.1-c1";
compatible = "qcom,ipq4019-dk04.1-c1", "qcom,ipq4019";
soc {
dma@7984000 {

View File

@ -5,5 +5,5 @@
/ {
model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK04.1-C3";
compatible = "qcom,ipq4019-ap-dk04.1-c3";
compatible = "qcom,ipq4019-ap-dk04.1-c3", "qcom,ipq4019";
};

View File

@ -5,7 +5,7 @@
/ {
model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK07.1-C1";
compatible = "qcom,ipq4019-ap-dk07.1-c1";
compatible = "qcom,ipq4019-ap-dk07.1-c1", "qcom,ipq4019";
soc {
pci@40000000 {

View File

@ -5,7 +5,7 @@
/ {
model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK07.1-C2";
compatible = "qcom,ipq4019-ap-dk07.1-c2";
compatible = "qcom,ipq4019-ap-dk07.1-c2", "qcom,ipq4019";
soc {
pinctrl@1000000 {

View File

@ -3,7 +3,7 @@
/ {
model = "Qualcomm Technologies, Inc. IPQ8064/AP-148";
compatible = "qcom,ipq8064-ap148";
compatible = "qcom,ipq8064-ap148", "qcom,ipq8064";
soc {
pinmux@800000 {

View File

@ -7,6 +7,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/qcom,gcc-msm8974.h>
#include <dt-bindings/gpio/gpio.h>
/ {
#address-cells = <1>;
@ -20,6 +21,70 @@
reg = <0x0 0x0>;
};
clocks {
xo_board: xo_board {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <19200000>;
};
sleep_clk: sleep_clk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <32768>;
};
};
firmware {
scm {
compatible = "qcom,scm-msm8226", "qcom,scm";
clocks = <&gcc GCC_CE1_CLK>, <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>;
clock-names = "core", "bus", "iface";
};
};
tcsr_mutex: hwlock {
compatible = "qcom,tcsr-mutex";
syscon = <&tcsr_mutex_block 0 0x80>;
#hwlock-cells = <1>;
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
smem_region: smem@3000000 {
reg = <0x3000000 0x100000>;
no-map;
};
};
smd {
compatible = "qcom,smd";
rpm {
interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
rpm_requests: rpm-requests {
compatible = "qcom,rpm-msm8226";
qcom,smd-channels = "rpm_requests";
};
};
};
smem {
compatible = "qcom,smem";
memory-region = <&smem_region>;
qcom,rpm-msg-ram = <&rpm_msg_ram>;
hwlocks = <&tcsr_mutex 3>;
};
soc: soc {
compatible = "simple-bus";
#address-cells = <1>;
@ -34,6 +99,136 @@
#interrupt-cells = <3>;
};
apcs: syscon@f9011000 {
compatible = "syscon";
reg = <0xf9011000 0x1000>;
};
sdhc_1: sdhci@f9824900 {
compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
reg-names = "hc_mem", "core_mem";
interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "hc_irq", "pwr_irq";
clocks = <&gcc GCC_SDCC1_APPS_CLK>,
<&gcc GCC_SDCC1_AHB_CLK>,
<&xo_board>;
clock-names = "core", "iface", "xo";
status = "disabled";
};
sdhc_2: sdhci@f98a4900 {
compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
reg-names = "hc_mem", "core_mem";
interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "hc_irq", "pwr_irq";
clocks = <&gcc GCC_SDCC2_APPS_CLK>,
<&gcc GCC_SDCC2_AHB_CLK>,
<&xo_board>;
clock-names = "core", "iface", "xo";
status = "disabled";
};
sdhc_3: sdhci@f9864900 {
compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
reg = <0xf9864900 0x11c>, <0xf9864000 0x800>;
reg-names = "hc_mem", "core_mem";
interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "hc_irq", "pwr_irq";
clocks = <&gcc GCC_SDCC3_APPS_CLK>,
<&gcc GCC_SDCC3_AHB_CLK>,
<&xo_board>;
clock-names = "core", "iface", "xo";
status = "disabled";
};
blsp1_uart3: serial@f991f000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf991f000 0x1000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
status = "disabled";
};
blsp1_uart4: serial@f9920000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf9920000 0x1000>;
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_UART4_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
status = "disabled";
};
blsp1_i2c1: i2c@f9923000 {
status = "disabled";
compatible = "qcom,i2c-qup-v2.1.1";
reg = <0xf9923000 0x1000>;
interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
pinctrl-names = "default";
pinctrl-0 = <&blsp1_i2c1_pins>;
#address-cells = <1>;
#size-cells = <0>;
};
blsp1_i2c2: i2c@f9924000 {
status = "disabled";
compatible = "qcom,i2c-qup-v2.1.1";
reg = <0xf9924000 0x1000>;
interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
pinctrl-names = "default";
pinctrl-0 = <&blsp1_i2c2_pins>;
#address-cells = <1>;
#size-cells = <0>;
};
blsp1_i2c3: i2c@f9925000 {
status = "disabled";
compatible = "qcom,i2c-qup-v2.1.1";
reg = <0xf9925000 0x1000>;
interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
pinctrl-names = "default";
pinctrl-0 = <&blsp1_i2c3_pins>;
#address-cells = <1>;
#size-cells = <0>;
};
blsp1_i2c4: i2c@f9926000 {
status = "disabled";
compatible = "qcom,i2c-qup-v2.1.1";
reg = <0xf9926000 0x1000>;
interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
pinctrl-names = "default";
pinctrl-0 = <&blsp1_i2c4_pins>;
#address-cells = <1>;
#size-cells = <0>;
};
blsp1_i2c5: i2c@f9927000 {
status = "disabled";
compatible = "qcom,i2c-qup-v2.1.1";
reg = <0xf9927000 0x1000>;
interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
pinctrl-names = "default";
pinctrl-0 = <&blsp1_i2c5_pins>;
#address-cells = <1>;
#size-cells = <0>;
};
gcc: clock-controller@fc400000 {
compatible = "qcom,gcc-msm8226";
reg = <0xfc400000 0x4000>;
@ -51,15 +246,41 @@
interrupt-controller;
#interrupt-cells = <2>;
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
};
blsp1_uart3: serial@f991f000 {
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
reg = <0xf991f000 0x1000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
clock-names = "core", "iface";
status = "disabled";
blsp1_i2c1_pins: blsp1-i2c1 {
pins = "gpio2", "gpio3";
function = "blsp_i2c1";
drive-strength = <2>;
bias-disable;
};
blsp1_i2c2_pins: blsp1-i2c2 {
pins = "gpio6", "gpio7";
function = "blsp_i2c2";
drive-strength = <2>;
bias-disable;
};
blsp1_i2c3_pins: blsp1-i2c3 {
pins = "gpio10", "gpio11";
function = "blsp_i2c3";
drive-strength = <2>;
bias-disable;
};
blsp1_i2c4_pins: blsp1-i2c4 {
pins = "gpio14", "gpio15";
function = "blsp_i2c4";
drive-strength = <2>;
bias-disable;
};
blsp1_i2c5_pins: blsp1-i2c5 {
pins = "gpio18", "gpio19";
function = "blsp_i2c5";
drive-strength = <2>;
bias-disable;
};
};
restart@fc4ab000 {
@ -67,6 +288,22 @@
reg = <0xfc4ab000 0x4>;
};
spmi_bus: spmi@fc4cf000 {
compatible = "qcom,spmi-pmic-arb";
reg-names = "core", "intr", "cnfg";
reg = <0xfc4cf000 0x1000>,
<0xfc4cb000 0x1000>,
<0xfc4ca000 0x1000>;
interrupt-names = "periph_irq";
interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
qcom,ee = <0>;
qcom,channel = <0>;
#address-cells = <2>;
#size-cells = <0>;
interrupt-controller;
#interrupt-cells = <4>;
};
rng@f9bff000 {
compatible = "qcom,prng";
reg = <0xf9bff000 0x200>;
@ -131,6 +368,16 @@
status = "disabled";
};
};
rpm_msg_ram: memory@fc428000 {
compatible = "qcom,rpm-msg-ram";
reg = <0xfc428000 0x4000>;
};
tcsr_mutex_block: syscon@fd484000 {
compatible = "syscon";
reg = <0xfd484000 0x2000>;
};
};
timer {

View File

@ -1589,8 +1589,8 @@
#phy-cells = <0>;
qcom,dsi-phy-index = <0>;
clocks = <&mmcc MDSS_AHB_CLK>;
clock-names = "iface";
clocks = <&mmcc MDSS_AHB_CLK>, <&xo_board>;
clock-names = "iface", "ref";
};
};

View File

@ -0,0 +1,27 @@
// SPDX-License-Identifier: BSD-3-Clause
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/spmi/spmi.h>
&spmi_bus {
pm8226_0: pm8226@0 {
compatible = "qcom,pm8226", "qcom,spmi-pmic";
reg = <0x0 SPMI_USID>;
#address-cells = <1>;
#size-cells = <0>;
pwrkey@800 {
compatible = "qcom,pm8941-pwrkey";
reg = <0x800>;
interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
debounce = <15625>;
bias-pull-up;
};
};
pm8226_1: pm8226@1 {
compatible = "qcom,pm8226", "qcom,spmi-pmic";
reg = <0x1 SPMI_USID>;
#address-cells = <1>;
#size-cells = <0>;
};
};