/* Copyright (c) 2013 The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ /include/ "skeleton.dtsi" &soc { qcom,spm@f9089000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0xf9089000 0x1000>; qcom,core-id = <0>; qcom,saw2-ver-reg = <0xfd0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly= <0x3c102800>; qcom,saw2-spm-ctl = <0x0>; qcom,saw2-spm-cmd-wfi = [60 03 60 0b 0f]; qcom,saw2-spm-cmd-spc = [00 20 10 80 30 90 5b 60 03 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; qcom,saw2-spm-cmd-pc = [00 20 10 80 30 90 5b 60 07 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; }; qcom,spm@f9099000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0xf9099000 0x1000>; qcom,core-id = <1>; qcom,saw2-ver-reg = <0xfd0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly= <0x3c102800>; qcom,saw2-spm-ctl = <0x0>; qcom,saw2-spm-cmd-wfi = [60 03 60 0b 0f]; qcom,saw2-spm-cmd-spc = [00 20 10 80 30 90 5b 60 03 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; qcom,saw2-spm-cmd-pc = [00 20 10 80 30 90 5b 60 07 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; }; qcom,spm@f90a9000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0xf90a9000 0x1000>; qcom,core-id = <2>; qcom,saw2-ver-reg = <0xfd0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly= <0x3c102800>; qcom,saw2-spm-ctl = <0x0>; qcom,saw2-spm-cmd-wfi = [60 03 60 0b 0f]; qcom,saw2-spm-cmd-spc = [00 20 10 80 30 90 5b 60 03 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; qcom,saw2-spm-cmd-pc = [00 20 10 80 30 90 5b 60 07 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; }; qcom,spm@f90b9000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0xf90b9000 0x1000>; qcom,core-id = <3>; qcom,saw2-ver-reg = <0xfd0>; qcom,saw2-cfg = <0x01>; qcom,saw2-spm-dly= <0x3c102800>; qcom,saw2-spm-ctl = <0x0>; qcom,saw2-spm-cmd-wfi = [60 03 60 0b 0f]; qcom,saw2-spm-cmd-spc = [00 20 10 80 30 90 5b 60 03 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; qcom,saw2-spm-cmd-pc = [00 20 10 80 30 90 5b 60 07 60 3b 76 76 0b 94 5b 80 10 06 26 30 0f]; }; qcom,spm@f9012000 { compatible = "qcom,spm-v2"; #address-cells = <1>; #size-cells = <1>; reg = <0xf9012000 0x1000>; qcom,core-id = <0xffff>; /* L2/APCS SAW */ qcom,saw2-ver-reg = <0xfd0>; qcom,saw2-cfg = <0x14>; qcom,saw2-spm-dly= <0x3c102800>; qcom,saw2-spm-ctl = <0x0>; qcom,saw2-pmic-data0 = <0x02030080>; qcom,saw2-pmic-data1 = <0x00030000>; qcom,vctl-timeout-us = <50>; qcom,vctl-port = <0x0>; qcom,phase-port = <0x1>; qcom,pfm-port = <0x2>; qcom,saw2-spm-cmd-ret = [00 03 00 7b 0f]; qcom,saw2-spm-cmd-pc = [00 32 b0 10 e0 d0 6b c0 42 f0 11 07 01 b0 4e c0 d0 12 e0 6b 50 02 32 50 f0 7b 0f]; /*APCS_PMIC_OFF_L2RAM_OFF*/ }; qcom,lpm-resources { compatible = "qcom,lpm-resources"; #address-cells = <1>; #size-cells = <0>; qcom,lpm-resources@0 { reg = <0x0>; qcom,name = "vdd-dig"; qcom,type = <0x61706d73>; /* "smpa" */ qcom,id = <0x01>; qcom,key = <0x6e726f63>; /* "corn" */ qcom,init-value = <3>; /* SVS SOC */ }; qcom,lpm-resources@1 { reg = <0x1>; qcom,name = "vdd-mem"; qcom,type = <0x616F646C>; /* "ldoa" */ qcom,id = <0x03>; qcom,key = <0x6e726f63>; /* "corn" */ qcom,init-value = <3>; /* SVS SOC */ }; qcom,lpm-resources@2 { reg = <0x2>; qcom,name = "pxo"; qcom,type = <0x306b6c63>; /* "clk0" */ qcom,id = <0x00>; qcom,key = <0x62616e45>; /* "Enab" */ qcom,init-value = "xo_on"; }; qcom,lpm-resources@3 { reg = <0x3>; qcom,name = "l2"; qcom,local-resource-type; qcom,init-value = "l2_cache_retention"; }; }; qcom,lpm-levels { compatible = "qcom,lpm-levels"; #address-cells = <1>; #size-cells = <0>; qcom,lpm-level@0 { reg = <0x0>; qcom,mode = "wfi"; qcom,xo = "xo_on"; qcom,l2 = "l2_cache_active"; qcom,vdd-mem-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-mem-lower-bound = <4>; /* NORMAL */ qcom,vdd-dig-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-dig-lower-bound = <4>; /* NORMAL */ qcom,irqs-detectable; qcom,gpio-detectable; qcom,latency-us = <1>; qcom,ss-power = <784>; qcom,energy-overhead = <190000>; qcom,time-overhead = <100>; }; qcom,lpm-level@1 { reg = <0x1>; qcom,mode = "standalone_pc"; qcom,xo = "xo_on"; qcom,l2 = "l2_cache_active"; qcom,vdd-mem-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-mem-lower-bound = <4>; /* NORMAL */ qcom,vdd-dig-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-dig-lower-bound = <4>; /* NORMAL */ qcom,irqs-detectable; qcom,gpio-detectable; qcom,latency-us = <3000>; qcom,ss-power = <725>; qcom,energy-overhead = <99500>; qcom,time-overhead = <3130>; }; qcom,lpm-level@2 { reg = <0x2>; qcom,mode = "pc"; qcom,xo = "xo_on"; qcom,l2 = "l2_cache_retention"; qcom,vdd-mem-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-mem-lower-bound = <4>; /* NORMAL */ qcom,vdd-dig-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-dig-lower-bound = <4>; /* NORMAL */ qcom,irqs-detectable; qcom,gpio-detectable; qcom,latency-us = <8000>; qcom,ss-power = <138>; qcom,energy-overhead = <1208400>; qcom,time-overhead = <9200>; }; qcom,lpm-level@3 { reg = <0x3>; qcom,mode = "pc"; qcom,xo = "xo_on"; qcom,l2 = "l2_cache_pc"; qcom,vdd-mem-upper-bound = <4>; /* NORMAL */ qcom,vdd-mem-lower-bound = <3>; /* SVS SOC */ qcom,vdd-dig-upper-bound = <4>; /* NORMAL */ qcom,vdd-dig-lower-bound = <3>; /* SVS SOC */ qcom,irqs-detectable; qcom,gpio-detectable; qcom,latency-us = <9000>; qcom,ss-power = <110>; qcom,energy-overhead = <1250300>; qcom,time-overhead = <9500>; }; qcom,lpm-level@4 { reg = <0x4>; qcom,mode = "pc"; qcom,xo = "xo_off"; qcom,l2 = "l2_cache_pc"; qcom,vdd-mem-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-mem-lower-bound = <4>; /* NORMAL */ qcom,vdd-dig-upper-bound = <6>; /* SUPER TURBO */ qcom,vdd-dig-lower-bound = <4>; /* NORMAL */ qcom,latency-us = <16300>; qcom,ss-power = <63>; qcom,energy-overhead = <2128000>; qcom,time-overhead = <24200>; }; qcom,lpm-level@5 { reg = <0x5>; qcom,mode = "pc"; qcom,xo = "xo_off"; qcom,l2 = "l2_cache_pc"; qcom,vdd-mem-upper-bound = <4>; /* NORMAL */ qcom,vdd-mem-lower-bound = <3>; /* SVS SOC */ qcom,vdd-dig-upper-bound = <4>; /* NORMAL */ qcom,vdd-dig-lower-bound = <3>; /* SVS SOC */ qcom,latency-us = <24000>; qcom,ss-power = <10>; qcom,energy-overhead = <3202600>; qcom,time-overhead = <33000>; }; qcom,lpm-level@6 { reg = <0x6>; qcom,mode = "pc"; qcom,xo = "xo_off"; qcom,l2 = "l2_cache_pc"; qcom,vdd-mem-upper-bound = <3>; /* SVS SOC */ qcom,vdd-mem-lower-bound = <1>; /* RETENTION */ qcom,vdd-dig-upper-bound = <3>; /* SVS SOC */ qcom,vdd-dig-lower-bound = <1>; /* RETENTION */ qcom,latency-us = <26000>; qcom,ss-power = <2>; qcom,energy-overhead = <4252000>; qcom,time-overhead = <38000>; }; }; qcom,pm-boot { compatible = "qcom,pm-boot"; qcom,mode = "tz"; }; qcom,mpm@fc4281d0 { compatible = "qcom,mpm-v2"; reg = <0xfc4281d0 0x1000>, /* MSM_RPM_MPM_BASE 4K */ <0xf9011008 0x4>; /* MSM_APCS_GCC_BASE 4K */ reg-names = "vmpm", "ipc"; interrupts = <0 171 1>; qcom,ipc-bit-offset = <1>; qcom,gic-parent = <&intc>; qcom,gic-map = <47 172>, /* usb2_hsic_async_wakeup_irq */ <53 104>, /* mdss_irq */ <62 222>, /* ee0_krait_hlos_spmi_periph_irq */ <2 216>, /* tsens_upper_lower_int */ <0xff 56>, /* q6_wdog_expired_irq */ <0xff 57>, /* mss_to_apps_irq(0) */ <0xff 58>, /* mss_to_apps_irq(1) */ <0xff 59>, /* mss_to_apps_irq(2) */ <0xff 60>, /* mss_to_apps_irq(3) */ <0xff 61>, /* mss_a2_bam_irq */ <0xff 173>, /* o_wcss_apss_smd_hi */ <0xff 174>, /* o_wcss_apss_smd_med */ <0xff 175>, /* o_wcss_apss_smd_low */ <0xff 176>, /* o_wcss_apss_smsm_irq */ <0xff 177>, /* o_wcss_apss_wlan_data_xfer_done */ <0xff 178>, /* o_wcss_apss_wlan_rx_data_avail */ <0xff 179>, /* o_wcss_apss_asic_intr <0xff 181>, /* o_wcss_apss_wdog_bite_and_reset_rdy */ <0xff 161>, /* lpass_irq_out_spare[4] / <0xff 162>, /* lpass_irq_out_spare[5]*/ <0xff 234>, /* lpass_irq_out_spare[6]*/ <0xff 235>, /* lpass_irq_out_spare[7]*/ <0xff 188>, /* lpass_irq_out_apcs(0) */ <0xff 189>, /* lpass_irq_out_apcs(1) */ <0xff 190>, /* lpass_irq_out_apcs(2) */ <0xff 191>, /* lpass_irq_out_apcs(3) */ <0xff 192>, /* lpass_irq_out_apcs(4) */ <0xff 194>, /* lpass_irq_out_apcs(6) */ <0xff 200>, /* rpm_ipc(4) */ <0xff 201>, /* rpm_ipc(5) */ <0xff 202>, /* rpm_ipc(6) */ <0xff 203>, /* rpm_ipc(7) */ <0xff 204>, /* rpm_ipc(24) */ <0xff 205>, /* rpm_ipc(25) */ <0xff 206>, /* rpm_ipc(26) */ <0xff 207>, /* rpm_ipc(27) */ <0xff 258>, /* rpm_ipc(28) */ <0xff 259>, /* rpm_ipc(29) */ <0xff 275>, /* rpm_ipc(30) */ <0xff 276>, /* rpm_ipc(31) */ <0xff 269>, /* rpm_wdog_expired_irq */ <0xff 240>; /* summary_irq_kpss */ qcom,gpio-parent = <&msmgpio>; qcom,gpio-map = <3 1>, <4 4 >, <5 5 >, <6 9 >, <7 13>, <8 17>, <9 21>, <10 27>, <11 29>, <12 31>, <13 33>, <14 35>, <15 37>, <16 38>, <17 39>, <18 41>, <19 46>, <20 48>, <21 49>, <22 50>, <23 51>, <24 52>, <25 54>, <26 62>, <27 63>, <28 64>, <29 65>, <30 66>, <31 67>, <32 68>, <33 69>, <34 71>, <35 72>, <36 106>, <37 107>, <38 108>, <39 109>, <40 110>, <54 111>, <55 113>; }; qcom,pm-8x60@fe805664 { compatible = "qcom,pm-8x60"; reg = <0xfe805664 0x40>; qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; qcom,pc-resets-timer; }; qcom,rpm-log@fc19dc00 { compatible = "qcom,rpm-log"; reg = <0xfc19dc00 0x4000>; qcom,rpm-addr-phys = <0xfc000000>; qcom,offset-version = <4>; qcom,offset-page-buffer-addr = <36>; qcom,offset-log-len = <40>; qcom,offset-log-len-mask = <44>; qcom,offset-page-indices = <56>; }; qcom,rpm-stats@fc19dba0 { compatible = "qcom,rpm-stats"; reg = <0xfc19dba0 0x1000>; reg-names = "phys_addr_base"; qcom,sleep-stats-version = <2>; }; };