Merge tag 'qcom-arm64-for-5.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt
Qualcomm ARM64 DT additional updates for 5.9 For SC7180 this adds the necessary properties for blowing fuses in qfprom, Coresight fixes, GPU interconnect votes and specifies max speed for USB controller. SM8150 and SM8250 gains Adreno SMMU, the graphics management unit and the GPU nodes, to enable headless GPU usage. SDM845 gains tracing support for deep idle, GPU bus bandwidth scaling and DB845c gains the LT9611 HDMI bridge wired up. MSM8994 gains SMD RPM and SCM support and a new dts for the Sony Xperia Z5. MSM8992 is refactored and modernized and gets support for SCM, SPMI, BLSP2 UART and I2C nodes, PMU, RPM clock controller, PSCI and proper CPU definitions. Support for the Xiaomi Libra and Microsoft Lumia 950 are added. * tag 'qcom-arm64-for-5.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (31 commits) arm64: dts: qcom: Add Microsoft Lumia 950 (Talkman) device tree arm64: dts: qcom: Add Xiaomi Libra (Mi 4C) device tree arm64: dts: qcom: msm8992: Add RPMCC node arm64: dts: qcom: msm8992: Add PSCI support. arm64: dts: qcom: msm8992: Add PMU node arm64: dts: qcom: msm8992: Add BLSP2_UART2 and I2C nodes arm64: dts: qcom: msm8992: Add SPMI PMIC arbiter device arm64: dts: qcom: msm8992: Add a SCM node arm64: dts: qcom: msm8992: Add a proper CPU map arm64: dts: qcom: bullhead: Move UART pinctrl to SoC arm64: dts: qcom: bullhead: Add qcom,msm-id arm64: dts: qcom: msm8992: Fix SDHCI1 arm64: dts: qcom: msm8992: Modernize the DTS style arm64: dts: qcom: Add support for Sony Xperia Z5 (SoMC Sumire-RoW) arm64: dts: qcom: Move msm8994-smd-rpm contents to lg-bullhead. arm64: dts: qcom: msm8994: Add support for SMD RPM arm64: dts: qcom: msm8992: Add a label to rpm-requests arm64: dts: qcom: msm8994: Add SCM node arm64: dts: qcom: sdm845-db845c: Add hdmi bridge nodes arm64: dts: qcom: add sm8250 GPU nodes ... Link: https://lore.kernel.org/r/20200730052003.649940-1-bjorn.andersson@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
@@ -9,7 +9,10 @@ dtb-$(CONFIG_ARCH_QCOM) += msm8916-longcheer-l8150.dtb
|
|||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8916-samsung-a3u-eur.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8916-samsung-a3u-eur.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8916-samsung-a5u-eur.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8916-samsung-a5u-eur.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8992-bullhead-rev-101.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8992-bullhead-rev-101.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_QCOM) += msm8992-msft-lumia-talkman.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_QCOM) += msm8992-xiaomi-libra.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8994-angler-rev-101.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8994-angler-rev-101.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_QCOM) += msm8994-sony-xperia-kitakami-sumire.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8996-mtp.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8996-mtp.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8998-asus-novago-tp370ql.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8998-asus-novago-tp370ql.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8998-hp-envy-x2.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8998-hp-envy-x2.dtb
|
||||||
|
@@ -11,6 +11,7 @@
|
|||||||
model = "LG Nexus 5X";
|
model = "LG Nexus 5X";
|
||||||
compatible = "lg,bullhead", "qcom,msm8992";
|
compatible = "lg,bullhead", "qcom,msm8992";
|
||||||
/* required for bootloader to select correct board */
|
/* required for bootloader to select correct board */
|
||||||
|
qcom,msm-id = <251 0>, <252 0>;
|
||||||
qcom,board-id = <0xb64 0>;
|
qcom,board-id = <0xb64 0>;
|
||||||
qcom,pmic-id = <0x10009 0x1000A 0x0 0x0>;
|
qcom,pmic-id = <0x10009 0x1000A 0x0 0x0>;
|
||||||
|
|
||||||
@@ -22,15 +23,6 @@
|
|||||||
stdout-path = "serial0:115200n8";
|
stdout-path = "serial0:115200n8";
|
||||||
};
|
};
|
||||||
|
|
||||||
soc {
|
|
||||||
serial@f991e000 {
|
|
||||||
status = "okay";
|
|
||||||
pinctrl-names = "default", "sleep";
|
|
||||||
pinctrl-0 = <&blsp1_uart2_default>;
|
|
||||||
pinctrl-1 = <&blsp1_uart2_sleep>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
reserved-memory {
|
reserved-memory {
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
#size-cells = <2>;
|
#size-cells = <2>;
|
||||||
@@ -47,4 +39,237 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
#include "msm8994-smd-rpm.dtsi"
|
&blsp1_uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&rpm_requests {
|
||||||
|
pm8994-regulators {
|
||||||
|
compatible = "qcom,rpm-pm8994-regulators";
|
||||||
|
|
||||||
|
vdd_l1-supply = <&pm8994_s1>;
|
||||||
|
vdd_l2_26_28-supply = <&pm8994_s3>;
|
||||||
|
vdd_l3_11-supply = <&pm8994_s3>;
|
||||||
|
vdd_l4_27_31-supply = <&pm8994_s3>;
|
||||||
|
vdd_l5_7-supply = <&pm8994_s3>;
|
||||||
|
vdd_l6_12_32-supply = <&pm8994_s5>;
|
||||||
|
vdd_l8_16_30-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l9_10_18_22-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l13_19_23_24-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l14_15-supply = <&pm8994_s5>;
|
||||||
|
vdd_l17_29-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l20_21-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l25-supply = <&pm8994_s5>;
|
||||||
|
vdd_lvs1_2 = <&pm8994_s4>;
|
||||||
|
|
||||||
|
pm8994_s1: s1 {
|
||||||
|
regulator-min-microvolt = <800000>;
|
||||||
|
regulator-max-microvolt = <800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s2: s2 {
|
||||||
|
/* TODO */
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s3: s3 {
|
||||||
|
regulator-min-microvolt = <1300000>;
|
||||||
|
regulator-max-microvolt = <1300000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s4: s4 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-allow-set-load;
|
||||||
|
regulator-system-load = <325000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s5: s5 {
|
||||||
|
regulator-min-microvolt = <2150000>;
|
||||||
|
regulator-max-microvolt = <2150000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s7: s7 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l1: l1 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l2: l2 {
|
||||||
|
regulator-min-microvolt = <1250000>;
|
||||||
|
regulator-max-microvolt = <1250000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l3: l3 {
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l4: l4 {
|
||||||
|
regulator-min-microvolt = <1225000>;
|
||||||
|
regulator-max-microvolt = <1225000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l5: l5 {
|
||||||
|
/* TODO */
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l6: l6 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l7: l7 {
|
||||||
|
/* TODO */
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l8: l8 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l9: l9 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l10: l10 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l11: l11 {
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l12: l12 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l13: l13 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <2950000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l14: l14 {
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l15: l15 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l16: l16 {
|
||||||
|
regulator-min-microvolt = <2700000>;
|
||||||
|
regulator-max-microvolt = <2700000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l17: l17 {
|
||||||
|
regulator-min-microvolt = <2700000>;
|
||||||
|
regulator-max-microvolt = <2700000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l18: l18 {
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l19: l19 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l20: l20 {
|
||||||
|
regulator-min-microvolt = <2950000>;
|
||||||
|
regulator-max-microvolt = <2950000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-allow-set-load;
|
||||||
|
regulator-system-load = <570000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l21: l21 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l22: l22 {
|
||||||
|
regulator-min-microvolt = <3100000>;
|
||||||
|
regulator-max-microvolt = <3100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l23: l23 {
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l24: l24 {
|
||||||
|
regulator-min-microvolt = <3075000>;
|
||||||
|
regulator-max-microvolt = <3150000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l25: l25 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l26: l26 {
|
||||||
|
/* TODO: value from downstream
|
||||||
|
regulator-min-microvolt = <987500>;
|
||||||
|
fails to apply */
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l27: l27 {
|
||||||
|
regulator-min-microvolt = <1050000>;
|
||||||
|
regulator-max-microvolt = <1050000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l28: l28 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l29: l29 {
|
||||||
|
/* TODO: Unsupported voltage range.
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
qcom,init-voltage = <2800000>;
|
||||||
|
*/
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l30: l30 {
|
||||||
|
/* TODO: get this verified
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
qcom,init-voltage = <1800000>;
|
||||||
|
*/
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l31: l31 {
|
||||||
|
regulator-min-microvolt = <1262500>;
|
||||||
|
regulator-max-microvolt = <1262500>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l32: l32 {
|
||||||
|
/* TODO: get this verified
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
qcom,init-voltage = <1800000>;
|
||||||
|
*/
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc_1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
mmc-hs400-1_8v;
|
||||||
|
};
|
||||||
|
39
arch/arm64/boot/dts/qcom/msm8992-msft-lumia-talkman.dts
Normal file
39
arch/arm64/boot/dts/qcom/msm8992-msft-lumia-talkman.dts
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020, Konrad Dybcio
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "msm8992.dtsi"
|
||||||
|
#include "pm8994.dtsi"
|
||||||
|
#include "pmi8994.dtsi"
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/gpio-keys.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Microsoft Lumia 950";
|
||||||
|
compatible = "microsoft,talkman", "qcom,msm8992";
|
||||||
|
|
||||||
|
/* Most Lumia 950 users use GRUB to load their kernels,
|
||||||
|
* hence there is no need for msm-id and friends.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* This enables graphical output via bootloader-enabled display.
|
||||||
|
* acpi=no is required due to WP platforms having ACPI support, but
|
||||||
|
* only for Windows-based OSes.
|
||||||
|
*/
|
||||||
|
chosen {
|
||||||
|
bootargs = "earlycon=efifb console=efifb acpi=no";
|
||||||
|
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc_1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
mmc-hs200-1_8v;
|
||||||
|
};
|
@@ -1,90 +0,0 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
|
||||||
/*
|
|
||||||
* Copyright (c) 2013-2015, The Linux Foundation. All rights reserved.
|
|
||||||
*/
|
|
||||||
|
|
||||||
&msmgpio {
|
|
||||||
blsp1_uart2_default: blsp1_uart2_default {
|
|
||||||
pinmux {
|
|
||||||
function = "blsp_uart2";
|
|
||||||
pins = "gpio4", "gpio5";
|
|
||||||
};
|
|
||||||
pinconf {
|
|
||||||
pins = "gpio4", "gpio5";
|
|
||||||
drive-strength = <16>;
|
|
||||||
bias-disable;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
blsp1_uart2_sleep: blsp1_uart2_sleep {
|
|
||||||
pinmux {
|
|
||||||
function = "gpio";
|
|
||||||
pins = "gpio4", "gpio5";
|
|
||||||
};
|
|
||||||
pinconf {
|
|
||||||
pins = "gpio4", "gpio5";
|
|
||||||
drive-strength = <2>;
|
|
||||||
bias-pull-down;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
/* 0-3 for sdc1 4-6 for sdc2 */
|
|
||||||
/* Order of pins */
|
|
||||||
/* SDC1: CLK -> 0, CMD -> 1, DATA -> 2, RCLK -> 3 */
|
|
||||||
/* SDC2: CLK -> 4, CMD -> 5, DATA -> 6 */
|
|
||||||
sdc1_clk_on: clk-on {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_clk";
|
|
||||||
bias-disable = <0>; /* No pull */
|
|
||||||
drive-strength = <16>; /* 16mA */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_clk_off: clk-off {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_clk";
|
|
||||||
bias-disable = <0>; /* No pull */
|
|
||||||
drive-strength = <2>; /* 2mA */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_cmd_on: cmd-on {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_cmd";
|
|
||||||
bias-pull-up;
|
|
||||||
drive-strength = <8>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_cmd_off: cmd-off {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_cmd";
|
|
||||||
bias-pull-up = <0x3>; /* same as 3.10 ?? */
|
|
||||||
drive-strength = <2>; /* 2mA */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_data_on: data-on {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_data";
|
|
||||||
bias-pull-up;
|
|
||||||
drive-strength = <8>; /* 8mA */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_data_off: data-off {
|
|
||||||
pinconf {
|
|
||||||
pins = "sdc1_data";
|
|
||||||
bias-pull-up;
|
|
||||||
drive-strength = <2>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_rclk_on: rclk-on {
|
|
||||||
bias-pull-down; /* pull down */
|
|
||||||
};
|
|
||||||
|
|
||||||
sdc1_rclk_off: rclk-off {
|
|
||||||
bias-pull-down; /* pull down */
|
|
||||||
};
|
|
||||||
};
|
|
364
arch/arm64/boot/dts/qcom/msm8992-xiaomi-libra.dts
Normal file
364
arch/arm64/boot/dts/qcom/msm8992-xiaomi-libra.dts
Normal file
@@ -0,0 +1,364 @@
|
|||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020, Konrad Dybcio
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "msm8992.dtsi"
|
||||||
|
#include "pm8994.dtsi"
|
||||||
|
#include "pmi8994.dtsi"
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/gpio-keys.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Xiaomi Mi 4C";
|
||||||
|
compatible = "xiaomi,libra", "qcom,msm8992";
|
||||||
|
/* required for bootloader to select correct board */
|
||||||
|
qcom,msm-id = <251 0 252 0>;
|
||||||
|
qcom,pmic-id = <65545 65546 0 0>;
|
||||||
|
qcom,board-id = <12 0>;
|
||||||
|
|
||||||
|
/* This enables graphical output via bootloader-enabled display */
|
||||||
|
chosen {
|
||||||
|
bootargs = "earlycon=tty0 console=tty0";
|
||||||
|
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
|
||||||
|
framebuffer0: framebuffer@3404000 {
|
||||||
|
status= "okay";
|
||||||
|
compatible = "simple-framebuffer";
|
||||||
|
reg = <0 0x3404000 0 (1080 * 1920 * 3)>;
|
||||||
|
width = <1080>;
|
||||||
|
height = <1920>;
|
||||||
|
stride = <(1080 * 3)>;
|
||||||
|
format = "r8g8b8";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
input-name = "gpio-keys";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
autorepeat;
|
||||||
|
|
||||||
|
button@0 {
|
||||||
|
label = "Volume Up";
|
||||||
|
gpios = <&pm8994_gpios 3 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
linux,code = <KEY_VOLUMEUP>;
|
||||||
|
wakeup-source;
|
||||||
|
debounce-interval = <15>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
reserved-memory {
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
|
||||||
|
/* This is for getting crash logs using Android downstream kernels */
|
||||||
|
ramoops@dfc00000 {
|
||||||
|
compatible = "ramoops";
|
||||||
|
reg = <0x0 0xdfc00000 0x0 0x40000>;
|
||||||
|
console-size = <0x10000>;
|
||||||
|
record-size = <0x10000>;
|
||||||
|
ftrace-size = <0x10000>;
|
||||||
|
pmsg-size = <0x20000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
continuous_splash: framebuffer@3401000{
|
||||||
|
reg = <0x0 0x3401000 0x0 0x2200000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
dfps_data_mem: dfps_data_mem@3400000 {
|
||||||
|
reg = <0x0 0x3400000 0x0 0x1000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
peripheral_region: peripheral_region@7400000 {
|
||||||
|
reg = <0x0 0x7400000 0x0 0x1c00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
modem_region: modem_region@9000000 {
|
||||||
|
reg = <0x0 0x9000000 0x0 0x5a00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
tzapp: modem_region@ea00000 {
|
||||||
|
reg = <0x0 0xea00000 0x0 0x1900000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c2 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* Atmel or Synaptics touchscreen */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c5 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* Silabs si4705 FM transmitter */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c6 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* NCI NFC,
|
||||||
|
* TI USB320 Type-C controller,
|
||||||
|
* Pericom 30216a USB (de)mux switch
|
||||||
|
*/
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c7 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* cm36686 proximity and ambient light sensor */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c13 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* ST lsm6db0 gyro/accelerometer */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp2_uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&rpm_requests {
|
||||||
|
pm8994-regulators {
|
||||||
|
compatible = "qcom,rpm-pm8994-regulators";
|
||||||
|
|
||||||
|
vdd_l1-supply = <&pm8994_s7>;
|
||||||
|
vdd_l2_26_28-supply = <&pm8994_s3>;
|
||||||
|
vdd_l3_11-supply = <&pm8994_s3>;
|
||||||
|
vdd_l4_27_31-supply = <&pm8994_s3>;
|
||||||
|
vdd_l5_7-supply = <&pm8994_s3>;
|
||||||
|
vdd_l6_12_32-supply = <&pm8994_s5>;
|
||||||
|
vdd_l8_16_30-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l9_10_18_22-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l13_19_23_24-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l14_15-supply = <&pm8994_s5>;
|
||||||
|
vdd_l17_29-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l20_21-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l25-supply = <&pm8994_s5>;
|
||||||
|
vdd_lvs1_2 = <&pm8994_s4>;
|
||||||
|
|
||||||
|
pm8994_s1: s1 {
|
||||||
|
/* unused */
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s2: s2 {
|
||||||
|
/* unused */
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s3: s3 {
|
||||||
|
regulator-min-microvolt = <1300000>;
|
||||||
|
regulator-max-microvolt = <1300000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s4: s4 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-allow-set-load;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-system-load = <325000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s5: s5 {
|
||||||
|
regulator-min-microvolt = <2150000>;
|
||||||
|
regulator-max-microvolt = <2150000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_s7: s7 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l1: l1 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l2: l2 {
|
||||||
|
regulator-min-microvolt = <1250000>;
|
||||||
|
regulator-max-microvolt = <1250000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l3: l3 {
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l4: l4 {
|
||||||
|
regulator-min-microvolt = <1225000>;
|
||||||
|
regulator-max-microvolt = <1225000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l5: l5 {
|
||||||
|
/* unused */
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l6: l6 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l7: l7 {
|
||||||
|
/* unused */
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l8: l8 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l9: l9 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l10: l10 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l11: l11 {
|
||||||
|
regulator-min-microvolt = <1200000>;
|
||||||
|
regulator-max-microvolt = <1200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l12: l12 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l13: l13 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <2950000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l14: l14 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l15: l15 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l16: l16 {
|
||||||
|
regulator-min-microvolt = <2700000>;
|
||||||
|
regulator-max-microvolt = <2700000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l17: l17 {
|
||||||
|
regulator-min-microvolt = <2700000>;
|
||||||
|
regulator-max-microvolt = <2700000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l18: l18 {
|
||||||
|
regulator-min-microvolt = <2850000>;
|
||||||
|
regulator-max-microvolt = <2850000>;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l19: l19 {
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l20: l20 {
|
||||||
|
regulator-min-microvolt = <2950000>;
|
||||||
|
regulator-max-microvolt = <2950000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-allow-set-load;
|
||||||
|
regulator-system-load = <570000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l21: l21 {
|
||||||
|
regulator-min-microvolt = <2950000>;
|
||||||
|
regulator-max-microvolt = <2950000>;
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l22: l22 {
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l23: l23 {
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l24: l24 {
|
||||||
|
regulator-min-microvolt = <3075000>;
|
||||||
|
regulator-max-microvolt = <3150000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l25: l25 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l26: l26 {
|
||||||
|
regulator-min-microvolt = <987500>;
|
||||||
|
regulator-max-microvolt = <987500>;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l27: l27 {
|
||||||
|
regulator-min-microvolt = <1050000>;
|
||||||
|
regulator-max-microvolt = <1050000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l28: l28 {
|
||||||
|
regulator-min-microvolt = <1000000>;
|
||||||
|
regulator-max-microvolt = <1000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l29: l29 {
|
||||||
|
regulator-min-microvolt = <2800000>;
|
||||||
|
regulator-max-microvolt = <2800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l30: l30 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l31: l31 {
|
||||||
|
regulator-min-microvolt = <1262500>;
|
||||||
|
regulator-max-microvolt = <1262500>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pm8994_l32: l32 {
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc_1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
mmc-hs400-1_8v;
|
||||||
|
vmmc-supply = <&pm8994_l20>;
|
||||||
|
vqmmc-supply = <&pm8994_s4>;
|
||||||
|
};
|
@@ -6,10 +6,6 @@
|
|||||||
#include <dt-bindings/clock/qcom,gcc-msm8994.h>
|
#include <dt-bindings/clock/qcom,gcc-msm8994.h>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Qualcomm Technologies, Inc. MSM 8992";
|
|
||||||
compatible = "qcom,msm8992";
|
|
||||||
// msm-id needed by bootloader for selecting correct blob
|
|
||||||
qcom,msm-id = <251 0>, <252 0>;
|
|
||||||
interrupt-parent = <&intc>;
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
@@ -20,55 +16,139 @@
|
|||||||
cpus {
|
cpus {
|
||||||
#address-cells = <2>;
|
#address-cells = <2>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
cpu-map {
|
|
||||||
cluster0 {
|
|
||||||
core0 {
|
|
||||||
cpu = <&CPU0>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
CPU0: cpu@0 {
|
CPU0: cpu@0 {
|
||||||
device_type = "cpu";
|
device_type = "cpu";
|
||||||
compatible = "arm,cortex-a53";
|
compatible = "arm,cortex-a53";
|
||||||
reg = <0x0 0x0>;
|
reg = <0x0 0x0>;
|
||||||
next-level-cache = <&L2_0>;
|
next-level-cache = <&L2_0>;
|
||||||
|
enable-method = "psci";
|
||||||
L2_0: l2-cache {
|
L2_0: l2-cache {
|
||||||
compatible = "cache";
|
compatible = "cache";
|
||||||
cache-level = <2>;
|
cache-level = <2>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CPU1: cpu@1 {
|
||||||
|
device_type = "cpu";
|
||||||
|
compatible = "arm,cortex-a53";
|
||||||
|
reg = <0x0 0x1>;
|
||||||
|
next-level-cache = <&L2_0>;
|
||||||
|
enable-method = "psci";
|
||||||
|
};
|
||||||
|
|
||||||
|
CPU2: cpu@2 {
|
||||||
|
device_type = "cpu";
|
||||||
|
compatible = "arm,cortex-a53";
|
||||||
|
reg = <0x0 0x2>;
|
||||||
|
next-level-cache = <&L2_0>;
|
||||||
|
enable-method = "psci";
|
||||||
|
};
|
||||||
|
|
||||||
|
CPU3: cpu@3 {
|
||||||
|
device_type = "cpu";
|
||||||
|
compatible = "arm,cortex-a53";
|
||||||
|
reg = <0x0 0x3>;
|
||||||
|
next-level-cache = <&L2_0>;
|
||||||
|
enable-method = "psci";
|
||||||
|
};
|
||||||
|
|
||||||
|
CPU4: cpu@100 {
|
||||||
|
device_type = "cpu";
|
||||||
|
compatible = "arm,cortex-a57";
|
||||||
|
reg = <0x0 0x100>;
|
||||||
|
next-level-cache = <&L2_1>;
|
||||||
|
enable-method = "psci";
|
||||||
|
L2_1: l2-cache {
|
||||||
|
compatible = "cache";
|
||||||
|
cache-level = <2>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
CPU5: cpu@101 {
|
||||||
|
device_type = "cpu";
|
||||||
|
compatible = "arm,cortex-a57";
|
||||||
|
reg = <0x0 0x101>;
|
||||||
|
next-level-cache = <&L2_1>;
|
||||||
|
enable-method = "psci";
|
||||||
|
};
|
||||||
|
|
||||||
|
cpu-map {
|
||||||
|
cluster0 {
|
||||||
|
core0 {
|
||||||
|
cpu = <&CPU0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
core1 {
|
||||||
|
cpu = <&CPU1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
core2 {
|
||||||
|
cpu = <&CPU2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
core3 {
|
||||||
|
cpu = <&CPU3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cluster1 {
|
||||||
|
core0 {
|
||||||
|
cpu = <&CPU4>;
|
||||||
|
};
|
||||||
|
|
||||||
|
core1 {
|
||||||
|
cpu = <&CPU5>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
timer {
|
clocks {
|
||||||
compatible = "arm,armv8-timer";
|
xo_board: xo_board {
|
||||||
interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
compatible = "fixed-clock";
|
||||||
<GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
#clock-cells = <0>;
|
||||||
<GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
clock-frequency = <19200000>;
|
||||||
<GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
|
};
|
||||||
|
|
||||||
|
sleep_clk: sleep_clk {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
clock-frequency = <32768>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xo_board: xo_board {
|
firmware {
|
||||||
compatible = "fixed-clock";
|
scm {
|
||||||
#clock-cells = <0>;
|
compatible = "qcom,scm-msm8994", "qcom,scm";
|
||||||
clock-frequency = <19200000>;
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
sleep_clk: sleep_clk {
|
memory {
|
||||||
compatible = "fixed-clock";
|
device_type = "memory";
|
||||||
#clock-cells = <0>;
|
/* We expect the bootloader to fill in the reg */
|
||||||
clock-frequency = <32768>;
|
reg = <0 0 0 0>;
|
||||||
};
|
};
|
||||||
|
|
||||||
vreg_vph_pwr: vreg-vph-pwr {
|
pmu {
|
||||||
compatible = "regulator-fixed";
|
compatible = "arm,cortex-a53-pmu";
|
||||||
status = "okay";
|
interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4)| IRQ_TYPE_LEVEL_HIGH)>;
|
||||||
regulator-name = "vph-pwr";
|
};
|
||||||
|
|
||||||
regulator-min-microvolt = <3600000>;
|
psci {
|
||||||
regulator-max-microvolt = <3600000>;
|
compatible = "arm,psci-0.2";
|
||||||
|
method = "hvc";
|
||||||
|
};
|
||||||
|
|
||||||
regulator-always-on;
|
reserved-memory {
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
|
||||||
|
smem_region: smem@6a00000 {
|
||||||
|
reg = <0x0 0x6a00000 0x0 0x200000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
sfpb_mutex: hwmutex {
|
sfpb_mutex: hwmutex {
|
||||||
@@ -98,9 +178,10 @@
|
|||||||
<0xf9002000 0x1000>;
|
<0xf9002000 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
apcs: syscon@f900d000 {
|
apcs: mailbox@f900d000 {
|
||||||
compatible = "syscon";
|
compatible = "qcom,msm8994-apcs-kpss-global", "syscon";
|
||||||
reg = <0xf900d000 0x2000>;
|
reg = <0xf900d000 0x2000>;
|
||||||
|
#mbox-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
timer@f9020000 {
|
timer@f9020000 {
|
||||||
@@ -161,52 +242,19 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
restart@fc4ab000 {
|
sdhc_1: sdhci@f9824900 {
|
||||||
compatible = "qcom,pshold";
|
|
||||||
reg = <0xfc4ab000 0x4>;
|
|
||||||
};
|
|
||||||
|
|
||||||
msmgpio: pinctrl@fd510000 {
|
|
||||||
compatible = "qcom,msm8994-pinctrl";
|
|
||||||
reg = <0xfd510000 0x4000>;
|
|
||||||
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
|
|
||||||
gpio-controller;
|
|
||||||
gpio-ranges = <&msmgpio 0 0 146>;
|
|
||||||
#gpio-cells = <2>;
|
|
||||||
interrupt-controller;
|
|
||||||
#interrupt-cells = <2>;
|
|
||||||
};
|
|
||||||
|
|
||||||
blsp1_uart2: serial@f991e000 {
|
|
||||||
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
|
|
||||||
reg = <0xf991e000 0x1000>;
|
|
||||||
interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_LOW>;
|
|
||||||
status = "disabled";
|
|
||||||
clock-names = "core", "iface";
|
|
||||||
clocks = <&clock_gcc GCC_BLSP1_UART2_APPS_CLK>,
|
|
||||||
<&clock_gcc GCC_BLSP1_AHB_CLK>;
|
|
||||||
};
|
|
||||||
|
|
||||||
clock_gcc: clock-controller@fc400000 {
|
|
||||||
compatible = "qcom,gcc-msm8994";
|
|
||||||
#clock-cells = <1>;
|
|
||||||
#reset-cells = <1>;
|
|
||||||
#power-domain-cells = <1>;
|
|
||||||
reg = <0xfc400000 0x2000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
sdhci1: mmc@f9824900 {
|
|
||||||
compatible = "qcom,sdhci-msm-v4";
|
compatible = "qcom,sdhci-msm-v4";
|
||||||
reg = <0xf9824900 0x1a0>, <0xf9824000 0x800>;
|
reg = <0xf9824900 0x1a0>, <0xf9824000 0x800>;
|
||||||
reg-names = "hc_mem", "core_mem";
|
reg-names = "hc_mem", "core_mem";
|
||||||
|
|
||||||
interrupts = <GIC_SPI 123 IRQ_TYPE_NONE>,
|
interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
<GIC_SPI 138 IRQ_TYPE_NONE>;
|
<GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
interrupt-names = "hc_irq", "pwr_irq";
|
interrupt-names = "hc_irq", "pwr_irq";
|
||||||
|
|
||||||
clocks = <&clock_gcc GCC_SDCC1_APPS_CLK>,
|
clocks = <&gcc GCC_SDCC1_APPS_CLK>,
|
||||||
<&clock_gcc GCC_SDCC1_AHB_CLK>;
|
<&gcc GCC_SDCC1_AHB_CLK>,
|
||||||
clock-names = "core", "iface";
|
<&xo_board>;
|
||||||
|
clock-names = "core", "iface", "xo";
|
||||||
|
|
||||||
pinctrl-names = "default", "sleep";
|
pinctrl-names = "default", "sleep";
|
||||||
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on
|
pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on
|
||||||
@@ -216,8 +264,125 @@
|
|||||||
|
|
||||||
regulator-always-on;
|
regulator-always-on;
|
||||||
bus-width = <8>;
|
bus-width = <8>;
|
||||||
mmc-hs400-1_8v;
|
non-removable;
|
||||||
status = "okay";
|
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp1_uart2: serial@f991e000 {
|
||||||
|
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
|
||||||
|
reg = <0xf991e000 0x1000>;
|
||||||
|
interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
clock-names = "core", "iface";
|
||||||
|
clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_AHB_CLK>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&blsp1_uart2_default>;
|
||||||
|
pinctrl-1 = <&blsp1_uart2_sleep>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp_i2c2: i2c@f9924000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
reg = <0xf9924000 0x500>;
|
||||||
|
interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP1_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&i2c2_default>;
|
||||||
|
pinctrl-1 = <&i2c2_sleep>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Somebody was very creative with their numbering scheme downstream... */
|
||||||
|
|
||||||
|
blsp_i2c13: i2c@f9927000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
reg = <0xf9927000 0x500>;
|
||||||
|
interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP1_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&i2c13_default>;
|
||||||
|
pinctrl-1 = <&i2c13_sleep>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp_i2c6: i2c@f9928000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
reg = <0xf9928000 0x500>;
|
||||||
|
interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP1_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&i2c6_default>;
|
||||||
|
pinctrl-1 = <&i2c6_sleep>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp2_uart2: serial@f995e000 {
|
||||||
|
compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
|
||||||
|
reg = <0xf995e000 0x1000>;
|
||||||
|
interrupt = <GIC_SPI 146 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
clock-names = "core", "iface";
|
||||||
|
clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
|
||||||
|
<&gcc GCC_BLSP2_AHB_CLK>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&blsp2_uart2_default>;
|
||||||
|
pinctrl-1 = <&blsp2_uart2_sleep>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp_i2c7: i2c@f9963000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
reg = <0xf9963000 0x500>;
|
||||||
|
interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP2_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&i2c7_default>;
|
||||||
|
pinctrl-1 = <&i2c7_sleep>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp_i2c5: i2c@f9967000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
reg = <0xf9967000 0x500>;
|
||||||
|
interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP2_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <100000>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
|
pinctrl-0 = <&i2c5_default>;
|
||||||
|
pinctrl-1 = <&i2c5_sleep>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
gcc: clock-controller@fc400000 {
|
||||||
|
compatible = "qcom,gcc-msm8994";
|
||||||
|
#clock-cells = <1>;
|
||||||
|
#reset-cells = <1>;
|
||||||
|
#power-domain-cells = <1>;
|
||||||
|
reg = <0xfc400000 0x2000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
rpm_msg_ram: memory@fc428000 {
|
rpm_msg_ram: memory@fc428000 {
|
||||||
@@ -225,27 +390,189 @@
|
|||||||
reg = <0xfc428000 0x4000>;
|
reg = <0xfc428000 0x4000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
restart@fc4ab000 {
|
||||||
|
compatible = "qcom,pshold";
|
||||||
|
reg = <0xfc4ab000 0x4>;
|
||||||
|
};
|
||||||
|
|
||||||
|
spmi_bus: spmi@fc4c0000 {
|
||||||
|
compatible = "qcom,spmi-pmic-arb";
|
||||||
|
reg = <0xfc4cf000 0x1000>,
|
||||||
|
<0xfc4cb000 0x1000>,
|
||||||
|
<0xfc4ca000 0x1000>;
|
||||||
|
reg-names = "core", "intr", "cnfg";
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
|
||||||
sfpb_mutex_regs: syscon@fd484000 {
|
sfpb_mutex_regs: syscon@fd484000 {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
compatible = "syscon";
|
compatible = "syscon";
|
||||||
reg = <0xfd484000 0x400>;
|
reg = <0xfd484000 0x400>;
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
memory {
|
tlmm: pinctrl@fd510000 {
|
||||||
device_type = "memory";
|
compatible = "qcom,msm8994-pinctrl";
|
||||||
reg = <0 0 0 0>; // bootloader will update
|
reg = <0xfd510000 0x4000>;
|
||||||
};
|
interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
gpio-controller;
|
||||||
|
gpio-ranges = <&tlmm 0 0 146>;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
interrupt-controller;
|
||||||
|
#interrupt-cells = <2>;
|
||||||
|
|
||||||
reserved-memory {
|
blsp1_uart2_default: blsp1-uart2-default {
|
||||||
#address-cells = <2>;
|
function = "blsp_uart2";
|
||||||
#size-cells = <2>;
|
pins = "gpio4", "gpio5";
|
||||||
ranges;
|
drive-strength = <16>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
smem_region: smem@6a00000 {
|
blsp1_uart2_sleep: blsp1-uart2-sleep {
|
||||||
reg = <0x0 0x6a00000 0x0 0x200000>;
|
function = "gpio";
|
||||||
no-map;
|
pins = "gpio4", "gpio5";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp2_uart2_default: blsp2-uart2-default {
|
||||||
|
function = "blsp_uart8";
|
||||||
|
pins = "gpio45", "gpio46", "gpio47", "gpio48";
|
||||||
|
drive-strength = <16>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp2_uart2_sleep: blsp2-uart2-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio45", "gpio46", "gpio47", "gpio48";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_clk_on: clk-on {
|
||||||
|
pins = "sdc1_clk";
|
||||||
|
bias-disable;
|
||||||
|
drive-strength = <6>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_clk_off: clk-off {
|
||||||
|
pins = "sdc1_clk";
|
||||||
|
bias-disable;
|
||||||
|
drive-strength = <2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_cmd_on: cmd-on {
|
||||||
|
pins = "sdc1_cmd";
|
||||||
|
bias-pull-up;
|
||||||
|
drive-strength = <6>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_cmd_off: cmd-off {
|
||||||
|
pins = "sdc1_cmd";
|
||||||
|
bias-pull-up;
|
||||||
|
drive-strength = <2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_data_on: data-on {
|
||||||
|
pins = "sdc1_data";
|
||||||
|
bias-pull-up;
|
||||||
|
drive-strength = <6>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_data_off: data-off {
|
||||||
|
pins = "sdc1_data";
|
||||||
|
bias-pull-up;
|
||||||
|
drive-strength = <2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_rclk_on: rclk-on {
|
||||||
|
pins = "sdc1_rclk";
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc1_rclk_off: rclk-off {
|
||||||
|
pins = "sdc1_rclk";
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c2_default: i2c2-default {
|
||||||
|
function = "blsp_i2c2";
|
||||||
|
pins = "gpio6", "gpio7";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c2_sleep: i2c2-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio6", "gpio7";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c5_default: i2c5-default {
|
||||||
|
/* Don't be fooled! Nobody knows the reason why though... */
|
||||||
|
function = "blsp_i2c11";
|
||||||
|
pins = "gpio83", "gpio84";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c5_sleep: i2c5-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio83", "gpio84";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c6_default: i2c6-default {
|
||||||
|
function = "blsp_i2c6";
|
||||||
|
pins = "gpio28", "gpio27";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c6_sleep: i2c6-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio28", "gpio27";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c7_default: i2c7-default {
|
||||||
|
function = "blsp_i2c7";
|
||||||
|
pins = "gpio43", "gpio44";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c7_sleep: i2c7-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio43", "gpio44";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c13_default: i2c13-default {
|
||||||
|
/* Not a typo either. */
|
||||||
|
function = "blsp_i2c5";
|
||||||
|
pins = "gpio23", "gpio24";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c13_sleep: i2c13-sleep {
|
||||||
|
function = "gpio";
|
||||||
|
pins = "gpio23", "gpio24";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -258,58 +585,35 @@
|
|||||||
qcom,local-pid = <0>;
|
qcom,local-pid = <0>;
|
||||||
qcom,remote-pid = <6>;
|
qcom,remote-pid = <6>;
|
||||||
|
|
||||||
rpm-requests {
|
rpm_requests: rpm-requests {
|
||||||
compatible = "qcom,rpm-msm8994";
|
compatible = "qcom,rpm-msm8994";
|
||||||
qcom,smd-channels = "rpm_requests";
|
qcom,smd-channels = "rpm_requests";
|
||||||
|
|
||||||
pm8994-regulators {
|
rpmcc: rpmcc {
|
||||||
compatible = "qcom,rpm-pm8994-regulators";
|
compatible = "qcom,rpmcc-msm8992";
|
||||||
|
#clock-cells = <1>;
|
||||||
pm8994_s1: s1 {};
|
|
||||||
pm8994_s2: s2 {};
|
|
||||||
pm8994_s3: s3 {};
|
|
||||||
pm8994_s4: s4 {};
|
|
||||||
pm8994_s5: s5 {};
|
|
||||||
pm8994_s6: s6 {};
|
|
||||||
pm8994_s7: s7 {};
|
|
||||||
|
|
||||||
pm8994_l1: l1 {};
|
|
||||||
pm8994_l2: l2 {};
|
|
||||||
pm8994_l3: l3 {};
|
|
||||||
pm8994_l4: l4 {};
|
|
||||||
pm8994_l6: l6 {};
|
|
||||||
pm8994_l8: l8 {};
|
|
||||||
pm8994_l9: l9 {};
|
|
||||||
pm8994_l10: l10 {};
|
|
||||||
pm8994_l11: l11 {};
|
|
||||||
pm8994_l12: l12 {};
|
|
||||||
pm8994_l13: l13 {};
|
|
||||||
pm8994_l14: l14 {};
|
|
||||||
pm8994_l15: l15 {};
|
|
||||||
pm8994_l16: l16 {};
|
|
||||||
pm8994_l17: l17 {};
|
|
||||||
pm8994_l18: l18 {};
|
|
||||||
pm8994_l19: l19 {};
|
|
||||||
pm8994_l20: l20 {};
|
|
||||||
pm8994_l21: l21 {};
|
|
||||||
pm8994_l22: l22 {};
|
|
||||||
pm8994_l23: l23 {};
|
|
||||||
pm8994_l24: l24 {};
|
|
||||||
pm8994_l25: l25 {};
|
|
||||||
pm8994_l26: l26 {};
|
|
||||||
pm8994_l27: l27 {};
|
|
||||||
pm8994_l28: l28 {};
|
|
||||||
pm8994_l29: l29 {};
|
|
||||||
pm8994_l30: l30 {};
|
|
||||||
pm8994_l31: l31 {};
|
|
||||||
pm8994_l32: l32 {};
|
|
||||||
|
|
||||||
pm8994_lvs1: lvs1 {};
|
|
||||||
pm8994_lvs2: lvs2 {};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
timer {
|
||||||
|
compatible = "arm,armv8-timer";
|
||||||
|
interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
||||||
|
<GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vreg_vph_pwr: vreg-vph-pwr {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
status = "okay";
|
||||||
|
regulator-name = "vph-pwr";
|
||||||
|
|
||||||
|
regulator-min-microvolt = <3600000>;
|
||||||
|
regulator-max-microvolt = <3600000>;
|
||||||
|
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
#include "msm8992-pins.dtsi"
|
|
||||||
|
@@ -1,268 +0,0 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
|
||||||
/* Copyright (c) 2015, LGE Inc. All rights reserved.
|
|
||||||
* Copyright (c) 2016, The Linux Foundation. All rights reserved.
|
|
||||||
*/
|
|
||||||
|
|
||||||
&smd_rpm {
|
|
||||||
rpm {
|
|
||||||
rpm_requests {
|
|
||||||
pm8994-regulators {
|
|
||||||
|
|
||||||
vdd_l1-supply = <&pm8994_s1>;
|
|
||||||
vdd_l2_26_28-supply = <&pm8994_s3>;
|
|
||||||
vdd_l3_11-supply = <&pm8994_s3>;
|
|
||||||
vdd_l4_27_31-supply = <&pm8994_s3>;
|
|
||||||
vdd_l5_7-supply = <&pm8994_s3>;
|
|
||||||
vdd_l6_12_32-supply = <&pm8994_s5>;
|
|
||||||
vdd_l8_16_30-supply = <&vreg_vph_pwr>;
|
|
||||||
vdd_l9_10_18_22-supply = <&vreg_vph_pwr>;
|
|
||||||
vdd_l13_19_23_24-supply = <&vreg_vph_pwr>;
|
|
||||||
vdd_l14_15-supply = <&pm8994_s5>;
|
|
||||||
vdd_l17_29-supply = <&vreg_vph_pwr>;
|
|
||||||
vdd_l20_21-supply = <&vreg_vph_pwr>;
|
|
||||||
vdd_l25-supply = <&pm8994_s5>;
|
|
||||||
vdd_lvs1_2 = <&pm8994_s4>;
|
|
||||||
|
|
||||||
s1 {
|
|
||||||
regulator-min-microvolt = <800000>;
|
|
||||||
regulator-max-microvolt = <800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
s2 {
|
|
||||||
/* TODO */
|
|
||||||
};
|
|
||||||
|
|
||||||
s3 {
|
|
||||||
regulator-min-microvolt = <1300000>;
|
|
||||||
regulator-max-microvolt = <1300000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
s4 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
regulator-allow-set-load;
|
|
||||||
regulator-system-load = <325000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
s5 {
|
|
||||||
regulator-min-microvolt = <2150000>;
|
|
||||||
regulator-max-microvolt = <2150000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
s7 {
|
|
||||||
regulator-min-microvolt = <1000000>;
|
|
||||||
regulator-max-microvolt = <1000000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l1 {
|
|
||||||
regulator-min-microvolt = <1000000>;
|
|
||||||
regulator-max-microvolt = <1000000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l2 {
|
|
||||||
regulator-min-microvolt = <1250000>;
|
|
||||||
regulator-max-microvolt = <1250000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l3 {
|
|
||||||
regulator-min-microvolt = <1200000>;
|
|
||||||
regulator-max-microvolt = <1200000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l4 {
|
|
||||||
regulator-min-microvolt = <1225000>;
|
|
||||||
regulator-max-microvolt = <1225000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l5 {
|
|
||||||
/* TODO */
|
|
||||||
};
|
|
||||||
|
|
||||||
l6 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l7 {
|
|
||||||
/* TODO */
|
|
||||||
};
|
|
||||||
|
|
||||||
l8 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l9 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l10 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l11 {
|
|
||||||
regulator-min-microvolt = <1200000>;
|
|
||||||
regulator-max-microvolt = <1200000>;
|
|
||||||
qcom,init-voltage = <1200000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l12 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
proxy-supply = <&pm8994_l12>;
|
|
||||||
qcom,proxy-consumer-enable;
|
|
||||||
qcom,proxy-consumer-current = <10000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l13 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <2950000>;
|
|
||||||
qcom,init-voltage = <2950000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l14 {
|
|
||||||
regulator-min-microvolt = <1200000>;
|
|
||||||
regulator-max-microvolt = <1200000>;
|
|
||||||
qcom,init-voltage = <1200000>;
|
|
||||||
proxy-supply = <&pm8994_l14>;
|
|
||||||
qcom,proxy-consumer-enable;
|
|
||||||
qcom,proxy-consumer-current = <10000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l15 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l16 {
|
|
||||||
regulator-min-microvolt = <2700000>;
|
|
||||||
regulator-max-microvolt = <2700000>;
|
|
||||||
qcom,init-voltage = <2700000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l17 {
|
|
||||||
regulator-min-microvolt = <2700000>;
|
|
||||||
regulator-max-microvolt = <2700000>;
|
|
||||||
qcom,init-voltage = <2700000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l18 {
|
|
||||||
regulator-min-microvolt = <3000000>;
|
|
||||||
regulator-max-microvolt = <3000000>;
|
|
||||||
regulator-always-on;
|
|
||||||
qcom,init-voltage = <3000000>;
|
|
||||||
qcom,init-ldo-mode = <1>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l19 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
l20 {
|
|
||||||
regulator-min-microvolt = <2950000>;
|
|
||||||
regulator-max-microvolt = <2950000>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
regulator-allow-set-load;
|
|
||||||
regulator-system-load = <570000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l21 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
regulator-always-on;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l22 {
|
|
||||||
regulator-min-microvolt = <3100000>;
|
|
||||||
regulator-max-microvolt = <3100000>;
|
|
||||||
qcom,init-voltage = <3100000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l23 {
|
|
||||||
regulator-min-microvolt = <2800000>;
|
|
||||||
regulator-max-microvolt = <2800000>;
|
|
||||||
qcom,init-voltage = <2800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l24 {
|
|
||||||
regulator-min-microvolt = <3075000>;
|
|
||||||
regulator-max-microvolt = <3150000>;
|
|
||||||
qcom,init-voltage = <3075000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l25 {
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l26 {
|
|
||||||
/* TODO: value from downstream
|
|
||||||
regulator-min-microvolt = <987500>;
|
|
||||||
fails to apply */
|
|
||||||
};
|
|
||||||
|
|
||||||
l27 {
|
|
||||||
regulator-min-microvolt = <1050000>;
|
|
||||||
regulator-max-microvolt = <1050000>;
|
|
||||||
qcom,init-voltage = <1050000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l28 {
|
|
||||||
regulator-min-microvolt = <1000000>;
|
|
||||||
regulator-max-microvolt = <1000000>;
|
|
||||||
qcom,init-voltage = <1000000>;
|
|
||||||
proxy-supply = <&pm8994_l28>;
|
|
||||||
qcom,proxy-consumer-enable;
|
|
||||||
qcom,proxy-consumer-current = <10000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l29 {
|
|
||||||
/* TODO: Unsupported voltage range.
|
|
||||||
regulator-min-microvolt = <2800000>;
|
|
||||||
regulator-max-microvolt = <2800000>;
|
|
||||||
qcom,init-voltage = <2800000>;
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
|
|
||||||
l30 {
|
|
||||||
/* TODO: get this verified
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
|
|
||||||
l31 {
|
|
||||||
regulator-min-microvolt = <1262500>;
|
|
||||||
regulator-max-microvolt = <1262500>;
|
|
||||||
qcom,init-voltage = <1262500>;
|
|
||||||
};
|
|
||||||
|
|
||||||
l32 {
|
|
||||||
/* TODO: get this verified
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <1800000>;
|
|
||||||
qcom,init-voltage = <1800000>;
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
@@ -0,0 +1,13 @@
|
|||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020, Konrad Dybcio
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "msm8994-sony-xperia-kitakami.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Sony Xperia Z5";
|
||||||
|
compatible = "sony,sumire-row", "qcom,msm8994";
|
||||||
|
};
|
235
arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami.dtsi
Normal file
235
arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami.dtsi
Normal file
@@ -0,0 +1,235 @@
|
|||||||
|
// SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020, Konrad Dybcio
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "msm8994.dtsi"
|
||||||
|
#include "pm8994.dtsi"
|
||||||
|
#include "pmi8994.dtsi"
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/gpio-keys.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
/* required for bootloader to select correct board */
|
||||||
|
qcom,msm-id = <0xcf 0x20001>;
|
||||||
|
qcom,pmic-id = <0x10009 0x1000a 0x00 0x00>;
|
||||||
|
qcom,board-id = <8 0>;
|
||||||
|
|
||||||
|
/* Kitakami firmware doesn't support PSCI */
|
||||||
|
/delete-node/ psci;
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
input-name = "gpio-keys";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
autorepeat;
|
||||||
|
|
||||||
|
button@0 {
|
||||||
|
label = "Volume Down";
|
||||||
|
gpios = <&pm8994_gpios 2 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
linux,code = <KEY_VOLUMEDOWN>;
|
||||||
|
wakeup-source;
|
||||||
|
debounce-interval = <15>;
|
||||||
|
};
|
||||||
|
|
||||||
|
button@1 {
|
||||||
|
label = "Volume Up";
|
||||||
|
gpios = <&pm8994_gpios 3 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
linux,code = <KEY_VOLUMEUP>;
|
||||||
|
wakeup-source;
|
||||||
|
debounce-interval = <15>;
|
||||||
|
};
|
||||||
|
|
||||||
|
button@2 {
|
||||||
|
label = "Camera Snapshot";
|
||||||
|
gpios = <&pm8994_gpios 4 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
linux,code = <KEY_CAMERA>;
|
||||||
|
wakeup-source;
|
||||||
|
debounce-interval = <15>;
|
||||||
|
};
|
||||||
|
|
||||||
|
button@3 {
|
||||||
|
label = "Camera Focus";
|
||||||
|
gpios = <&pm8994_gpios 5 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
linux,code = <KEY_VOLUMEUP>;
|
||||||
|
wakeup-source;
|
||||||
|
debounce-interval = <15>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
reserved-memory {
|
||||||
|
#address-cells = <2>;
|
||||||
|
#size-cells = <2>;
|
||||||
|
ranges;
|
||||||
|
|
||||||
|
/* This is for getting crash logs using Android downstream kernels */
|
||||||
|
ramoops@1fe00000 {
|
||||||
|
compatible = "ramoops";
|
||||||
|
reg = <0x0 0x1fe00000 0x0 0x200000>;
|
||||||
|
console-size = <0x100000>;
|
||||||
|
record-size = <0x10000>;
|
||||||
|
ftrace-size = <0x10000>;
|
||||||
|
pmsg-size = <0x80000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
continuous_splash: framebuffer@3401000{
|
||||||
|
reg = <0x0 0x3401000 0x0 0x2200000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
dfps_data_mem: dfps_data_mem@3400000 {
|
||||||
|
reg = <0x0 0x3400000 0x0 0x1000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
peripheral_region: peripheral_region@7400000 {
|
||||||
|
reg = <0x0 0x7400000 0x0 0x1c00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
modem_region: modem_region@9000000 {
|
||||||
|
reg = <0x0 0x9000000 0x0 0x5a00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
tzapp: modem_region@ea00000 {
|
||||||
|
reg = <0x0 0xea00000 0x0 0x1900000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
fb_region: fb_region@40000000 {
|
||||||
|
reg = <0x00 0x40000000 0x00 0x1000000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_spi0 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* FPC fingerprint reader */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* I2C1 is disabled on this board */
|
||||||
|
|
||||||
|
&blsp_i2c2 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* NXP NFC */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c4 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* Empty but active */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c5 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* SMB1357 charger and sii8620 HDMI/MHL bridge */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp_i2c6 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* Synaptics touchscreen */
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp2_uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&rpm_requests {
|
||||||
|
pm8994_regulators: pm8994-regulators {
|
||||||
|
compatible = "qcom,rpm-pm8994-regulators";
|
||||||
|
vdd_l1-supply = <&pm8994_s1>;
|
||||||
|
vdd_l2_26_28-supply = <&pm8994_s3>;
|
||||||
|
vdd_l3_11-supply = <&pm8994_s3>;
|
||||||
|
vdd_l4_27_31-supply = <&pm8994_s3>;
|
||||||
|
vdd_l5_7-supply = <&pm8994_s3>;
|
||||||
|
vdd_l6_12_32-supply = <&pm8994_s5>;
|
||||||
|
vdd_l8_16_30-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l9_10_18_22-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l13_19_23_24-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l14_15-supply = <&pm8994_s5>;
|
||||||
|
vdd_l17_29-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l20_21-supply = <&vreg_vph_pwr>;
|
||||||
|
vdd_l25-supply = <&pm8994_s5>;
|
||||||
|
vdd_lvs1_2 = <&pm8994_s4>;
|
||||||
|
|
||||||
|
pm8994_s1: s1 {};
|
||||||
|
pm8994_s2: s2 {};
|
||||||
|
pm8994_s3: s3 {};
|
||||||
|
pm8994_s4: s4 {};
|
||||||
|
pm8994_s5: s5 {};
|
||||||
|
pm8994_s6: s6 {};
|
||||||
|
pm8994_s7: s7 {};
|
||||||
|
|
||||||
|
pm8994_l1: l1 {};
|
||||||
|
pm8994_l2: l2 {};
|
||||||
|
pm8994_l3: l3 {};
|
||||||
|
pm8994_l4: l4 {};
|
||||||
|
pm8994_l6: l6 {};
|
||||||
|
pm8994_l8: l8 {};
|
||||||
|
pm8994_l9: l9 {};
|
||||||
|
pm8994_l10: l10 {};
|
||||||
|
pm8994_l11: l11 {};
|
||||||
|
pm8994_l12: l12 {};
|
||||||
|
pm8994_l13: l13 {};
|
||||||
|
pm8994_l14: l14 {};
|
||||||
|
pm8994_l15: l15 {};
|
||||||
|
pm8994_l16: l16 {};
|
||||||
|
pm8994_l17: l17 {};
|
||||||
|
pm8994_l18: l18 {};
|
||||||
|
pm8994_l19: l19 {};
|
||||||
|
pm8994_l20: l20 {};
|
||||||
|
pm8994_l21: l21 {};
|
||||||
|
pm8994_l22: l22 {};
|
||||||
|
pm8994_l23: l23 {};
|
||||||
|
pm8994_l24: l24 {};
|
||||||
|
pm8994_l25: l25 {};
|
||||||
|
pm8994_l26: l26 {};
|
||||||
|
pm8994_l27: l27 {};
|
||||||
|
pm8994_l28: l28 {};
|
||||||
|
pm8994_l29: l29 {};
|
||||||
|
pm8994_l30: l30 {};
|
||||||
|
pm8994_l31: l31 {};
|
||||||
|
pm8994_l32: l32 {};
|
||||||
|
|
||||||
|
pm8994_lvs1: lvs1 {};
|
||||||
|
pm8994_lvs2: lvs2 {};
|
||||||
|
};
|
||||||
|
|
||||||
|
pmi8994_regulators: pmi8994-regulators {
|
||||||
|
compatible = "qcom,rpm-pmi8994-regulators";
|
||||||
|
|
||||||
|
pmi8994_s1: s1 {};
|
||||||
|
pmi8994_s2: s2 {};
|
||||||
|
pmi8994_s3: s3 {};
|
||||||
|
pmi8994_bby: boost-bypass {};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
/* Downstream pushes 2.95V to the sdhci device,
|
||||||
|
* but upstream driver REALLY wants to make vmmc 1.8v
|
||||||
|
* cause of the hs400-1_8v mode. MMC works fine without
|
||||||
|
* that regulator, so let's not use it for now.
|
||||||
|
* vqmmc is also disabled cause driver stll complains.
|
||||||
|
*
|
||||||
|
* vmmc-supply = <&pm8994_l20>;
|
||||||
|
* vqmmc-supply = <&pm8994_s4>;
|
||||||
|
*/
|
||||||
|
};
|
@@ -142,6 +142,12 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
firmware {
|
||||||
|
scm {
|
||||||
|
compatible = "qcom,scm-msm8994", "qcom,scm";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
device_type = "memory";
|
device_type = "memory";
|
||||||
/* We expect the bootloader to fill in the reg */
|
/* We expect the bootloader to fill in the reg */
|
||||||
@@ -169,9 +175,31 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
smd {
|
||||||
|
compatible = "qcom,smd";
|
||||||
|
rpm {
|
||||||
|
interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
|
||||||
|
qcom,ipc = <&apcs 8 0>;
|
||||||
|
qcom,smd-edge = <15>;
|
||||||
|
qcom,local-pid = <0>;
|
||||||
|
qcom,remote-pid = <6>;
|
||||||
|
|
||||||
|
rpm_requests: rpm-requests {
|
||||||
|
compatible = "qcom,rpm-msm8994";
|
||||||
|
qcom,smd-channels = "rpm_requests";
|
||||||
|
|
||||||
|
rpmcc: rpmcc {
|
||||||
|
compatible = "qcom,rpmcc-msm8994";
|
||||||
|
#clock-cells = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
smem {
|
smem {
|
||||||
compatible = "qcom,smem";
|
compatible = "qcom,smem";
|
||||||
memory-region = <&smem_mem>;
|
memory-region = <&smem_mem>;
|
||||||
|
qcom,rpm-msg-ram = <&rpm_msg_ram>;
|
||||||
hwlocks = <&tcsr_mutex 3>;
|
hwlocks = <&tcsr_mutex 3>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -190,6 +218,12 @@
|
|||||||
<0xf9002000 0x1000>;
|
<0xf9002000 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
apcs: mailbox@f900d000 {
|
||||||
|
compatible = "qcom,msm8994-apcs-kpss-global", "syscon";
|
||||||
|
reg = <0xf900d000 0x2000>;
|
||||||
|
#mbox-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
timer@f9020000 {
|
timer@f9020000 {
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
@@ -443,6 +477,11 @@
|
|||||||
reg = <0xfc400000 0x2000>;
|
reg = <0xfc400000 0x2000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
rpm_msg_ram: memory@fc428000 {
|
||||||
|
compatible = "qcom,rpm-msg-ram";
|
||||||
|
reg = <0xfc428000 0x4000>;
|
||||||
|
};
|
||||||
|
|
||||||
restart@fc4ab000 {
|
restart@fc4ab000 {
|
||||||
compatible = "qcom,pshold";
|
compatible = "qcom,pshold";
|
||||||
reg = <0xfc4ab000 0x4>;
|
reg = <0xfc4ab000 0x4>;
|
||||||
@@ -660,5 +699,15 @@
|
|||||||
<GIC_PPI 4 0xff08>,
|
<GIC_PPI 4 0xff08>,
|
||||||
<GIC_PPI 1 0xff08>;
|
<GIC_PPI 1 0xff08>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
vreg_vph_pwr: vreg-vph-pwr {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vph-pwr";
|
||||||
|
|
||||||
|
regulator-min-microvolt = <3600000>;
|
||||||
|
regulator-max-microvolt = <3600000>;
|
||||||
|
|
||||||
|
regulator-always-on;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -288,6 +288,10 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&qfprom {
|
||||||
|
vcc-supply = <&vreg_l11a_1p8>;
|
||||||
|
};
|
||||||
|
|
||||||
&qspi {
|
&qspi {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
|
@@ -658,9 +658,15 @@
|
|||||||
#power-domain-cells = <1>;
|
#power-domain-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
qfprom@784000 {
|
qfprom: efuse@784000 {
|
||||||
compatible = "qcom,qfprom";
|
compatible = "qcom,qfprom";
|
||||||
reg = <0 0x00784000 0 0x8ff>;
|
reg = <0 0x00784000 0 0x8ff>,
|
||||||
|
<0 0x00780000 0 0x7a0>,
|
||||||
|
<0 0x00782000 0 0x100>,
|
||||||
|
<0 0x00786000 0 0x1fff>;
|
||||||
|
|
||||||
|
clocks = <&gcc GCC_SEC_CTRL_CLK_SRC>;
|
||||||
|
clock-names = "core";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
|
|
||||||
@@ -1880,42 +1886,52 @@
|
|||||||
operating-points-v2 = <&gpu_opp_table>;
|
operating-points-v2 = <&gpu_opp_table>;
|
||||||
qcom,gmu = <&gmu>;
|
qcom,gmu = <&gmu>;
|
||||||
|
|
||||||
|
interconnects = <&gem_noc MASTER_GFX3D &mc_virt SLAVE_EBI1>;
|
||||||
|
interconnect-names = "gfx-mem";
|
||||||
|
|
||||||
gpu_opp_table: opp-table {
|
gpu_opp_table: opp-table {
|
||||||
compatible = "operating-points-v2";
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
opp-800000000 {
|
opp-800000000 {
|
||||||
opp-hz = /bits/ 64 <800000000>;
|
opp-hz = /bits/ 64 <800000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
|
opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
|
||||||
|
opp-peak-kBps = <8532000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-650000000 {
|
opp-650000000 {
|
||||||
opp-hz = /bits/ 64 <650000000>;
|
opp-hz = /bits/ 64 <650000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
||||||
|
opp-peak-kBps = <7216000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-565000000 {
|
opp-565000000 {
|
||||||
opp-hz = /bits/ 64 <565000000>;
|
opp-hz = /bits/ 64 <565000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
||||||
|
opp-peak-kBps = <5412000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-430000000 {
|
opp-430000000 {
|
||||||
opp-hz = /bits/ 64 <430000000>;
|
opp-hz = /bits/ 64 <430000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
||||||
|
opp-peak-kBps = <5412000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-355000000 {
|
opp-355000000 {
|
||||||
opp-hz = /bits/ 64 <355000000>;
|
opp-hz = /bits/ 64 <355000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
||||||
|
opp-peak-kBps = <3072000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-267000000 {
|
opp-267000000 {
|
||||||
opp-hz = /bits/ 64 <267000000>;
|
opp-hz = /bits/ 64 <267000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
||||||
|
opp-peak-kBps = <3072000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-180000000 {
|
opp-180000000 {
|
||||||
opp-hz = /bits/ 64 <180000000>;
|
opp-hz = /bits/ 64 <180000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
|
opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
|
||||||
|
opp-peak-kBps = <1804000>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -2121,6 +2137,7 @@
|
|||||||
etr@6048000 {
|
etr@6048000 {
|
||||||
compatible = "arm,coresight-tmc", "arm,primecell";
|
compatible = "arm,coresight-tmc", "arm,primecell";
|
||||||
reg = <0 0x06048000 0 0x1000>;
|
reg = <0 0x06048000 0 0x1000>;
|
||||||
|
iommus = <&apps_smmu 0x04a0 0x20>;
|
||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
@@ -2193,6 +2210,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
qcom,replicator-loses-context;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2220,6 +2238,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2239,6 +2258,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2258,6 +2278,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2277,6 +2298,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2296,6 +2318,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2315,6 +2338,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2334,6 +2358,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2353,6 +2378,7 @@
|
|||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
arm,coresight-loses-context-with-cpu;
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
qcom,skip-power-up;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -2656,6 +2682,7 @@
|
|||||||
snps,dis_enblslpm_quirk;
|
snps,dis_enblslpm_quirk;
|
||||||
phys = <&usb_1_hsphy>, <&usb_1_ssphy>;
|
phys = <&usb_1_hsphy>, <&usb_1_ssphy>;
|
||||||
phy-names = "usb2-phy", "usb3-phy";
|
phy-names = "usb2-phy", "usb3-phy";
|
||||||
|
maximum-speed = "super-speed";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -74,6 +74,17 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hdmi-out {
|
||||||
|
compatible = "hdmi-connector";
|
||||||
|
type = "a";
|
||||||
|
|
||||||
|
port {
|
||||||
|
hdmi_con: endpoint {
|
||||||
|
remote-endpoint = <<9611_out>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
lt9611_1v8: lt9611-vdd18-regulator {
|
lt9611_1v8: lt9611-vdd18-regulator {
|
||||||
compatible = "regulator-fixed";
|
compatible = "regulator-fixed";
|
||||||
regulator-name = "LT9611_1V8";
|
regulator-name = "LT9611_1V8";
|
||||||
@@ -382,6 +393,25 @@
|
|||||||
firmware-name = "qcom/sdm845/cdsp.mdt";
|
firmware-name = "qcom/sdm845/cdsp.mdt";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&dsi0 {
|
||||||
|
status = "okay";
|
||||||
|
vdda-supply = <&vreg_l26a_1p2>;
|
||||||
|
|
||||||
|
ports {
|
||||||
|
port@1 {
|
||||||
|
endpoint {
|
||||||
|
remote-endpoint = <<9611_a>;
|
||||||
|
data-lanes = <0 1 2 3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&dsi0_phy {
|
||||||
|
status = "okay";
|
||||||
|
vdds-supply = <&vreg_l1a_0p875>;
|
||||||
|
};
|
||||||
|
|
||||||
&gcc {
|
&gcc {
|
||||||
protected-clocks = <GCC_QSPI_CORE_CLK>,
|
protected-clocks = <GCC_QSPI_CORE_CLK>,
|
||||||
<GCC_QSPI_CORE_CLK_SRC>,
|
<GCC_QSPI_CORE_CLK_SRC>,
|
||||||
@@ -395,6 +425,48 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&i2c10 {
|
||||||
|
status = "okay";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
|
||||||
|
lt9611_codec: hdmi-bridge@3b {
|
||||||
|
compatible = "lontium,lt9611";
|
||||||
|
reg = <0x3b>;
|
||||||
|
#sound-dai-cells = <1>;
|
||||||
|
|
||||||
|
interrupts-extended = <&tlmm 84 IRQ_TYPE_EDGE_FALLING>;
|
||||||
|
|
||||||
|
reset-gpios = <&tlmm 128 GPIO_ACTIVE_HIGH>;
|
||||||
|
|
||||||
|
vdd-supply = <<9611_1v8>;
|
||||||
|
vcc-supply = <<9611_3v3>;
|
||||||
|
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <<9611_irq_pin>, <&dsi_sw_sel>;
|
||||||
|
|
||||||
|
ports {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
port@0 {
|
||||||
|
reg = <0>;
|
||||||
|
|
||||||
|
lt9611_out: endpoint {
|
||||||
|
remote-endpoint = <&hdmi_con>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
port@1 {
|
||||||
|
reg = <1>;
|
||||||
|
|
||||||
|
lt9611_a: endpoint {
|
||||||
|
remote-endpoint = <&dsi0_out>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
&i2c11 {
|
&i2c11 {
|
||||||
/* On Low speed expansion */
|
/* On Low speed expansion */
|
||||||
label = "LS-I2C1";
|
label = "LS-I2C1";
|
||||||
@@ -407,6 +479,14 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&mdss {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&mdss_mdp {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
&mss_pil {
|
&mss_pil {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
firmware-name = "qcom/sdm845/mba.mbn", "qcom/sdm845/modem.mbn";
|
firmware-name = "qcom/sdm845/mba.mbn", "qcom/sdm845/modem.mbn";
|
||||||
@@ -612,6 +692,21 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hdmi-dai-link {
|
||||||
|
link-name = "HDMI Playback";
|
||||||
|
cpu {
|
||||||
|
sound-dai = <&q6afedai QUATERNARY_MI2S_RX>;
|
||||||
|
};
|
||||||
|
|
||||||
|
platform {
|
||||||
|
sound-dai = <&q6routing>;
|
||||||
|
};
|
||||||
|
|
||||||
|
codec {
|
||||||
|
sound-dai = <<9611_codec 0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
slim-dai-link {
|
slim-dai-link {
|
||||||
link-name = "SLIM Playback";
|
link-name = "SLIM Playback";
|
||||||
cpu {
|
cpu {
|
||||||
@@ -686,6 +781,21 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
dsi_sw_sel: dsi-sw-sel {
|
||||||
|
pins = "gpio120";
|
||||||
|
function = "gpio";
|
||||||
|
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
output-high;
|
||||||
|
};
|
||||||
|
|
||||||
|
lt9611_irq_pin: lt9611-irq {
|
||||||
|
pins = "gpio84";
|
||||||
|
function = "gpio";
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
pcie0_default_state: pcie0-default {
|
pcie0_default_state: pcie0-default {
|
||||||
clkreq {
|
clkreq {
|
||||||
pins = "gpio36";
|
pins = "gpio36";
|
||||||
@@ -943,6 +1053,14 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&qup_i2c10_default {
|
||||||
|
pinconf {
|
||||||
|
pins = "gpio55", "gpio56";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
&qup_uart6_default {
|
&qup_uart6_default {
|
||||||
pinmux {
|
pinmux {
|
||||||
pins = "gpio45", "gpio46", "gpio47", "gpio48";
|
pins = "gpio45", "gpio46", "gpio47", "gpio48";
|
||||||
|
@@ -3016,6 +3016,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3035,6 +3036,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3054,6 +3056,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3073,6 +3076,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3092,6 +3096,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3111,6 +3116,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3130,6 +3136,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3149,6 +3156,7 @@
|
|||||||
|
|
||||||
clocks = <&aoss_qmp>;
|
clocks = <&aoss_qmp>;
|
||||||
clock-names = "apb_pclk";
|
clock-names = "apb_pclk";
|
||||||
|
arm,coresight-loses-context-with-cpu;
|
||||||
|
|
||||||
out-ports {
|
out-ports {
|
||||||
port {
|
port {
|
||||||
@@ -3999,42 +4007,52 @@
|
|||||||
|
|
||||||
qcom,gmu = <&gmu>;
|
qcom,gmu = <&gmu>;
|
||||||
|
|
||||||
|
interconnects = <&mem_noc MASTER_GFX3D &mem_noc SLAVE_EBI1>;
|
||||||
|
interconnect-names = "gfx-mem";
|
||||||
|
|
||||||
gpu_opp_table: opp-table {
|
gpu_opp_table: opp-table {
|
||||||
compatible = "operating-points-v2";
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
opp-710000000 {
|
opp-710000000 {
|
||||||
opp-hz = /bits/ 64 <710000000>;
|
opp-hz = /bits/ 64 <710000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
|
opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
|
||||||
|
opp-peak-kBps = <7216000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-675000000 {
|
opp-675000000 {
|
||||||
opp-hz = /bits/ 64 <675000000>;
|
opp-hz = /bits/ 64 <675000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
|
opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
|
||||||
|
opp-peak-kBps = <7216000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-596000000 {
|
opp-596000000 {
|
||||||
opp-hz = /bits/ 64 <596000000>;
|
opp-hz = /bits/ 64 <596000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
||||||
|
opp-peak-kBps = <6220000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-520000000 {
|
opp-520000000 {
|
||||||
opp-hz = /bits/ 64 <520000000>;
|
opp-hz = /bits/ 64 <520000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
||||||
|
opp-peak-kBps = <6220000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-414000000 {
|
opp-414000000 {
|
||||||
opp-hz = /bits/ 64 <414000000>;
|
opp-hz = /bits/ 64 <414000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
||||||
|
opp-peak-kBps = <4068000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-342000000 {
|
opp-342000000 {
|
||||||
opp-hz = /bits/ 64 <342000000>;
|
opp-hz = /bits/ 64 <342000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
||||||
|
opp-peak-kBps = <2724000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
opp-257000000 {
|
opp-257000000 {
|
||||||
opp-hz = /bits/ 64 <257000000>;
|
opp-hz = /bits/ 64 <257000000>;
|
||||||
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
||||||
|
opp-peak-kBps = <1648000>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@@ -547,6 +547,141 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
gpu: gpu@2c00000 {
|
||||||
|
/*
|
||||||
|
* note: the amd,imageon compatible makes it possible
|
||||||
|
* to use the drm/msm driver without the display node,
|
||||||
|
* make sure to remove it when display node is added
|
||||||
|
*/
|
||||||
|
compatible = "qcom,adreno-640.1",
|
||||||
|
"qcom,adreno",
|
||||||
|
"amd,imageon";
|
||||||
|
#stream-id-cells = <16>;
|
||||||
|
|
||||||
|
reg = <0 0x02c00000 0 0x40000>;
|
||||||
|
reg-names = "kgsl_3d0_reg_memory";
|
||||||
|
|
||||||
|
interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
|
||||||
|
iommus = <&adreno_smmu 0 0x401>;
|
||||||
|
|
||||||
|
operating-points-v2 = <&gpu_opp_table>;
|
||||||
|
|
||||||
|
qcom,gmu = <&gmu>;
|
||||||
|
|
||||||
|
zap-shader {
|
||||||
|
memory-region = <&gpu_mem>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* note: downstream checks gpu binning for 675 Mhz */
|
||||||
|
gpu_opp_table: opp-table {
|
||||||
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
|
opp-675000000 {
|
||||||
|
opp-hz = /bits/ 64 <675000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-585000000 {
|
||||||
|
opp-hz = /bits/ 64 <585000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-499200000 {
|
||||||
|
opp-hz = /bits/ 64 <499200000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-427000000 {
|
||||||
|
opp-hz = /bits/ 64 <427000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-345000000 {
|
||||||
|
opp-hz = /bits/ 64 <345000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-257000000 {
|
||||||
|
opp-hz = /bits/ 64 <257000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gmu: gmu@2c6a000 {
|
||||||
|
compatible="qcom,adreno-gmu-640.1", "qcom,adreno-gmu";
|
||||||
|
|
||||||
|
reg = <0 0x02c6a000 0 0x30000>,
|
||||||
|
<0 0x0b290000 0 0x10000>,
|
||||||
|
<0 0x0b490000 0 0x10000>;
|
||||||
|
reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
|
||||||
|
|
||||||
|
interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
interrupt-names = "hfi", "gmu";
|
||||||
|
|
||||||
|
clocks = <&gpucc 0>,
|
||||||
|
<&gpucc 3>,
|
||||||
|
<&gpucc 6>,
|
||||||
|
<&gcc GCC_DDRSS_GPU_AXI_CLK>,
|
||||||
|
<&gcc GCC_GPU_MEMNOC_GFX_CLK>;
|
||||||
|
clock-names = "ahb", "gmu", "cxo", "axi", "memnoc";
|
||||||
|
|
||||||
|
power-domains = <&gpucc 0>,
|
||||||
|
<&gpucc 1>;
|
||||||
|
power-domain-names = "cx", "gx";
|
||||||
|
|
||||||
|
iommus = <&adreno_smmu 5 0x400>;
|
||||||
|
|
||||||
|
operating-points-v2 = <&gmu_opp_table>;
|
||||||
|
|
||||||
|
gmu_opp_table: opp-table {
|
||||||
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
|
opp-200000000 {
|
||||||
|
opp-hz = /bits/ 64 <200000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpucc: clock-controller@2c90000 {
|
||||||
|
compatible = "qcom,sm8150-gpucc";
|
||||||
|
reg = <0 0x02c90000 0 0x9000>;
|
||||||
|
clocks = <&rpmhcc RPMH_CXO_CLK>,
|
||||||
|
<&gcc GCC_GPU_GPLL0_CLK_SRC>,
|
||||||
|
<&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
|
||||||
|
clock-names = "bi_tcxo",
|
||||||
|
"gcc_gpu_gpll0_clk_src",
|
||||||
|
"gcc_gpu_gpll0_div_clk_src";
|
||||||
|
#clock-cells = <1>;
|
||||||
|
#reset-cells = <1>;
|
||||||
|
#power-domain-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
adreno_smmu: iommu@2ca0000 {
|
||||||
|
compatible = "qcom,sm8150-smmu-500", "arm,mmu-500";
|
||||||
|
reg = <0 0x02ca0000 0 0x10000>;
|
||||||
|
#iommu-cells = <2>;
|
||||||
|
#global-interrupts = <1>;
|
||||||
|
interrupts = <GIC_SPI 674 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 688 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gpucc 0>,
|
||||||
|
<&gcc GCC_GPU_MEMNOC_GFX_CLK>,
|
||||||
|
<&gcc GCC_GPU_SNOC_DVM_GFX_CLK>;
|
||||||
|
clock-names = "ahb", "bus", "iface";
|
||||||
|
|
||||||
|
power-domains = <&gpucc 0>;
|
||||||
|
};
|
||||||
|
|
||||||
tlmm: pinctrl@3100000 {
|
tlmm: pinctrl@3100000 {
|
||||||
compatible = "qcom,sm8150-pinctrl";
|
compatible = "qcom,sm8150-pinctrl";
|
||||||
reg = <0x0 0x03100000 0x0 0x300000>,
|
reg = <0x0 0x03100000 0x0 0x300000>,
|
||||||
|
@@ -1047,6 +1047,148 @@
|
|||||||
#hwlock-cells = <1>;
|
#hwlock-cells = <1>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
gpu: gpu@3d00000 {
|
||||||
|
/*
|
||||||
|
* note: the amd,imageon compatible makes it possible
|
||||||
|
* to use the drm/msm driver without the display node,
|
||||||
|
* make sure to remove it when display node is added
|
||||||
|
*/
|
||||||
|
compatible = "qcom,adreno-650.2",
|
||||||
|
"qcom,adreno",
|
||||||
|
"amd,imageon";
|
||||||
|
#stream-id-cells = <16>;
|
||||||
|
|
||||||
|
reg = <0 0x03d00000 0 0x40000>;
|
||||||
|
reg-names = "kgsl_3d0_reg_memory";
|
||||||
|
|
||||||
|
interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
|
||||||
|
iommus = <&adreno_smmu 0 0x401>;
|
||||||
|
|
||||||
|
operating-points-v2 = <&gpu_opp_table>;
|
||||||
|
|
||||||
|
qcom,gmu = <&gmu>;
|
||||||
|
|
||||||
|
zap-shader {
|
||||||
|
memory-region = <&gpu_mem>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* note: downstream checks gpu binning for 670 Mhz */
|
||||||
|
gpu_opp_table: opp-table {
|
||||||
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
|
opp-670000000 {
|
||||||
|
opp-hz = /bits/ 64 <670000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-587000000 {
|
||||||
|
opp-hz = /bits/ 64 <587000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-525000000 {
|
||||||
|
opp-hz = /bits/ 64 <525000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-490000000 {
|
||||||
|
opp-hz = /bits/ 64 <490000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-441600000 {
|
||||||
|
opp-hz = /bits/ 64 <441600000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-400000000 {
|
||||||
|
opp-hz = /bits/ 64 <400000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
|
||||||
|
};
|
||||||
|
|
||||||
|
opp-305000000 {
|
||||||
|
opp-hz = /bits/ 64 <305000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gmu: gmu@3d6a000 {
|
||||||
|
compatible="qcom,adreno-gmu-650.2", "qcom,adreno-gmu";
|
||||||
|
|
||||||
|
reg = <0 0x03d6a000 0 0x30000>,
|
||||||
|
<0 0x3de0000 0 0x10000>,
|
||||||
|
<0 0xb290000 0 0x10000>,
|
||||||
|
<0 0xb490000 0 0x10000>;
|
||||||
|
reg-names = "gmu", "rscc", "gmu_pdc", "gmu_pdc_seq";
|
||||||
|
|
||||||
|
interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
interrupt-names = "hfi", "gmu";
|
||||||
|
|
||||||
|
clocks = <&gpucc 0>,
|
||||||
|
<&gpucc 3>,
|
||||||
|
<&gpucc 6>,
|
||||||
|
<&gcc GCC_DDRSS_GPU_AXI_CLK>,
|
||||||
|
<&gcc GCC_GPU_MEMNOC_GFX_CLK>;
|
||||||
|
clock-names = "ahb", "gmu", "cxo", "axi", "memnoc";
|
||||||
|
|
||||||
|
power-domains = <&gpucc 0>,
|
||||||
|
<&gpucc 1>;
|
||||||
|
power-domain-names = "cx", "gx";
|
||||||
|
|
||||||
|
iommus = <&adreno_smmu 5 0x400>;
|
||||||
|
|
||||||
|
operating-points-v2 = <&gmu_opp_table>;
|
||||||
|
|
||||||
|
gmu_opp_table: opp-table {
|
||||||
|
compatible = "operating-points-v2";
|
||||||
|
|
||||||
|
opp-200000000 {
|
||||||
|
opp-hz = /bits/ 64 <200000000>;
|
||||||
|
opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpucc: clock-controller@3d90000 {
|
||||||
|
compatible = "qcom,sm8250-gpucc";
|
||||||
|
reg = <0 0x03d90000 0 0x9000>;
|
||||||
|
clocks = <&rpmhcc RPMH_CXO_CLK>,
|
||||||
|
<&gcc GCC_GPU_GPLL0_CLK_SRC>,
|
||||||
|
<&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
|
||||||
|
clock-names = "bi_tcxo",
|
||||||
|
"gcc_gpu_gpll0_clk_src",
|
||||||
|
"gcc_gpu_gpll0_div_clk_src";
|
||||||
|
#clock-cells = <1>;
|
||||||
|
#reset-cells = <1>;
|
||||||
|
#power-domain-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
adreno_smmu: iommu@3da0000 {
|
||||||
|
compatible = "qcom,sm8250-smmu-500", "arm,mmu-500";
|
||||||
|
reg = <0 0x03da0000 0 0x10000>;
|
||||||
|
#iommu-cells = <2>;
|
||||||
|
#global-interrupts = <2>;
|
||||||
|
interrupts = <GIC_SPI 672 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
|
||||||
|
<GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gpucc 0>,
|
||||||
|
<&gcc GCC_GPU_MEMNOC_GFX_CLK>,
|
||||||
|
<&gcc GCC_GPU_SNOC_DVM_GFX_CLK>;
|
||||||
|
clock-names = "ahb", "bus", "iface";
|
||||||
|
|
||||||
|
power-domains = <&gpucc 0>;
|
||||||
|
};
|
||||||
|
|
||||||
slpi: remoteproc@5c00000 {
|
slpi: remoteproc@5c00000 {
|
||||||
compatible = "qcom,sm8250-slpi-pas";
|
compatible = "qcom,sm8250-slpi-pas";
|
||||||
reg = <0 0x05c00000 0 0x4000>;
|
reg = <0 0x05c00000 0 0x4000>;
|
||||||
|
@@ -55,6 +55,7 @@
|
|||||||
#define RPMH_REGULATOR_LEVEL_MIN_SVS 48
|
#define RPMH_REGULATOR_LEVEL_MIN_SVS 48
|
||||||
#define RPMH_REGULATOR_LEVEL_LOW_SVS 64
|
#define RPMH_REGULATOR_LEVEL_LOW_SVS 64
|
||||||
#define RPMH_REGULATOR_LEVEL_SVS 128
|
#define RPMH_REGULATOR_LEVEL_SVS 128
|
||||||
|
#define RPMH_REGULATOR_LEVEL_SVS_L0 144
|
||||||
#define RPMH_REGULATOR_LEVEL_SVS_L1 192
|
#define RPMH_REGULATOR_LEVEL_SVS_L1 192
|
||||||
#define RPMH_REGULATOR_LEVEL_SVS_L2 224
|
#define RPMH_REGULATOR_LEVEL_SVS_L2 224
|
||||||
#define RPMH_REGULATOR_LEVEL_NOM 256
|
#define RPMH_REGULATOR_LEVEL_NOM 256
|
||||||
|
Reference in New Issue
Block a user