lkml.org 
[lkml]   [2023]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH v2 11/12] arm64: dts: qcom: sc8180x: Introduce Primus
    From


    On 25.03.2023 13:24, Vinod Koul wrote:
    > From: Bjorn Andersson <bjorn.andersson@linaro.org>
    >
    > Introduce support for the SC8180X reference device, aka Primus, with
    > debug UART, regulators, UFS and USB support.
    >
    > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
    > ---
    Please introduce PMICs in a separate commit. On top of that,
    the previous patch (in a very slim and basic version) should
    have been combined with (a very slim and basic version) this
    patch so that we don't introduce code that never compiles.

    And the patches are missing your (as the sender) S-o-bs.

    Please run them through dtbs_check and checkpatch.pl --strict,
    I think it should have pointed some of that out.

    Konrad
    > arch/arm64/boot/dts/qcom/Makefile | 1 +
    > arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi | 326 +++++++++
    > arch/arm64/boot/dts/qcom/sc8180x-primus.dts | 706 ++++++++++++++++++++
    > 3 files changed, 1033 insertions(+)
    > create mode 100644 arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi
    > create mode 100644 arch/arm64/boot/dts/qcom/sc8180x-primus.dts
    >
    > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
    > index 31aa54f0428c..fdce44a7a902 100644
    > --- a/arch/arm64/boot/dts/qcom/Makefile
    > +++ b/arch/arm64/boot/dts/qcom/Makefile
    > @@ -141,6 +141,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sc7280-herobrine-zombie-nvme-lte.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sc7280-idp.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sc7280-idp2.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sc7280-crd-r3.dtb
    > +dtb-$(CONFIG_ARCH_QCOM) += sc8180x-primus.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sc8280xp-crd.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sc8280xp-lenovo-thinkpad-x13s.dtb
    > dtb-$(CONFIG_ARCH_QCOM) += sda660-inforce-ifc6560.dtb
    > diff --git a/arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi b/arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi
    > new file mode 100644
    > index 000000000000..49c146b6f37f
    > --- /dev/null
    > +++ b/arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi
    > @@ -0,0 +1,326 @@
    > +// SPDX-License-Identifier: BSD-3-Clause
    > +/*
    > + * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
    > + * Copyright (c) 2021-2022, Linaro Limited
    > + */
    > +
    > +#include <dt-bindings/input/input.h>
    > +#include <dt-bindings/interrupt-controller/irq.h>
    > +#include <dt-bindings/spmi/spmi.h>
    > +#include <dt-bindings/iio/qcom,spmi-vadc.h>
    > +
    > +/ {
    > + thermal-zones {
    > + pmc8180-thermal {
    > + polling-delay-passive = <100>;
    > + polling-delay = <0>;
    > +
    > + thermal-sensors = <&pmc8180_temp>;
    > +
    > + trips {
    > + trip0 {
    > + temperature = <95000>;
    > + hysteresis = <0>;
    > + type = "passive";
    > + };
    > +
    > + trip1 {
    > + temperature = <115000>;
    > + hysteresis = <0>;
    > + type = "hot";
    > + };
    > +
    > + trip2 {
    > + temperature = <145000>;
    > + hysteresis = <0>;
    > + type = "critical";
    > + };
    > + };
    > + };
    > +
    > + pmc8180c-thermal {
    > + polling-delay-passive = <100>;
    > + polling-delay = <0>;
    > +
    > + thermal-sensors = <&pmc8180c_temp>;
    > +
    > + trips {
    > + trip0 {
    > + temperature = <95000>;
    > + hysteresis = <0>;
    > + type = "passive";
    > + };
    > +
    > + trip1 {
    > + temperature = <115000>;
    > + hysteresis = <0>;
    > + type = "hot";
    > + };
    > +
    > + trip2 {
    > + temperature = <145000>;
    > + hysteresis = <0>;
    > + type = "critical";
    > + };
    > + };
    > + };
    > + };
    > +};
    > +
    > +&spmi_bus {
    > + pmc8180_0: pmic@0 {
    > + compatible = "qcom,pm8150", "qcom,spmi-pmic";
    > + reg = <0x0 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > +
    > + pon: power-on@800 {
    > + compatible = "qcom,pm8916-pon";
    > + reg = <0x0800>;
    > + pwrkey {
    > + compatible = "qcom,pm8941-pwrkey";
    > + interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>;
    > + debounce = <15625>;
    > + bias-pull-up;
    > + linux,code = <KEY_POWER>;
    > +
    > + status = "disabled";
    > + };
    > + };
    > +
    > + pmc8180_temp: temp-alarm@2400 {
    > + compatible = "qcom,spmi-temp-alarm";
    > + reg = <0x2400>;
    > + interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
    > + io-channels = <&pmc8180_adc ADC5_DIE_TEMP>;
    > + io-channel-names = "thermal";
    > + #thermal-sensor-cells = <0>;
    > + };
    > +
    > + pmc8180_adc: adc@3100 {
    > + compatible = "qcom,spmi-adc5";
    > + reg = <0x3100>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + #io-channel-cells = <1>;
    > + interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
    > +
    > + ref-gnd@0 {
    > + reg = <ADC5_REF_GND>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "ref_gnd";
    > + };
    > +
    > + vref-1p25@1 {
    > + reg = <ADC5_1P25VREF>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vref_1p25";
    > + };
    > +
    > + die-temp@6 {
    > + reg = <ADC5_DIE_TEMP>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "die_temp";
    > + };
    > + };
    > +
    > + pmc8180_adc_tm: adc-tm@3500 {
    > + compatible = "qcom,spmi-adc-tm5";
    > + reg = <0x3500>;
    > + interrupts = <0x0 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
    > + #thermal-sensor-cells = <1>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + status = "disabled";
    > + };
    > +
    > + rtc@6000 {
    > + compatible = "qcom,pm8941-rtc";
    > + reg = <0x6000>;
    > + reg-names = "rtc", "alarm";
    > + interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
    > + };
    > +
    > + pmc8180_gpios: gpio@c000 {
    > + compatible = "qcom,pmc8180-gpio";
    > + reg = <0xc000>;
    > + gpio-controller;
    > + #gpio-cells = <2>;
    > + interrupt-controller;
    > + #interrupt-cells = <2>;
    > + };
    > + };
    > +
    > + pmic@1 {
    > + compatible = "qcom,pmc8180", "qcom,spmi-pmic";
    > + reg = <0x1 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + };
    > +
    > + pmic@2 {
    > + compatible = "qcom,smb2351", "qcom,spmi-pmic";
    > + reg = <0x2 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > +
    > + adc@3100 {
    > + compatible = "qcom,spmi-adc-rev2";
    > + reg = <0x3100>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + #io-channel-cells = <1>;
    > + interrupts = <0x2 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
    > +
    > + ref-gnd@0 {
    > + reg = <ADC5_REF_GND>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "ref_gnd";
    > + };
    > +
    > + vref-1p25@1 {
    > + reg = <ADC5_1P25VREF>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vref_1p25";
    > + };
    > +
    > + vcoin@85 {
    > + reg = <0x85>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vcoin2";
    > + };
    > + };
    > + };
    > +
    > + pmic@6 {
    > + compatible = "qcom,pm8150c", "qcom,spmi-pmic";
    > + reg = <0x6 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + };
    > +
    > + pmic@8 {
    > + compatible = "qcom,pm8150", "qcom,spmi-pmic";
    > + reg = <0x8 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + };
    > +
    > + pmic@a {
    > + compatible = "qcom,smb2351", "qcom,spmi-pmic";
    > + reg = <0xa SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > +
    > + adc@3100 {
    > + compatible = "qcom,spmi-adc-rev2";
    > + reg = <0x3100>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + #io-channel-cells = <1>;
    > + interrupts = <0xa 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
    > +
    > + ref-gnd@0 {
    > + reg = <ADC5_REF_GND>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "ref_gnd";
    > + };
    > +
    > + vref-1p25@1 {
    > + reg = <ADC5_1P25VREF>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vref_1p25";
    > + };
    > +
    > + vcoin@85 {
    > + reg = <0x85>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vcoin";
    > + };
    > + };
    > + };
    > +
    > + pmic@4 {
    > + compatible = "qcom,pm8150c", "qcom,spmi-pmic";
    > + reg = <0x4 SPMI_USID>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > +
    > + power-on@800 {
    > + compatible = "qcom,pm8916-pon";
    > + reg = <0x0800>;
    > +
    > + status = "disabled";
    > + };
    > +
    > + pmc8180c_temp: temp-alarm@2400 {
    > + compatible = "qcom,spmi-temp-alarm";
    > + reg = <0x2400>;
    > + interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
    > + io-channels = <&pmc8180c_adc ADC5_DIE_TEMP>;
    > + io-channel-names = "thermal";
    > + #thermal-sensor-cells = <0>;
    > + };
    > +
    > + pmc8180c_adc: adc@3100 {
    > + compatible = "qcom,spmi-adc5";
    > + reg = <0x3100>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + #io-channel-cells = <1>;
    > + interrupts = <0x4 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
    > +
    > + ref-gnd@0 {
    > + reg = <ADC5_REF_GND>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "ref_gnd";
    > + };
    > +
    > + vref-1p25@1 {
    > + reg = <ADC5_1P25VREF>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "vref_1p25";
    > + };
    > +
    > + die-temp@6 {
    > + reg = <ADC5_DIE_TEMP>;
    > + qcom,pre-scaling = <1 1>;
    > + label = "die_temp";
    > + };
    > + };
    > +
    > + pmc8180c_adc_tm: adc-tm@3500 {
    > + compatible = "qcom,spmi-adc-tm5";
    > + reg = <0x3500>;
    > + interrupts = <0x4 0x35 0x0 IRQ_TYPE_EDGE_RISING>;
    > + #thermal-sensor-cells = <1>;
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + status = "disabled";
    > + };
    > +
    > + pmc8180c_gpios: gpio@c000 {
    > + compatible = "qcom,pmc8180c-gpio";
    > + reg = <0xc000>;
    > + gpio-controller;
    > + #gpio-cells = <2>;
    > + interrupt-controller;
    > + #interrupt-cells = <2>;
    > + };
    > + };
    > +
    > + pmic@5 {
    > + compatible = "qcom,pmc8180c", "qcom,spmi-pmic";
    > + reg = <0x5 SPMI_USID>;
    > +
    > + pmc8180c_lpg: lpg {
    > + compatible = "qcom,pmc8180c-lpg";
    > +
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > + #pwm-cells = <2>;
    > +
    > + status = "disabled";
    > + };
    > + };
    > +};
    > diff --git a/arch/arm64/boot/dts/qcom/sc8180x-primus.dts b/arch/arm64/boot/dts/qcom/sc8180x-primus.dts
    > new file mode 100644
    > index 000000000000..9f365fccae78
    > --- /dev/null
    > +++ b/arch/arm64/boot/dts/qcom/sc8180x-primus.dts
    > @@ -0,0 +1,706 @@
    > +// SPDX-License-Identifier: BSD-3-Clause
    > +/*
    > + * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
    > + * Copyright (c) 2020-2023, Linaro Limited
    > + */
    > +
    > +/dts-v1/;
    > +
    > +#include <dt-bindings/gpio/gpio.h>
    > +#include <dt-bindings/input/gpio-keys.h>
    > +#include <dt-bindings/input/input.h>
    > +#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
    > +#include "sc8180x.dtsi"
    > +#include "sc8180x-pmics.dtsi"
    > +
    > +/ {
    > + model = "Qualcomm SC8180x Primus";
    > + compatible = "qcom,sc8180x-primus", "qcom,sc8180x";
    > +
    > + aliases {
    > + serial0 = &uart12;
    > + serial1 = &uart13;
    > + };
    > +
    > + backlight: backlight {
    > + compatible = "pwm-backlight";
    > + pwms = <&pmc8180c_lpg 4 1000000>;
    > + enable-gpios = <&pmc8180c_gpios 8 GPIO_ACTIVE_HIGH>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&bl_pwm_default>;
    > + };
    > +
    > + chosen {
    > + stdout-path = "serial0:115200n8";
    > + };
    > +
    > + gpio-keys {
    > + compatible = "gpio-keys";
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&hall_int_active_state>;
    > +
    > + lid-switch {
    > + gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>;
    > + linux,input-type = <EV_SW>;
    > + linux,code = <SW_LID>;
    > + wakeup-source;
    > + wakeup-event-action = <EV_ACT_DEASSERTED>;
    > + };
    > + };
    > +
    > + reserved-memory {
    > + rmtfs_mem: rmtfs-region@85500000 {
    > + compatible = "qcom,rmtfs-mem";
    > + reg = <0x0 0x85500000 0x0 0x200000>;
    > + no-map;
    > +
    > + qcom,client-id = <1>;
    > + qcom,vmid = <15>;
    > + };
    > +
    > + wlan_mem: wlan-region@8bc00000 {
    > + reg = <0x0 0x8bc00000 0x0 0x180000>;
    > + no-map;
    > + };
    > +
    > + adsp_mem: adsp-region@96e00000 {
    > + reg = <0x0 0x96e00000 0x0 0x1c00000>;
    > + no-map;
    > + };
    > +
    > + mpss_mem: mpss-region@8d800000 {
    > + reg = <0x0 0x8d800000 0x0 0x9600000>;
    > + no-map;
    > + };
    > +
    > + gpu_mem: gpu-region@98a00000 {
    > + reg = <0x0 0x98a00000 0x0 0x2000>;
    > + no-map;
    > + };
    > +
    > + reserved-region@9a500000 {
    > + reg = <0x0 0x9a500000 0x0 0x600000>;
    > + no-map;
    > + };
    > + };
    > +
    > + vreg_nvme_0p9: nvme-0p9-regulator {
    > + compatible = "regulator-fixed";
    > + regulator-name = "vreg_nvme_0p9";
    > +
    > + regulator-min-microvolt = <900000>;
    > + regulator-max-microvolt = <900000>;
    > +
    > + regulator-always-on;
    > + };
    > +
    > + vreg_nvme_3p3: nvme-3p3-regulator {
    > + compatible = "regulator-fixed";
    > + regulator-name = "vreg_nvme_3p3";
    > +
    > + regulator-min-microvolt = <3300000>;
    > + regulator-max-microvolt = <3300000>;
    > +
    > + gpio = <&pmc8180c_gpios 11 0>;
    > + enable-active-high;
    > +
    > + regulator-always-on;
    > + };
    > +
    > + vdd_kb_tp_3v3: vdd-kb-tp-3v3-regulator {
    > + compatible = "regulator-fixed";
    > + regulator-name = "vdd_kb_tp_3v3";
    > + regulator-min-microvolt = <3300000>;
    > + regulator-max-microvolt = <3300000>;
    > +
    > + gpio = <&tlmm 4 GPIO_ACTIVE_HIGH>;
    > + enable-active-high;
    > +
    > + regulator-always-on;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&kb_tp_3v3_en_active_state>;
    > + };
    > +
    > + vph_pwr: vph-pwr-regulator {
    > + compatible = "regulator-fixed";
    > + regulator-name = "vph_pwr";
    > + regulator-min-microvolt = <3700000>;
    > + regulator-max-microvolt = <3700000>;
    > + };
    > +
    > + vreg_s4a_1p8: pm8150-s4 {
    > + compatible = "regulator-fixed";
    > + regulator-name = "vreg_s4a_1p8";
    > +
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > +
    > + regulator-always-on;
    > + regulator-boot-on;
    > +
    > + vin-supply = <&vph_pwr>;
    > + };
    > +};
    > +
    > +&apps_rsc {
    > + pmc8180-a-rpmh-regulators {
    > + compatible = "qcom,pmc8180-rpmh-regulators";
    > + qcom,pmic-id = "a";
    > +
    > + vdd-s5-supply = <&vph_pwr>;
    > + vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p0>;
    > +
    > + vreg_s5a_2p0: smps5 {
    > + regulator-min-microvolt = <2040000>;
    > + regulator-max-microvolt = <2100000>;
    > + };
    > +
    > + vreg_l7a_1p8: ldo7 {
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l9a_1p3: ldo9 {
    > + regulator-min-microvolt = <1296000>;
    > + regulator-max-microvolt = <1304000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l12a_1p8: ldo12 {
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > + };
    > +
    > + pmc8180c-rpmh-regulators {
    > + compatible = "qcom,pmc8180c-rpmh-regulators";
    > + qcom,pmic-id = "c";
    > +
    > + vdd-s6-supply = <&vph_pwr>;
    > + vdd-s8-supply = <&vph_pwr>;
    > + vdd-l2-l3-supply = <&vreg_s6c_1p35>;
    > + vdd-bob-supply = <&vph_pwr>;
    > +
    > + vreg_s6c_1p35: smps6 {
    > + regulator-min-microvolt = <1350000>;
    > + regulator-max-microvolt = <1372000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_s8c_1p8: smps8 {
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + regulator-always-on;
    > + };
    > +
    > + vreg_l3c_1p2: ldo3 {
    > + regulator-min-microvolt = <1200000>;
    > + regulator-max-microvolt = <1200000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l4c_3p3: ldo4 {
    > + regulator-min-microvolt = <3008000>;
    > + regulator-max-microvolt = <3008000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l10c_3p3: ldo10 {
    > + regulator-min-microvolt = <3000000>;
    > + regulator-max-microvolt = <3312000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l11c_3p3: ldo11 {
    > + regulator-min-microvolt = <3296000>;
    > + regulator-max-microvolt = <3304000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_bob: bob {
    > + regulator-min-microvolt = <3296000>;
    > + regulator-max-microvolt = <3350000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > + };
    > +
    > + pmc8180-e-rpmh-regulators {
    > + compatible = "qcom,pmc8180-rpmh-regulators";
    > + qcom,pmic-id = "e";
    > +
    > + vdd-s4-supply = <&vph_pwr>;
    > + vdd-s5-supply = <&vph_pwr>;
    > + vdd-l2-l10-supply = <&vreg_bob>;
    > + vdd-l3-l4-l5-l18-supply = <&vreg_s4e_0p98>;
    > + vdd-l7-l12-l14-l15-supply = <&vreg_s5e_2p05>;
    > + vdd-l13-l16-l17-supply = <&vreg_bob>;
    > +
    > + vreg_s4e_0p98: smps4 {
    > + regulator-min-microvolt = <992000>;
    > + regulator-max-microvolt = <992000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_s5e_2p05: smps5 {
    > + regulator-min-microvolt = <2040000>;
    > + regulator-max-microvolt = <2040000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l1e_0p75: ldo1 {
    > + regulator-min-microvolt = <752000>;
    > + regulator-max-microvolt = <752000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l5e_0p88: ldo5 {
    > + regulator-min-microvolt = <880000>;
    > + regulator-max-microvolt = <880000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l7e_1p8: ldo7 {
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l10e_2p9: ldo10 {
    > + regulator-min-microvolt = <2904000>;
    > + regulator-max-microvolt = <2904000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l12e: ldo12 {
    > + regulator-min-microvolt = <1800000>;
    > + regulator-max-microvolt = <1800000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > +
    > + vreg_l16e_3p0: ldo16 {
    > + regulator-min-microvolt = <3072000>;
    > + regulator-max-microvolt = <3072000>;
    > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
    > + };
    > + };
    > +};
    > +
    > +&dispcc {
    > + status = "okay";
    > +};
    > +
    > +&gpu {
    > + status = "okay";
    > +
    > + zap-shader {
    > + memory-region = <&gpu_mem>;
    > + firmware-name = "qcom/sc8180x/qcdxkmsuc8180.mbn";
    > + };
    > +};
    > +
    > +&i2c1 {
    > + clock-frequency = <100000>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&ts_i2c_active_state>;
    > +
    > + status = "okay";
    > +
    > + touchscreen@10 {
    > + compatible = "hid-over-i2c";
    > + reg = <0x10>;
    > + hid-descr-addr = <0x1>;
    > +
    > + vdd-supply = <&vreg_l4c_3p3>;
    > + vddl-supply = <&vreg_l12e>;
    > +
    > + post-power-on-delay-ms = <20>;
    > +
    > + interrupts-extended = <&tlmm 122 IRQ_TYPE_LEVEL_LOW>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&ts_active_state>;
    > + };
    > +};
    > +
    > +&i2c7 {
    > + clock-frequency = <100000>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&aux_i2c_active_state>;
    > +
    > + status = "okay";
    > +
    > + touchpad@15 {
    > + compatible = "hid-over-i2c";
    > + reg = <0x15>;
    > + hid-descr-addr = <0x1>;
    > +
    > + interrupts-extended = <&tlmm 24 IRQ_TYPE_LEVEL_LOW>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&tp_int_active_state>;
    > +
    > + vdd-supply = <&vdd_kb_tp_3v3>;
    > + };
    > +
    > + keyboard@3a {
    > + compatible = "hid-over-i2c";
    > + reg = <0x3a>;
    > + hid-descr-addr = <0x1>;
    > + interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_LOW>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&kb_int_active_state>;
    > +
    > + vdd-supply = <&vdd_kb_tp_3v3>;
    > + };
    > +};
    > +
    > +&mdss {
    > + status = "okay";
    > +};
    > +
    > +&mdss_edp {
    > + data-lanes = <0 1 2 3>;
    > +
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&edp_hpd_active>;
    > +
    > + status = "okay";
    > +
    > + aux-bus {
    > + panel {
    > + compatible = "edp-panel";
    > +
    > + backlight = <&backlight>;
    > +
    > + ports {
    > + port {
    > + auo_b133han05_in: endpoint {
    > + remote-endpoint = <&mdss_edp_out>;
    > + };
    > + };
    > + };
    > + };
    > + };
    > +
    > + ports {
    > + port@1 {
    > + reg = <1>;
    > + mdss_edp_out: endpoint {
    > + remote-endpoint = <&auo_b133han05_in>;
    > + };
    > + };
    > + };
    > +};
    > +
    > +&pcie1 {
    > + perst-gpio = <&tlmm 175 GPIO_ACTIVE_LOW>;
    > + wake-gpio = <&tlmm 177 GPIO_ACTIVE_HIGH>;
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&pcie2_default_state>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&pcie1_phy {
    > + vdda-phy-supply = <&vreg_l5e_0p88>;
    > + vdda-pll-supply = <&vreg_l3c_1p2>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&pmc8180c_lpg {
    > + status = "okay";
    > +};
    > +
    > +&qupv3_id_0 {
    > + status = "okay";
    > +};
    > +
    > +&qupv3_id_1 {
    > + status = "okay";
    > +};
    > +
    > +&qupv3_id_2 {
    > + status = "okay";
    > +};
    > +
    > +&remoteproc_adsp {
    > + memory-region = <&adsp_mem>;
    > + firmware-name = "qcom/sc8180x/qcadsp8180.mbn";
    > +
    > + status = "okay";
    > +};
    > +
    > +&remoteproc_mpss {
    > + memory-region = <&mpss_mem>;
    > + firmware-name = "qcom/sc8180x/qcmpss8180.mbn";
    > +
    > + status = "okay";
    > +};
    > +
    > +&uart12 {
    > + compatible = "qcom,geni-debug-uart";
    > + status = "okay";
    > +};
    > +
    > +&uart13 {
    > + pinctrl-names = "default";
    > + pinctrl-0 = <&uart13_state>;
    > +
    > + status = "okay";
    > +
    > + bluetooth {
    > + compatible = "qcom,wcn3998-bt";
    > +
    > + vddio-supply = <&vreg_s4a_1p8>;
    > + vddxo-supply = <&vreg_l7a_1p8>;
    > + vddrf-supply = <&vreg_l9a_1p3>;
    > + vddch0-supply = <&vreg_l11c_3p3>;
    > + max-speed = <3200000>;
    > + };
    > +};
    > +
    > +&ufs_mem_hc {
    > + reset-gpios = <&tlmm 190 GPIO_ACTIVE_LOW>;
    > +
    > + vcc-supply = <&vreg_l10e_2p9>;
    > + vcc-max-microamp = <155000>;
    > +
    > + vccq2-supply = <&vreg_l7e_1p8>;
    > + vccq2-max-microamp = <425000>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&ufs_mem_phy {
    > + vdda-phy-supply = <&vreg_l5e_0p88>;
    > + vdda-pll-supply = <&vreg_l3c_1p2>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&usb_prim_hsphy {
    > + vdda-pll-supply = <&vreg_l5e_0p88>;
    > + vdda18-supply = <&vreg_l12a_1p8>;
    > + vdda33-supply = <&vreg_l16e_3p0>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&usb_prim_qmpphy {
    > + vdda-phy-supply = <&vreg_l3c_1p2>;
    > + vdda-pll-supply = <&vreg_l5e_0p88>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&usb_prim {
    > + status = "okay";
    > +};
    > +
    > +&usb_prim_dwc3 {
    > + dr_mode = "host";
    > +};
    > +
    > +&usb_sec_hsphy {
    > + vdda-pll-supply = <&vreg_l5e_0p88>;
    > + vdda18-supply = <&vreg_l12a_1p8>;
    > + vdda33-supply = <&vreg_l16e_3p0>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&usb_sec_qmpphy {
    > + vdda-phy-supply = <&vreg_l3c_1p2>;
    > + vdda-pll-supply = <&vreg_l5e_0p88>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&usb_sec {
    > + status = "okay";
    > +};
    > +
    > +&usb_sec_dwc3 {
    > + dr_mode = "host";
    > +};
    > +
    > +&wifi {
    > + memory-region = <&wlan_mem>;
    > +
    > + vdd-0.8-cx-mx-supply = <&vreg_l1e_0p75>;
    > + vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
    > + vdd-1.3-rfa-supply = <&vreg_l9a_1p3>;
    > + vdd-3.3-ch0-supply = <&vreg_l11c_3p3>;
    > + vdd-3.3-ch1-supply = <&vreg_l10c_3p3>;
    > +
    > + status = "okay";
    > +};
    > +
    > +&xo_board_clk {
    > + clock-frequency = <38400000>;
    > +};
    > +
    > +/* PINCTRL */
    > +
    > +&pmc8180c_gpios {
    > + bl_pwm_default: bl-pwm-default-state {
    > + en-pins {
    > + pins = "gpio8";
    > + function = "normal";
    > + };
    > +
    > + pwm-pins {
    > + pins = "gpio10";
    > + function = "func1";
    > + };
    > + };
    > +};
    > +
    > +&tlmm {
    > + gpio-reserved-ranges = <0 4>, <47 4>, <126 4>;
    > +
    > + aux_i2c_active_state: aux-i2c-active-state {
    > + pins = "gpio98", "gpio99";
    > + function = "qup7";
    > +
    > + bias-disable;
    > + drive-strength = <16>;
    > + };
    > +
    > + edp_hpd_active: epd-hpd-active-state {
    > + pins = "gpio10";
    > + function = "edp_hot";
    > + };
    > +
    > + hall_int_active_state: hall-int-active-state {
    > + pins = "gpio121";
    > + function = "gpio";
    > +
    > + input-enable;
    > + bias-disable;
    > + };
    > +
    > + kb_int_active_state: kb-int-active-state {
    > + int-n-pins {
    > + pins = "gpio37";
    > + function = "gpio";
    > +
    > + bias-pull-up;
    > + intput-enable;
    > + };
    > +
    > + kp-disable-pins {
    > + pins = "gpio135";
    > + function = "gpio";
    > +
    > + output-high;
    > + };
    > + };
    > +
    > + kb_tp_3v3_en_active_state: kb-tp-3v3-en-active-state {
    > + pins = "gpio4";
    > + functino = "gpio";
    > +
    > + bias-disable;
    > + };
    > +
    > + pcie2_default_state: pcie2-default-state {
    > + clkreq-pins {
    > + pins = "gpio176";
    > + function = "pci_e2";
    > + bias-pull-up;
    > + };
    > +
    > + reset-n-pins {
    > + pins = "gpio175";
    > + function = "gpio";
    > +
    > + drive-strength = <2>;
    > + output-low;
    > + bias-pull-down;
    > + };
    > +
    > + wake-n-pins {
    > + pins = "gpio177";
    > + function = "gpio";
    > +
    > + drive-strength = <2>;
    > + bias-pull-up;
    > + };
    > + };
    > +
    > + tp_int_active_state: tp-int-active-state {
    > + tp-int-pins {
    > + pins = "gpio24";
    > + function = "gpio";
    > +
    > + bias-disable;
    > + input-enable;
    > + };
    > +
    > + tp-close-n-pins {
    > + pins = "gpio116";
    > + function = "gpio";
    > +
    > + bias-disable;
    > + input-enable;
    > + };
    > + };
    > +
    > + ts_active_state: ts-active-state {
    > + int-n-pins {
    > + pins = "gpio122";
    > + function = "gpio";
    > +
    > + input-enable;
    > + bias-disable;
    > + };
    > +
    > + reset-n-pins {
    > + pins = "gpio54";
    > + function = "gpio";
    > +
    > + output-high;
    > + };
    > + };
    > +
    > + ts_i2c_active_state: ts-i2c-active-state {
    > + pins = "gpio114", "gpio115";
    > + function = "qup1";
    > +
    > + /* External pull up */
    > + bias-disable;
    > + drive-strength = <2>;
    > + };
    > +
    > + uart13_state: uart13-state {
    > + cts-pins {
    > + pins = "gpio43";
    > + function = "qup13";
    > + bias-pull-down;
    > + };
    > +
    > + rts-tx-pins {
    > + pins = "gpio44", "gpio45";
    > + function = "qup13";
    > + drive-strength = <2>;
    > + bias-disable;
    > + };
    > +
    > + rx-pins {
    > + pins = "gpio46";
    > + function = "qup13";
    > + bias-pull-up;
    > + };
    > + };
    > +};

    \
     
     \ /
      Last update: 2023-03-27 01:17    [W:3.975 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site