Loading qcom/sdxlemur-pinctrl.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ interrupt-controller; interrupt-parent = <&intc>; #interrupt-cells = <2>; wakeup-parent = <&pdc>; uart3_console_active: uart3_console_active { mux { Loading qcom/sdxlemur-pm.dtsi 0 → 100644 +104 −0 Original line number Diff line number Diff line #include <dt-bindings/interrupt-controller/arm-gic.h> &soc { qcom,lpm-levels { compatible = "qcom,lpm-levels"; #address-cells = <1>; #size-cells = <0>; qcom,pm-cluster@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; idle-state-name = "system"; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; CX_ACTIVE: qcom,pm-cluster-level@0 { reg = <0>; idle-state-name = "cx-active"; compatible = "arm,idle-state"; qcom,psci-mode = <0>; arm,psci-suspend-param = <0x40000004>; entry-latency-us = <120>; exit-latency-us = <150>; min-residency-us = <6488>; }; CX_MIN: qcom,pm-cluster-level@1 {/* C8=>XO off in f/w */ reg = <1>; idle-state-name = "cx-min"; compatible = "arm,idle-state"; qcom,psci-mode = <0x4>; arm,psci-suspend-param = <0x40000008>; entry-latency-us = <140>; exit-latency-us = <200>; min-residency-us = <8000>; local-timer-stop; qcom,min-child-idx = <2>; qcom,notify-rpm; qcom,is-reset; }; qcom,pm-cpu@0 { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,disable-ipi-prediction; qcom,cpu = <&CPU0>; qcom,pm-cpu-level@0 { reg = <0>; idle-state-name = "wfi"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x1>; arm,psci-suspend-param = <0x1>; entry-latency-us = <57>; exit-latency-us = <43>; min-residency-us = <83>; }; A7_SPC: qcom,pm-cpu-level@1 {/* C3 */ reg = <1>; idle-state-name ="standalone-pc"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x3>; arm,psci-suspend-param = <0x40000003>; entry-latency-us = <120>; exit-latency-us = <120>; min-residency-us = <4488>; local-timer-stop; qcom,use-broadcast-timer; qcom,is-reset; }; A7_PC: qcom,pm-cpu-level@2 { /* C4 */ reg = <2>; idle-state-name = "pc"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x4>; arm,psci-suspend-param = <0x40000004>; entry-latency-us = <120>; exit-latency-us = <150>; min-residency-us = <6488>; local-timer-stop; qcom,use-broadcast-timer; qcom,is-reset; }; }; }; }; rpmh-master-stats@b211200 { compatible = "qcom,rpmh-master-stats-v1"; reg = <0xb211200 0x60>; }; soc-sleep-stats@C370000 { compatible = "qcom,rpmh-sleep-stats"; reg = <0xc370000 0x400>; }; }; qcom/sdxlemur.dtsi +39 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ #include <dt-bindings/clock/qcom,rpmh.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interconnect/qcom,sdxlemur.h> #include <dt-bindings/soc/qcom,rpmh-rsc.h> / { #address-cells = <1>; Loading @@ -25,6 +26,12 @@ #size-cells = <1>; ranges; cmd_db: reserved-memory@8fe20000 { compatible = "qcom,cmd-db"; no-map; reg = <0x8fe20000 0x20000>; }; peripheral2_mem: peripheral2_region@8fd00000 { no-map; reg = <0x8fd00000 0x140000>; Loading @@ -46,6 +53,8 @@ device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x0>; enable-method = "psci"; cpu-idle-states = <&A7_SPC &A7_PC &CX_MIN>; }; }; Loading Loading @@ -274,6 +283,35 @@ #reset-cells = <1>; }; apps_rsc: rsc@17830000 { label = "apps_rsc"; compatible = "qcom,rpmh-rsc"; reg = <0x17830000 0x10000>, <0x17840000 0x10000>; reg-names = "drv-0", "drv-1"; interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; qcom,tcs-offset = <0xd00>; qcom,drv-id = <1>; qcom,tcs-config = <ACTIVE_TCS 2>, <SLEEP_TCS 2>, <WAKE_TCS 2>, <CONTROL_TCS 1>; system_pm { compatible = "qcom,system-pm"; }; }; pdc: interrupt-controller@b210000 { compatible = "qcom,sdxlemur-pdc"; reg = <0xb210000 0x30000>; qcom,pdc-ranges = <0 147 52>, <52 266 32>; #interrupt-cells = <3>; interrupt-parent = <&intc>; interrupt-controller; }; /* GCC GDSCs */ gcc_pcie_gdsc: qcom,gdsc@143004 { compatible = "regulator-fixed"; Loading Loading @@ -470,3 +508,4 @@ #include "sdxlemur-pinctrl.dtsi" #include "sdxlemur-stub-regulator.dtsi" #include "sdxlemur-usb.dtsi" #include "sdxlemur-pm.dtsi" Loading
qcom/sdxlemur-pinctrl.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,7 @@ interrupt-controller; interrupt-parent = <&intc>; #interrupt-cells = <2>; wakeup-parent = <&pdc>; uart3_console_active: uart3_console_active { mux { Loading
qcom/sdxlemur-pm.dtsi 0 → 100644 +104 −0 Original line number Diff line number Diff line #include <dt-bindings/interrupt-controller/arm-gic.h> &soc { qcom,lpm-levels { compatible = "qcom,lpm-levels"; #address-cells = <1>; #size-cells = <0>; qcom,pm-cluster@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; idle-state-name = "system"; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; CX_ACTIVE: qcom,pm-cluster-level@0 { reg = <0>; idle-state-name = "cx-active"; compatible = "arm,idle-state"; qcom,psci-mode = <0>; arm,psci-suspend-param = <0x40000004>; entry-latency-us = <120>; exit-latency-us = <150>; min-residency-us = <6488>; }; CX_MIN: qcom,pm-cluster-level@1 {/* C8=>XO off in f/w */ reg = <1>; idle-state-name = "cx-min"; compatible = "arm,idle-state"; qcom,psci-mode = <0x4>; arm,psci-suspend-param = <0x40000008>; entry-latency-us = <140>; exit-latency-us = <200>; min-residency-us = <8000>; local-timer-stop; qcom,min-child-idx = <2>; qcom,notify-rpm; qcom,is-reset; }; qcom,pm-cpu@0 { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,disable-ipi-prediction; qcom,cpu = <&CPU0>; qcom,pm-cpu-level@0 { reg = <0>; idle-state-name = "wfi"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x1>; arm,psci-suspend-param = <0x1>; entry-latency-us = <57>; exit-latency-us = <43>; min-residency-us = <83>; }; A7_SPC: qcom,pm-cpu-level@1 {/* C3 */ reg = <1>; idle-state-name ="standalone-pc"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x3>; arm,psci-suspend-param = <0x40000003>; entry-latency-us = <120>; exit-latency-us = <120>; min-residency-us = <4488>; local-timer-stop; qcom,use-broadcast-timer; qcom,is-reset; }; A7_PC: qcom,pm-cpu-level@2 { /* C4 */ reg = <2>; idle-state-name = "pc"; compatible = "arm,idle-state"; qcom,psci-cpu-mode = <0x4>; arm,psci-suspend-param = <0x40000004>; entry-latency-us = <120>; exit-latency-us = <150>; min-residency-us = <6488>; local-timer-stop; qcom,use-broadcast-timer; qcom,is-reset; }; }; }; }; rpmh-master-stats@b211200 { compatible = "qcom,rpmh-master-stats-v1"; reg = <0xb211200 0x60>; }; soc-sleep-stats@C370000 { compatible = "qcom,rpmh-sleep-stats"; reg = <0xc370000 0x400>; }; };
qcom/sdxlemur.dtsi +39 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ #include <dt-bindings/clock/qcom,rpmh.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interconnect/qcom,sdxlemur.h> #include <dt-bindings/soc/qcom,rpmh-rsc.h> / { #address-cells = <1>; Loading @@ -25,6 +26,12 @@ #size-cells = <1>; ranges; cmd_db: reserved-memory@8fe20000 { compatible = "qcom,cmd-db"; no-map; reg = <0x8fe20000 0x20000>; }; peripheral2_mem: peripheral2_region@8fd00000 { no-map; reg = <0x8fd00000 0x140000>; Loading @@ -46,6 +53,8 @@ device_type = "cpu"; compatible = "arm,cortex-a7"; reg = <0x0>; enable-method = "psci"; cpu-idle-states = <&A7_SPC &A7_PC &CX_MIN>; }; }; Loading Loading @@ -274,6 +283,35 @@ #reset-cells = <1>; }; apps_rsc: rsc@17830000 { label = "apps_rsc"; compatible = "qcom,rpmh-rsc"; reg = <0x17830000 0x10000>, <0x17840000 0x10000>; reg-names = "drv-0", "drv-1"; interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; qcom,tcs-offset = <0xd00>; qcom,drv-id = <1>; qcom,tcs-config = <ACTIVE_TCS 2>, <SLEEP_TCS 2>, <WAKE_TCS 2>, <CONTROL_TCS 1>; system_pm { compatible = "qcom,system-pm"; }; }; pdc: interrupt-controller@b210000 { compatible = "qcom,sdxlemur-pdc"; reg = <0xb210000 0x30000>; qcom,pdc-ranges = <0 147 52>, <52 266 32>; #interrupt-cells = <3>; interrupt-parent = <&intc>; interrupt-controller; }; /* GCC GDSCs */ gcc_pcie_gdsc: qcom,gdsc@143004 { compatible = "regulator-fixed"; Loading Loading @@ -470,3 +508,4 @@ #include "sdxlemur-pinctrl.dtsi" #include "sdxlemur-stub-regulator.dtsi" #include "sdxlemur-usb.dtsi" #include "sdxlemur-pm.dtsi"