Loading arch/arm/boot/dts/qcom/msm8996-pm.dtsi +83 −399 Original line number Diff line number Diff line Loading @@ -18,312 +18,19 @@ reg = <0x9A10000 0x1000>; qcom,name = "system-cbf"; /* CBF SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly = <0x3FF0C00A>; qcom,saw2-spm-ctl = <0x1>; qcom,cpu-vctl-list = <&CPU0 &CPU1 &CPU2 &CPU3>; qcom,vctl-timeout-us = <50>; qcom,vctl-port = <0x0>; qcom,phase-port = <0x1>; qcom,saw2-pmic-data0 = <0x00030000>; /* VDD_APC0 off */ qcom,saw2-pmic-data1 = <0x04030080>; /* VDD_APC0 on */ qcom,saw2-avs-ctl = <0x1100>; qcom,pfm-port = <0x2>; qcom,supports-rpm-hs; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0F]; /* M1 */ qcom,event_sync = <0xFF>; qcom,spm_en; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-fpc"; qcom,sequence = [60 E0 F0 B0 EB DB FB 00 08 C0 C0 10 80 90 A0 50 1B 9B 20 01 03 11 90 A0 3F 3F 3F 8B 80 20 60 50 0B 08 44 42 08 D0 D0 08 10 00 B0 F0 0F]; /* M4 */ qcom,event_sync = <0xFF>; qcom,ret_mode; qcom,pc_mode; qcom,isar; qcom,slp_cmd_mode; qcom,spm_en; }; }; qcom,spm@9A00000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9A00000 0x1000>, <0x9A01048 0x4>, <0x6500200 0x4>; reg-names = "saw-base", "hw-flush", "slpreq"; qcom,name = "system-l3"; /* L3 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* E1 */ qcom,event_sync = <0xFF>; qcom,spm_en; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-fpc"; qcom,sequence = [E0 A0 B0 AB BB 02 C0 C0 20 10 80 70 5B 3B 03 66 A0 1B 80 70 4B 2B 0B 40 04 42 02 D0 D0 00 20 14 B0 0F]; /* E4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@99A0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99A0000 0x1000>, <0x99A1060 0x4>; reg-names = "saw-base", "hw-flush"; qcom,name = "pwr-l2"; /* Power L2 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x04>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x0>; qcom,apm-ctrl = <&apc_apm>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* D1 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-gdhs"; qcom,sequence = [60 A8 78 72 8B 70 6B 98 00 88 20 10 E0 A0 5B 3B 03 98 78 E0 A0 4B 2B 60 0B 7B 30 08 02 0E 20 10 88 80 32 CB 80 0F]; /* D3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; qcom,mode2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [60 A8 78 50 6B 98 00 88 20 10 F0 D0 A0 5B 3B 03 C4 98 78 1B D0 A0 4B 2B 60 0B F0 7B 30 08 EB 88 02 0E 20 10 30 0F]; /* D5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@99D0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99D0000 0x1000>, <0x99D1060 0x4>; reg-names = "saw-base", "hw-flush"; qcom,name = "perf-l2"; /* Perf L2 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x04>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x0>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* D1 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-gdhs"; qcom,sequence = [60 A8 78 72 8B 70 98 6B 00 88 20 10 E0 A0 5B 3B 03 98 78 E0 A0 4B 2B 60 0B 7B 30 08 08 06 20 10 88 80 32 CB 80 0F]; /* D3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; qcom,mode2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [60 A8 78 50 6B 98 00 88 20 10 F0 D0 A0 5B 3B 03 C4 98 78 1B D0 A0 4B 2B 60 0B F0 7B 30 08 EB 88 02 0E 20 10 30 0F]; /* D5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@9980000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9980000 0x1000>; qcom,name = "cpu0"; qcom,cpu = <&CPU0>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@9990000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9990000 0x1000>; qcom,name = "cpu1"; qcom,cpu = <&CPU1>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@99B0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99B0000 0x1000>; qcom,name = "cpu2"; qcom,cpu = <&CPU2>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@99C0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99C0000 0x1000>; qcom,name = "cpu3"; qcom,cpu = <&CPU3>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,use-psci; #address-cells = <1>; #size-cells = <0>; status = "disabled"; qcom,pm-cluster@0 { reg = <0>; #address-cells = <1>; Loading @@ -331,27 +38,28 @@ label = "system"; qcom,spm-device-names = "cbf", "l3"; qcom,default-level = <0>; qcom,psci-mode-shift = <8>; qcom,psci-mode-mask = <0xff>; qcom,pm-cluster-level@0{ reg = <0>; label = "system-wfi"; qcom,spm-cbf-mode = "wfi"; qcom,spm-l3-mode = "wfi"; qcom,psci-mode = <0>; qcom,latency-us = <100>; qcom,ss-power = <1000>; qcom,energy-overhead = <3000>; qcom,time-overhead = <100>; qcom,ss-power = <1050>; qcom,energy-overhead = <23000>; qcom,time-overhead = <120>; }; qcom,pm-cluster-level@1{ reg = <1>; label = "system-fpc"; qcom,spm-cbf-mode = "fpc"; qcom,spm-l3-mode = "fpc"; qcom,latency-us = <1000>; qcom,ss-power = <100>; qcom,energy-overhead = <30000>; qcom,time-overhead = <800>; qcom,psci-mode = <0x34>; qcom,latency-us = <11000>; qcom,ss-power = <72>; qcom,energy-overhead = <90000>; qcom,time-overhead = <3200>; qcom,min-child-idx = <2>; qcom,notify-rpm; }; Loading @@ -364,69 +72,65 @@ qcom,spm-device-names = "l2"; qcom,default-level=<0>; qcom,cpu = <&CPU0 &CPU1>; qcom,psci-mode-shift = <4>; qcom,psci-mode-mask = <0xf>; qcom,pm-cluster-level@0{ qcom,pm-cluster-level@0{ /* D1 */ reg = <0>; label = "pwr-l2-wfi"; qcom,spm-l2-mode = "wfi"; qcom,latency-us = <100>; qcom,ss-power = <1000>; qcom,energy-overhead = <30000>; qcom,time-overhead = <100>; qcom,psci-mode = <1>; qcom,latency-us = <40>; qcom,ss-power = <800>; qcom,energy-overhead = <22000>; qcom,time-overhead = <85>; }; qcom,pm-cluster-level@1{ qcom,pm-cluster-level@1{ /* D3 */ reg = <1>; label = "pwr-l2-gdhs"; qcom,spm-l2-mode = "gdhs"; qcom,latency-us = <500>; qcom,ss-power = <500>; qcom,psci-mode = <3>; qcom,latency-us = <600>; qcom,ss-power = <350>; qcom,energy-overhead = <30000>; qcom,time-overhead = <3500>; qcom,min-child-idx = <2>; qcom,time-overhead = <1250>; qcom,min-child-idx = <1>; }; qcom,pm-cluster-level@2{ qcom,pm-cluster-level@2{ /* D4 */ reg = <2>; label = "pwr-l2-pc"; qcom,spm-l2-mode = "pc"; qcom,latency-us = <800>; qcom,ss-power = <100>; qcom,energy-overhead = <300000>; qcom,time-overhead = <5000>; qcom,min-child-idx = <2>; label = "pwr-l2-fpc"; qcom,psci-mode = <4>; qcom,latency-us = <700>; qcom,ss-power = <180>; qcom,energy-overhead = <65000>; qcom,time-overhead = <1900>; qcom,min-child-idx = <1>; }; qcom,pm-cpu { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,pm-cpu-level@0 { qcom,pm-cpu-level@0 { /* C1 */ reg = <0>; qcom,psci-cpu-mode = <1>; qcom,spm-cpu-mode = "wfi"; qcom,latency-us = <1>; qcom,ss-power = <715>; qcom,energy-overhead = <17700>; qcom,time-overhead = <2>; qcom,latency-us = <20>; qcom,ss-power = <500>; qcom,energy-overhead = <15000>; qcom,time-overhead = <60>; }; qcom,pm-cpu-level@1 { qcom,pm-cpu-level@1 { /* C4 */ reg = <1>; qcom,spm-cpu-mode = "retention"; qcom,latency-us = <100>; qcom,ss-power = <476>; qcom,energy-overhead = <22530>; qcom,time-overhead = <350>; }; qcom,pm-cpu-level@2 { reg = <2>; qcom,spm-cpu-mode = "pc"; qcom,latency-us = <500>; qcom,ss-power = <100>; qcom,energy-overhead = <225300>; qcom,time-overhead = <5000>; qcom,use-broadcast-timer; qcom,spm-cpu-mode = "fpc"; qcom,psci-cpu-mode = <4>; qcom,latency-us = <300>; qcom,ss-power = <180>; qcom,energy-overhead = <23000>; qcom,time-overhead = <550>; }; }; }; Loading @@ -439,89 +143,69 @@ qcom,spm-device-names = "l2"; qcom,default-level=<0>; qcom,cpu = <&CPU2 &CPU3>; qcom,psci-mode-shift = <4>; qcom,psci-mode-mask = <0xf>; qcom,pm-cluster-level@0{ qcom,pm-cluster-level@0{ /* D1 */ reg = <0>; label = "perf-l2-wfi"; qcom,spm-l2-mode = "wfi"; qcom,latency-us = <100>; qcom,psci-mode = <1>; qcom,latency-us = <40>; qcom,ss-power = <1000>; qcom,energy-overhead = <30000>; qcom,time-overhead = <100>; qcom,energy-overhead = <24000>; qcom,time-overhead = <80>; }; qcom,pm-cluster-level@2{ qcom,pm-cluster-level@1{ /* D3 */ reg = <1>; label = "perf-l2-gdhs"; qcom,spm-l2-mode = "gdhs"; qcom,latency-us = <400>; qcom,psci-mode = <3>; qcom,latency-us = <700>; qcom,ss-power = <500>; qcom,energy-overhead = <100000>; qcom,time-overhead = <500>; qcom,min-child-idx = <2>; qcom,energy-overhead = <33000>; qcom,time-overhead = <1350>; qcom,min-child-idx = <1>; }; qcom,pm-cluster-level@1{ reg = <1>; label = "perf-l2-pc"; qcom,spm-l2-mode = "pc"; qcom,pm-cluster-level@2{ /* D4 */ reg = <2>; label = "perf-l2-fpc"; qcom,psci-mode = <4>; qcom,latency-us = <800>; qcom,ss-power = <100>; qcom,energy-overhead = <300000>; qcom,time-overhead = <1000>; qcom,min-child-idx = <2>; qcom,ss-power = <250>; qcom,energy-overhead = <80000>; qcom,time-overhead = <2300>; qcom,min-child-idx = <1>; }; qcom,pm-cpu { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,pm-cpu-level@0 { qcom,pm-cpu-level@0 { /* C1 */ reg = <0>; qcom,psci-cpu-mode = <1>; qcom,spm-cpu-mode = "wfi"; qcom,latency-us = <1>; qcom,latency-us = <25>; qcom,ss-power = <715>; qcom,energy-overhead = <17700>; qcom,time-overhead = <2>; qcom,time-overhead = <50>; }; qcom,pm-cpu-level@1 { qcom,pm-cpu-level@1 { /* C4 */ reg = <1>; qcom,spm-cpu-mode = "retention"; qcom,latency-us = <100>; qcom,ss-power = <476>; qcom,energy-overhead = <225300>; qcom,time-overhead = <350>; }; qcom,pm-cpu-level@2 { reg = <2>; qcom,spm-cpu-mode = "pc"; qcom,latency-us = <500>; qcom,ss-power = <100>; qcom,energy-overhead = <225300>; qcom,time-overhead = <5000>; qcom,use-broadcast-timer; }; qcom,spm-cpu-mode = "fpc"; qcom,psci-cpu-mode = <4>; qcom,latency-us = <250>; qcom,ss-power = <220>; qcom,energy-overhead = <28000>; qcom,time-overhead = <500>; }; }; }; }; qcom,pm@66bf664 { compatible = "qcom,pm"; #address-cells = <1>; #size-cells = <1>; ranges; reg = <0x66bf664 0x40>; clock-names = "cpu0_clk", "cpu1_clk", "cpu2_clk", "cpu3_clk", "l2_clk"; qcom,saw-turns-off-pll; clocks = <&clock_cpu clk_pwrcl_clk>, <&clock_cpu clk_pwrcl_clk>, <&clock_cpu clk_perfcl_clk>, <&clock_cpu clk_perfcl_clk>, <&clock_cpu clk_cbf_clk>; }; qcom,mpm@681b8 { Loading Loading
arch/arm/boot/dts/qcom/msm8996-pm.dtsi +83 −399 Original line number Diff line number Diff line Loading @@ -18,312 +18,19 @@ reg = <0x9A10000 0x1000>; qcom,name = "system-cbf"; /* CBF SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly = <0x3FF0C00A>; qcom,saw2-spm-ctl = <0x1>; qcom,cpu-vctl-list = <&CPU0 &CPU1 &CPU2 &CPU3>; qcom,vctl-timeout-us = <50>; qcom,vctl-port = <0x0>; qcom,phase-port = <0x1>; qcom,saw2-pmic-data0 = <0x00030000>; /* VDD_APC0 off */ qcom,saw2-pmic-data1 = <0x04030080>; /* VDD_APC0 on */ qcom,saw2-avs-ctl = <0x1100>; qcom,pfm-port = <0x2>; qcom,supports-rpm-hs; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0F]; /* M1 */ qcom,event_sync = <0xFF>; qcom,spm_en; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-fpc"; qcom,sequence = [60 E0 F0 B0 EB DB FB 00 08 C0 C0 10 80 90 A0 50 1B 9B 20 01 03 11 90 A0 3F 3F 3F 8B 80 20 60 50 0B 08 44 42 08 D0 D0 08 10 00 B0 F0 0F]; /* M4 */ qcom,event_sync = <0xFF>; qcom,ret_mode; qcom,pc_mode; qcom,isar; qcom,slp_cmd_mode; qcom,spm_en; }; }; qcom,spm@9A00000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9A00000 0x1000>, <0x9A01048 0x4>, <0x6500200 0x4>; reg-names = "saw-base", "hw-flush", "slpreq"; qcom,name = "system-l3"; /* L3 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* E1 */ qcom,event_sync = <0xFF>; qcom,spm_en; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-fpc"; qcom,sequence = [E0 A0 B0 AB BB 02 C0 C0 20 10 80 70 5B 3B 03 66 A0 1B 80 70 4B 2B 0B 40 04 42 02 D0 D0 00 20 14 B0 0F]; /* E4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@99A0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99A0000 0x1000>, <0x99A1060 0x4>; reg-names = "saw-base", "hw-flush"; qcom,name = "pwr-l2"; /* Power L2 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x04>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x0>; qcom,apm-ctrl = <&apc_apm>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* D1 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-gdhs"; qcom,sequence = [60 A8 78 72 8B 70 6B 98 00 88 20 10 E0 A0 5B 3B 03 98 78 E0 A0 4B 2B 60 0B 7B 30 08 02 0E 20 10 88 80 32 CB 80 0F]; /* D3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; qcom,mode2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [60 A8 78 50 6B 98 00 88 20 10 F0 D0 A0 5B 3B 03 C4 98 78 1B D0 A0 4B 2B 60 0B F0 7B 30 08 EB 88 02 0E 20 10 30 0F]; /* D5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@99D0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99D0000 0x1000>, <0x99D1060 0x4>; reg-names = "saw-base", "hw-flush"; qcom,name = "perf-l2"; /* Perf L2 SAW */ qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x04>; qcom,saw2-spm-dly = <0x3C102800>; qcom,saw2-spm-ctl = <0x0>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [03 0B 0F]; /* D1 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-gdhs"; qcom,sequence = [60 A8 78 72 8B 70 98 6B 00 88 20 10 E0 A0 5B 3B 03 98 78 E0 A0 4B 2B 60 0B 7B 30 08 08 06 20 10 88 80 32 CB 80 0F]; /* D3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; qcom,mode2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [60 A8 78 50 6B 98 00 88 20 10 F0 D0 A0 5B 3B 03 C4 98 78 1B D0 A0 4B 2B 60 0B F0 7B 30 08 EB 88 02 0E 20 10 30 0F]; /* D5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,isar; qcom,spm_en; }; }; qcom,spm@9980000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9980000 0x1000>; qcom,name = "cpu0"; qcom,cpu = <&CPU0>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@9990000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x9990000 0x1000>; qcom,name = "cpu1"; qcom,cpu = <&CPU1>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@99B0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99B0000 0x1000>; qcom,name = "cpu2"; qcom,cpu = <&CPU2>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C4 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,spm@99C0000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0x99C0000 0x1000>; qcom,name = "cpu3"; qcom,cpu = <&CPU3>; qcom,saw2-ver-reg = <0xFD0>; qcom,saw2-cfg = <0x03>; qcom,saw2-spm-dly = <0X3C102803>; qcom,saw2-spm-ctl = <0x1>; qcom,mode0 { qcom,label = "qcom,saw2-spm-cmd-wfi"; qcom,sequence = [50 AB 00 03 0B 00 52 BB 0F]; /* C1.5 */ qcom,event_sync = <0xFF>; }; qcom,mode1 { qcom,label = "qcom,saw2-spm-cmd-ret"; qcom,sequence = [50 6A AB 60 00 58 20 10 48 90 5B 3B 03 48 4B 6B 90 2B 20 10 0B 58 00 52 BB 0F]; /* C3 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,spm_en; }; qcom,mode@2 { qcom,label = "qcom,saw2-spm-cmd-pc"; qcom,sequence = [50 68 AB 60 00 58 20 10 48 A0 5B 3B 03 C6 1B 48 4B 6B A0 2B 0B 7B 30 06 20 12 58 30 52 BB 0F]; /* C5 */ qcom,event_sync = <0xFF>; qcom,pc_mode; qcom,ret_mode; qcom,spm_en; }; }; qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,use-psci; #address-cells = <1>; #size-cells = <0>; status = "disabled"; qcom,pm-cluster@0 { reg = <0>; #address-cells = <1>; Loading @@ -331,27 +38,28 @@ label = "system"; qcom,spm-device-names = "cbf", "l3"; qcom,default-level = <0>; qcom,psci-mode-shift = <8>; qcom,psci-mode-mask = <0xff>; qcom,pm-cluster-level@0{ reg = <0>; label = "system-wfi"; qcom,spm-cbf-mode = "wfi"; qcom,spm-l3-mode = "wfi"; qcom,psci-mode = <0>; qcom,latency-us = <100>; qcom,ss-power = <1000>; qcom,energy-overhead = <3000>; qcom,time-overhead = <100>; qcom,ss-power = <1050>; qcom,energy-overhead = <23000>; qcom,time-overhead = <120>; }; qcom,pm-cluster-level@1{ reg = <1>; label = "system-fpc"; qcom,spm-cbf-mode = "fpc"; qcom,spm-l3-mode = "fpc"; qcom,latency-us = <1000>; qcom,ss-power = <100>; qcom,energy-overhead = <30000>; qcom,time-overhead = <800>; qcom,psci-mode = <0x34>; qcom,latency-us = <11000>; qcom,ss-power = <72>; qcom,energy-overhead = <90000>; qcom,time-overhead = <3200>; qcom,min-child-idx = <2>; qcom,notify-rpm; }; Loading @@ -364,69 +72,65 @@ qcom,spm-device-names = "l2"; qcom,default-level=<0>; qcom,cpu = <&CPU0 &CPU1>; qcom,psci-mode-shift = <4>; qcom,psci-mode-mask = <0xf>; qcom,pm-cluster-level@0{ qcom,pm-cluster-level@0{ /* D1 */ reg = <0>; label = "pwr-l2-wfi"; qcom,spm-l2-mode = "wfi"; qcom,latency-us = <100>; qcom,ss-power = <1000>; qcom,energy-overhead = <30000>; qcom,time-overhead = <100>; qcom,psci-mode = <1>; qcom,latency-us = <40>; qcom,ss-power = <800>; qcom,energy-overhead = <22000>; qcom,time-overhead = <85>; }; qcom,pm-cluster-level@1{ qcom,pm-cluster-level@1{ /* D3 */ reg = <1>; label = "pwr-l2-gdhs"; qcom,spm-l2-mode = "gdhs"; qcom,latency-us = <500>; qcom,ss-power = <500>; qcom,psci-mode = <3>; qcom,latency-us = <600>; qcom,ss-power = <350>; qcom,energy-overhead = <30000>; qcom,time-overhead = <3500>; qcom,min-child-idx = <2>; qcom,time-overhead = <1250>; qcom,min-child-idx = <1>; }; qcom,pm-cluster-level@2{ qcom,pm-cluster-level@2{ /* D4 */ reg = <2>; label = "pwr-l2-pc"; qcom,spm-l2-mode = "pc"; qcom,latency-us = <800>; qcom,ss-power = <100>; qcom,energy-overhead = <300000>; qcom,time-overhead = <5000>; qcom,min-child-idx = <2>; label = "pwr-l2-fpc"; qcom,psci-mode = <4>; qcom,latency-us = <700>; qcom,ss-power = <180>; qcom,energy-overhead = <65000>; qcom,time-overhead = <1900>; qcom,min-child-idx = <1>; }; qcom,pm-cpu { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,pm-cpu-level@0 { qcom,pm-cpu-level@0 { /* C1 */ reg = <0>; qcom,psci-cpu-mode = <1>; qcom,spm-cpu-mode = "wfi"; qcom,latency-us = <1>; qcom,ss-power = <715>; qcom,energy-overhead = <17700>; qcom,time-overhead = <2>; qcom,latency-us = <20>; qcom,ss-power = <500>; qcom,energy-overhead = <15000>; qcom,time-overhead = <60>; }; qcom,pm-cpu-level@1 { qcom,pm-cpu-level@1 { /* C4 */ reg = <1>; qcom,spm-cpu-mode = "retention"; qcom,latency-us = <100>; qcom,ss-power = <476>; qcom,energy-overhead = <22530>; qcom,time-overhead = <350>; }; qcom,pm-cpu-level@2 { reg = <2>; qcom,spm-cpu-mode = "pc"; qcom,latency-us = <500>; qcom,ss-power = <100>; qcom,energy-overhead = <225300>; qcom,time-overhead = <5000>; qcom,use-broadcast-timer; qcom,spm-cpu-mode = "fpc"; qcom,psci-cpu-mode = <4>; qcom,latency-us = <300>; qcom,ss-power = <180>; qcom,energy-overhead = <23000>; qcom,time-overhead = <550>; }; }; }; Loading @@ -439,89 +143,69 @@ qcom,spm-device-names = "l2"; qcom,default-level=<0>; qcom,cpu = <&CPU2 &CPU3>; qcom,psci-mode-shift = <4>; qcom,psci-mode-mask = <0xf>; qcom,pm-cluster-level@0{ qcom,pm-cluster-level@0{ /* D1 */ reg = <0>; label = "perf-l2-wfi"; qcom,spm-l2-mode = "wfi"; qcom,latency-us = <100>; qcom,psci-mode = <1>; qcom,latency-us = <40>; qcom,ss-power = <1000>; qcom,energy-overhead = <30000>; qcom,time-overhead = <100>; qcom,energy-overhead = <24000>; qcom,time-overhead = <80>; }; qcom,pm-cluster-level@2{ qcom,pm-cluster-level@1{ /* D3 */ reg = <1>; label = "perf-l2-gdhs"; qcom,spm-l2-mode = "gdhs"; qcom,latency-us = <400>; qcom,psci-mode = <3>; qcom,latency-us = <700>; qcom,ss-power = <500>; qcom,energy-overhead = <100000>; qcom,time-overhead = <500>; qcom,min-child-idx = <2>; qcom,energy-overhead = <33000>; qcom,time-overhead = <1350>; qcom,min-child-idx = <1>; }; qcom,pm-cluster-level@1{ reg = <1>; label = "perf-l2-pc"; qcom,spm-l2-mode = "pc"; qcom,pm-cluster-level@2{ /* D4 */ reg = <2>; label = "perf-l2-fpc"; qcom,psci-mode = <4>; qcom,latency-us = <800>; qcom,ss-power = <100>; qcom,energy-overhead = <300000>; qcom,time-overhead = <1000>; qcom,min-child-idx = <2>; qcom,ss-power = <250>; qcom,energy-overhead = <80000>; qcom,time-overhead = <2300>; qcom,min-child-idx = <1>; }; qcom,pm-cpu { #address-cells = <1>; #size-cells = <0>; qcom,psci-mode-shift = <0>; qcom,psci-mode-mask = <0xf>; qcom,pm-cpu-level@0 { qcom,pm-cpu-level@0 { /* C1 */ reg = <0>; qcom,psci-cpu-mode = <1>; qcom,spm-cpu-mode = "wfi"; qcom,latency-us = <1>; qcom,latency-us = <25>; qcom,ss-power = <715>; qcom,energy-overhead = <17700>; qcom,time-overhead = <2>; qcom,time-overhead = <50>; }; qcom,pm-cpu-level@1 { qcom,pm-cpu-level@1 { /* C4 */ reg = <1>; qcom,spm-cpu-mode = "retention"; qcom,latency-us = <100>; qcom,ss-power = <476>; qcom,energy-overhead = <225300>; qcom,time-overhead = <350>; }; qcom,pm-cpu-level@2 { reg = <2>; qcom,spm-cpu-mode = "pc"; qcom,latency-us = <500>; qcom,ss-power = <100>; qcom,energy-overhead = <225300>; qcom,time-overhead = <5000>; qcom,use-broadcast-timer; }; qcom,spm-cpu-mode = "fpc"; qcom,psci-cpu-mode = <4>; qcom,latency-us = <250>; qcom,ss-power = <220>; qcom,energy-overhead = <28000>; qcom,time-overhead = <500>; }; }; }; }; qcom,pm@66bf664 { compatible = "qcom,pm"; #address-cells = <1>; #size-cells = <1>; ranges; reg = <0x66bf664 0x40>; clock-names = "cpu0_clk", "cpu1_clk", "cpu2_clk", "cpu3_clk", "l2_clk"; qcom,saw-turns-off-pll; clocks = <&clock_cpu clk_pwrcl_clk>, <&clock_cpu clk_pwrcl_clk>, <&clock_cpu clk_perfcl_clk>, <&clock_cpu clk_perfcl_clk>, <&clock_cpu clk_cbf_clk>; }; qcom,mpm@681b8 { Loading