#include "msm8937-regulator.dtsi" &soc { /* delete the CPR and MEM ACC nodes of msm8937 */ /delete-node/ regulator@b018000; /delete-node/ regulator@01946004; mem_acc_vreg_corner: regulator@01946004 { compatible = "qcom,mem-acc-regulator"; reg = <0xa4000 0x1000>; reg-names = "efuse_addr"; regulator-name = "mem_acc_corner"; regulator-min-microvolt = <1>; regulator-max-microvolt = <3>; qcom,acc-reg-addr-list = <0x01942138 0x01942130 0x01942120 0x01942124>; qcom,acc-init-reg-config = <1 0xff>, <2 0x5555>; qcom,num-acc-corners = <3>; qcom,boot-acc-corner = <2>; qcom,corner1-reg-config = /* SVS+ => SVS+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => TURBO/NOM+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x0>, < 4 0x0>; qcom,corner2-reg-config = /* NOM => SVS+ */ < 3 0x30c30c3>, < 4 0x30c3>, /* NOM => NOM */ <(-1) (-1)>, <(-1) (-1)>, /* NOM => TURBO/NOM+ */ < 3 0x0>, < 4 0x0>; qcom,corner3-reg-config = /* TURBO/NOM+ => SVS+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x30c30c3>, < 4 0x30c3>, /* TURBO/NOM+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* TURBO/NOM+ => TURBO/NOM+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>; qcom,override-acc-fuse-sel = <71 17 3 0>; qcom,override-fuse-version-map = <1>, <2>, <3>, <4>; qcom,override-corner1-addr-val-map = /* 1st fuse version tuple matched */ /* SVS+ => SVS+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => TURBO/NOM+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x1>, < 4 0x0>, /* 2nd fuse version tuple matched */ /* SVS+ => SVS+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => TURBO/NOM+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x3>, < 4 0x0>, /* 3rd fuse version tuple matched */ /* SVS+ => SVS+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => NOM */ < 3 0x1041043>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => TURBO/NOM+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x0>, < 4 0x0>, /* 4th fuse version tuple matched */ /* SVS+ => SVS+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => NOM */ < 3 0x1041043>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* SVS+ => TURBO/NOM+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x1>, < 4 0x0>; qcom,override-corner2-addr-val-map = /* 1st fuse version tuple matched */ /* NOM => SVS+ */ < 3 0x30c30c3>, < 4 0x30c3>, /* NOM => NOM */ <(-1) (-1)>, <(-1) (-1)>, /* NOM => TURBO/NOM+ */ < 3 0x1>, < 4 0x0>, /* 2nd fuse version tuple matched */ /* NOM => SVS+ */ < 3 0x30c30c3>, < 4 0x30c3>, /* NOM => NOM */ <(-1) (-1)>, <(-1) (-1)>, /* NOM => TURBO/NOM+ */ < 3 0x3>, < 4 0x0>, /* 3rd fuse version tuple matched */ /* NOM => SVS+ */ < 3 0x30c30c3>, < 4 0x30c3>, /* NOM => NOM */ <(-1) (-1)>, <(-1) (-1)>, /* NOM => TURBO/NOM+ */ < 3 0x0>, < 4 0x0>, /* 4th fuse version tuple matched */ /* NOM => SVS+ */ < 3 0x30c30c3>, < 4 0x30c3>, /* NOM => NOM */ <(-1) (-1)>, <(-1) (-1)>, /* NOM => TURBO/NOM+ */ < 3 0x1>, < 4 0x0>; qcom,override-corner3-addr-val-map = /* 1st fuse version tuple matched */ /* TURBO/NOM+ => SVS+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x30c30c3>, < 4 0x30c3>, /* TURBO/NOM+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* TURBO/NOM+ => TURBO/NOM+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* 2nd fuse version tuple matched */ /* TURBO/NOM+ => SVS+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x30c30c3>, < 4 0x30c3>, /* TURBO/NOM+ => NOM */ < 3 0x1041041>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* TURBO/NOM+ => TURBO/NOM+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* 3rd fuse version tuple matched */ /* TURBO/NOM+ => SVS+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x30c30c3>, < 4 0x30c3>, /* TURBO/NOM+ => NOM */ < 3 0x1041043>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* TURBO/NOM+ => TURBO/NOM+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, /* 4th fuse version tuple matched */ /* TURBO/NOM+ => SVS+ */ < 3 0x1041041>, < 4 0x1041>, < 3 0x30c30c3>, < 4 0x30c3>, /* TURBO/NOM+ => NOM */ < 3 0x1041043>, < 4 0x1041>, <(-1) (-1)>, <(-1) (-1)>, /* TURBO/NOM+ => TURBO/NOM+ */ <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>, <(-1) (-1)>; }; apc_vreg_corner: regulator@b018000 { compatible = "qcom,cpr-regulator"; reg = <0xb018000 0x1000>, <0xb011064 0x4>, <0xa4000 0x1000>; reg-names = "rbcpr", "rbcpr_clk", "efuse_addr"; interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>; regulator-name = "apc_corner"; regulator-min-microvolt = <1>; regulator-max-microvolt = <5>; qcom,cpr-fuse-corners = <3>; qcom,cpr-voltage-ceiling = <1155000 1225000 1350000>; qcom,cpr-voltage-floor = <1050000 1050000 1090000>; vdd-apc-supply = <&pm8937_s5>; mem-acc-supply = <&mem_acc_vreg_corner>; qcom,cpr-ref-clk = <19200>; qcom,cpr-timer-delay = <5000>; qcom,cpr-timer-cons-up = <0>; qcom,cpr-timer-cons-down = <2>; qcom,cpr-irq-line = <0>; qcom,cpr-step-quotient = <16>; qcom,cpr-up-threshold = <2>; qcom,cpr-down-threshold = <4>; qcom,cpr-idle-clocks = <15>; qcom,cpr-gcnt-time = <1>; qcom,vdd-apc-step-up-limit = <1>; qcom,vdd-apc-step-down-limit = <1>; qcom,cpr-apc-volt-step = <5000>; qcom,cpr-fuse-row = <67 0>; qcom,cpr-fuse-target-quot = <42 24 6>; qcom,cpr-fuse-ro-sel = <60 57 54>; qcom,cpr-init-voltage-ref = <1155000 1225000 1350000>; qcom,cpr-fuse-init-voltage = <67 36 6 0>, <67 18 6 0>, <67 0 6 0>; qcom,cpr-fuse-quot-offset = <71 26 6 0>, <71 20 6 0>, <70 54 7 0>; qcom,cpr-fuse-quot-offset-scale = <5 5 5>; qcom,cpr-init-voltage-step = <10000>; qcom,cpr-corner-map = <1 2 3 3 3>; qcom,cpr-corner-frequency-map = <1 960000000>, <2 1094400000>, <3 1248000000>, <4 1401000000>, <5 1497600000>; qcom,speed-bin-fuse-sel = <37 34 3 0>; qcom,cpr-speed-bin-max-corners = <0 (-1) 1 2 4>, <1 (-1) 1 2 5>; qcom,cpr-quot-adjust-scaling-factor-max = <0 1400 1400>; qcom,cpr-voltage-scaling-factor-max = <0 2000 2000>; qcom,cpr-scaled-init-voltage-as-ceiling; qcom,cpr-fuse-revision = <69 39 3 0>; qcom,pvs-version-fuse-sel = <37 40 3 0>; /* foundry */ qcom,cpr-fuse-version-map = < 1 0 3 (-1) (-1) (-1)>, < 1 5 3 (-1) (-1) (-1)>, <(-1) 0 1 (-1) (-1) (-1)>, <(-1) 0 2 (-1) (-1) (-1)>, <(-1) 5 1 (-1) (-1) (-1)>, <(-1) 5 2 (-1) (-1) (-1)>, <(-1) (-1) (-1) (-1) (-1) (-1)>; qcom,cpr-quotient-adjustment = <50 40 50>, <0 0 40>, <50 40 100>, <50 40 50>, <0 0 100>, <0 0 50>, <0 0 0>; qcom,cpr-init-voltage-adjustment = <30000 5000 10000>, <0 0 0>, <30000 5000 35000>, <30000 5000 10000>, <0 0 20000>, <0 0 0>, <0 0 0>; qcom,cpr-enable; }; eldo2_pm8937: eldo2 { compatible = "regulator-fixed"; regulator-name = "eldo2_pm8937"; startup-delay-us = <0>; enable-active-high; gpio = <&pm8937_gpios 7 0>; regulator-always-on; }; };