@@ -202,6 +202,104 @@
reg = <5>; /* mailbox 5 is i2c */
interrupts = <0 40 0x4>;
stericsson,irq-base = <520>;
+
+ ab8500-regulators {
+ compatible = "stericsson,ab8500-regulator";
+ stericsson,regurequestctrl2 = <0x00>;
+ stericsson,regurequestctrl3 = <0x00>;
+ stericsson,regurequestctrl4 = <0x00>;
+ stericsson,regusysclkreq1hpvalid1 = <0x00>;
+ stericsson,regusysclkreq1hpvalid2 = <0x40>;
+ stericsson,reguhwhpreq1valid1 = <0x00>;
+ stericsson,reguhwhpreq1valid2 = <0x00>;
+ stericsson,reguhwhpreq2valid1 = <0x00>;
+ stericsson,reguhwhpreq2valid2 = <0x04>;
+ stericsson,reguswhpreqvalid1 = <0x00>;
+ stericsson,reguswhpreqvalid2 = <0x00>;
+ stericsson,regusysclkreqvalid1 = <0x2a>;
+ stericsson,regusysclkreqvalid2 = <0x20>;
+ stericsson,regumisc1 = <0x10>;
+ stericsson,vaudiosupply = <0x00>;
+ stericsson,reguctrl1vamic = <0x00>;
+ stericsson,vpllvanaregu = <0x02>;
+ stericsson,vrefddr = <0x00>;
+ stericsson,extsupplyregu = <0x2a>;
+ stericsson,vaux12regu = <0x01>;
+ stericsson,vrf1vaux3regu = <0x00>;
+ stericsson,vsmps1sel1 = <0x24>;
+ stericsson,vaux1sel = <0x08>;
+ stericsson,vaux2sel = <0x0d>;
+ stericsson,vrf1vaux3sel = <0x07>;
+ stericsson,reguctrl2spare = <0x00>;
+ stericsson,reguctrldisch = <0x00>;
+ stericsson,reguctrldisch2 = <0x00>;
+
+ /* It's imperative that these remain in order. */
+
+ // supplies to the display/camera
+ ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
+ regulator-name = "V-DISPLAY";
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <2900000>;
+ regulator-boot-on;
+ /* BUG: If turned off MMC will be affected. */
+ regulator-always-on;
+ };
+
+ // supplies to the on-board eMMC
+ ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
+ regulator-name = "V-eMMC1";
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ // supply for VAUX3; SDcard slots
+ ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
+ regulator-name = "V-MMC-SD";
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ // supply for v-intcore12; VINTCORE12 LDO
+ ab8500_ldo_initcore_reg: ab8500_ldo_initcore {
+ regulator-name = "V-INTCORE";
+ };
+
+ // supply for tvout; gpadc; TVOUT LDO
+ ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
+ regulator-name = "V-TVOUT";
+ };
+
+ // supply for ab8500-usb; USB LDO
+ ab8500_ldo_usb_reg: ab8500_ldo_usb {
+ regulator-name = "dummy";
+ };
+
+ // supply for ab8500-vaudio; VAUDIO LDO
+ ab8500_ldo_audio_reg: ab8500_ldo_audio {
+ regulator-name = "V-AUD";
+ };
+
+ // supply for v-anamic1 VAMic1-LDO
+ ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
+ regulator-name = "V-AMIC1";
+ };
+
+ // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
+ ab8500_ldo_amamic2_reg: ab8500_ldo_amamic2 {
+ regulator-name = "V-AMIC2";
+ };
+
+ // supply for v-dmic; VDMIC LDO
+ ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
+ regulator-name = "V-DMIC";
+ };
+
+ // supply for U8500 CSI/DSI; VANA LDO
+ ab8500_ldo_ana_reg: ab8500_ldo_ana {
+ regulator-name = "V-CSI/DSI";
+ };
+ };
};
};
@@ -94,6 +94,7 @@
arm,primecell-periphid = <0x10480180>;
max-frequency = <50000000>;
bus-width = <8>;
+ vmmc-supply = <&ab8500_ldo_aux3_reg>;
mmc-cap-mmc-highspeed;
cd-gpios = <&gpio6 26 0x4>; // 218
@@ -107,6 +108,7 @@
arm,primecell-periphid = <0x10480180>;
max-frequency = <50000000>;
bus-width = <8>;
+ vmmc-supply = <&ab8500_ldo_aux2_reg>;
mmc-cap-mmc-highspeed;
status = "okay";
Here we supply the information required to setup regulators successfully on Snowball and other db8500 variants which use the ab8500 regulators. This information includes values used for regulator related register initialisation and platform specific regulator setup information. Signed-off-by: Lee Jones <lee.jones@linaro.org> --- arch/arm/boot/dts/db8500.dtsi | 98 ++++++++++++++++++++++++++++++++++++++++ arch/arm/boot/dts/snowball.dts | 2 + 2 files changed, 100 insertions(+)