Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: u300: support regulators in the device tree

Now that we have enabled board power and the AB3100 regulators,
put the regulator data into the device tree and enable it so
we can start to tie regulators to devices. To begin with we're
only supplying the power to the board itself.

Cc: Mark Brown <broonie@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

+79
+79
arch/arm/boot/dts/ste-u300.dts
··· 24 24 reg = <0x48000000 0x03c00000>; 25 25 }; 26 26 27 + s365 { 28 + compatible = "stericsson,s365"; 29 + vana15-supply = <&ab3100_ldo_d_reg>; 30 + }; 31 + 27 32 timer: timer@c0014000 { 28 33 compatible = "stericsson,u300-apptimer"; 29 34 reg = <0xc0014000 0x1000>; ··· 75 70 interrupts = <8>; 76 71 #address-cells = <1>; 77 72 #size-cells = <0>; 73 + ab3100: ab3100@0x48 { 74 + compatible = "stericsson,ab3100"; 75 + reg = <0x48>; 76 + interrupt-parent = <&vica>; 77 + interrupts = <0>; /* EXT0 IRQ */ 78 + ab3100-regulators { 79 + compatible = "stericsson,ab3100-regulators"; 80 + ab3100_ldo_a_reg: ab3100_ldo_a { 81 + regulator-compatible = "ab3100_ldo_a"; 82 + startup-delay-us = <200>; 83 + regulator-always-on; 84 + regulator-boot-on; 85 + }; 86 + ab3100_ldo_c_reg: ab3100_ldo_c { 87 + regulator-compatible = "ab3100_ldo_c"; 88 + startup-delay-us = <200>; 89 + }; 90 + ab3100_ldo_d_reg: ab3100_ldo_d { 91 + regulator-compatible = "ab3100_ldo_d"; 92 + startup-delay-us = <200>; 93 + }; 94 + ab3100_ldo_e_reg: ab3100_ldo_e { 95 + regulator-compatible = "ab3100_ldo_e"; 96 + regulator-min-microvolt = <1800000>; 97 + regulator-max-microvolt = <1800000>; 98 + startup-delay-us = <200>; 99 + regulator-always-on; 100 + regulator-boot-on; 101 + }; 102 + ab3100_ldo_f_reg: ab3100_ldo_f { 103 + regulator-compatible = "ab3100_ldo_f"; 104 + regulator-min-microvolt = <2500000>; 105 + regulator-max-microvolt = <2500000>; 106 + startup-delay-us = <600>; 107 + regulator-always-on; 108 + regulator-boot-on; 109 + }; 110 + ab3100_ldo_g_reg: ab3100_ldo_g { 111 + regulator-compatible = "ab3100_ldo_g"; 112 + regulator-min-microvolt = <1500000>; 113 + regulator-max-microvolt = <2850000>; 114 + startup-delay-us = <400>; 115 + }; 116 + ab3100_ldo_h_reg: ab3100_ldo_h { 117 + regulator-compatible = "ab3100_ldo_h"; 118 + regulator-min-microvolt = <1200000>; 119 + regulator-max-microvolt = <2750000>; 120 + startup-delay-us = <200>; 121 + }; 122 + ab3100_ldo_k_reg: ab3100_ldo_k { 123 + regulator-compatible = "ab3100_ldo_k"; 124 + regulator-min-microvolt = <1800000>; 125 + regulator-max-microvolt = <2750000>; 126 + startup-delay-us = <200>; 127 + }; 128 + ab3100_ext_reg: ab3100_ext { 129 + regulator-compatible = "ab3100_ext"; 130 + }; 131 + ab3100_buck_reg: ab3100_buck { 132 + regulator-compatible = "ab3100_buck"; 133 + regulator-min-microvolt = <1200000>; 134 + regulator-max-microvolt = <1800000>; 135 + startup-delay-us = <1000>; 136 + regulator-always-on; 137 + regulator-boot-on; 138 + }; 139 + }; 140 + }; 78 141 }; 79 142 80 143 i2c1: i2c@c0005000 { ··· 152 79 interrupts = <9>; 153 80 #address-cells = <1>; 154 81 #size-cells = <0>; 82 + fwcam0: fwcam@0x10 { 83 + reg = <0x10>; 84 + }; 85 + fwcam1: fwcam@0x5d { 86 + reg = <0x5d>; 87 + }; 155 88 }; 156 89 157 90 amba {