1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright 2012 Linaro Ltd 4 */ 5 6#include <dt-bindings/clock/ste-ab8500.h> 7 8/ { 9 soc { 10 prcmu@80157000 { 11 ab8500 { 12 compatible = "stericsson,ab8500"; 13 interrupt-parent = <&intc>; 14 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 15 interrupt-controller; 16 #interrupt-cells = <2>; 17 18 ab8500_clock: clock-controller { 19 compatible = "stericsson,ab8500-clk"; 20 #clock-cells = <1>; 21 }; 22 23 ab8500_gpio: ab8500-gpio { 24 compatible = "stericsson,ab8500-gpio"; 25 gpio-controller; 26 #gpio-cells = <2>; 27 }; 28 29 ab8500-rtc { 30 compatible = "stericsson,ab8500-rtc"; 31 interrupts = <17 IRQ_TYPE_LEVEL_HIGH 32 18 IRQ_TYPE_LEVEL_HIGH>; 33 interrupt-names = "60S", "ALARM"; 34 }; 35 36 ab8500-gpadc { 37 compatible = "stericsson,ab8500-gpadc"; 38 interrupts = <32 IRQ_TYPE_LEVEL_HIGH 39 39 IRQ_TYPE_LEVEL_HIGH>; 40 interrupt-names = "HW_CONV_END", "SW_CONV_END"; 41 vddadc-supply = <&ab8500_ldo_tvout_reg>; 42 }; 43 44 ab8500_battery: ab8500_battery { 45 stericsson,battery-type = "LIPO"; 46 thermistor-on-batctrl; 47 }; 48 49 ab8500_fg { 50 compatible = "stericsson,ab8500-fg"; 51 battery = <&ab8500_battery>; 52 }; 53 54 ab8500_btemp { 55 compatible = "stericsson,ab8500-btemp"; 56 battery = <&ab8500_battery>; 57 }; 58 59 ab8500_charger { 60 compatible = "stericsson,ab8500-charger"; 61 battery = <&ab8500_battery>; 62 vddadc-supply = <&ab8500_ldo_tvout_reg>; 63 }; 64 65 ab8500_chargalg { 66 compatible = "stericsson,ab8500-chargalg"; 67 battery = <&ab8500_battery>; 68 }; 69 70 ab8500_usb { 71 compatible = "stericsson,ab8500-usb"; 72 interrupts = < 90 IRQ_TYPE_LEVEL_HIGH 73 96 IRQ_TYPE_LEVEL_HIGH 74 14 IRQ_TYPE_LEVEL_HIGH 75 15 IRQ_TYPE_LEVEL_HIGH 76 79 IRQ_TYPE_LEVEL_HIGH 77 74 IRQ_TYPE_LEVEL_HIGH 78 75 IRQ_TYPE_LEVEL_HIGH>; 79 interrupt-names = "ID_WAKEUP_R", 80 "ID_WAKEUP_F", 81 "VBUS_DET_F", 82 "VBUS_DET_R", 83 "USB_LINK_STATUS", 84 "USB_ADP_PROBE_PLUG", 85 "USB_ADP_PROBE_UNPLUG"; 86 vddulpivio18-supply = <&ab8500_ldo_intcore_reg>; 87 v-ape-supply = <&db8500_vape_reg>; 88 musb_1v8-supply = <&db8500_vsmps2_reg>; 89 clocks = <&prcmu_clk PRCMU_SYSCLK>; 90 clock-names = "sysclk"; 91 }; 92 93 ab8500-ponkey { 94 compatible = "stericsson,ab8500-poweron-key"; 95 interrupts = <6 IRQ_TYPE_LEVEL_HIGH 96 7 IRQ_TYPE_LEVEL_HIGH>; 97 interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; 98 }; 99 100 ab8500-sysctrl { 101 compatible = "stericsson,ab8500-sysctrl"; 102 }; 103 104 ab8500-pwm { 105 compatible = "stericsson,ab8500-pwm"; 106 clocks = <&ab8500_clock AB8500_SYSCLK_INT>; 107 clock-names = "intclk"; 108 }; 109 110 ab8500-debugfs { 111 compatible = "stericsson,ab8500-debug"; 112 }; 113 114 codec: ab8500-codec { 115 compatible = "stericsson,ab8500-codec"; 116 117 V-AUD-supply = <&ab8500_ldo_audio_reg>; 118 V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>; 119 V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>; 120 V-DMIC-supply = <&ab8500_ldo_dmic_reg>; 121 122 clocks = <&ab8500_clock AB8500_SYSCLK_AUDIO>; 123 clock-names = "audioclk"; 124 125 stericsson,earpeice-cmv = <950>; /* Units in mV. */ 126 }; 127 128 ext_regulators: ab8500-ext-regulators { 129 compatible = "stericsson,ab8500-ext-regulator"; 130 131 ab8500_ext1_reg: ab8500_ext1 { 132 regulator-min-microvolt = <1800000>; 133 regulator-max-microvolt = <1800000>; 134 regulator-boot-on; 135 regulator-always-on; 136 }; 137 138 ab8500_ext2_reg: ab8500_ext2 { 139 regulator-min-microvolt = <1360000>; 140 regulator-max-microvolt = <1360000>; 141 regulator-boot-on; 142 regulator-always-on; 143 }; 144 145 ab8500_ext3_reg: ab8500_ext3 { 146 regulator-min-microvolt = <3400000>; 147 regulator-max-microvolt = <3400000>; 148 regulator-boot-on; 149 }; 150 }; 151 152 ab8500-regulators { 153 compatible = "stericsson,ab8500-regulator"; 154 vin-supply = <&ab8500_ext3_reg>; 155 156 // supplies to the display/camera 157 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { 158 regulator-min-microvolt = <2500000>; 159 regulator-max-microvolt = <2900000>; 160 regulator-boot-on; 161 /* BUG: If turned off MMC will be affected. */ 162 regulator-always-on; 163 }; 164 165 // supplies to the on-board eMMC 166 ab8500_ldo_aux2_reg: ab8500_ldo_aux2 { 167 regulator-min-microvolt = <1100000>; 168 regulator-max-microvolt = <3300000>; 169 }; 170 171 // supply for VAUX3; SDcard slots 172 ab8500_ldo_aux3_reg: ab8500_ldo_aux3 { 173 regulator-min-microvolt = <1100000>; 174 regulator-max-microvolt = <3300000>; 175 }; 176 177 // supply for v-intcore12; VINTCORE12 LDO 178 ab8500_ldo_intcore_reg: ab8500_ldo_intcore { 179 }; 180 181 // supply for tvout; gpadc; TVOUT LDO 182 ab8500_ldo_tvout_reg: ab8500_ldo_tvout { 183 }; 184 185 // supply for ab8500-vaudio; VAUDIO LDO 186 ab8500_ldo_audio_reg: ab8500_ldo_audio { 187 }; 188 189 // supply for v-anamic1 VAMIC1 LDO 190 ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 { 191 }; 192 193 // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1 194 ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 { 195 }; 196 197 // supply for v-dmic; VDMIC LDO 198 ab8500_ldo_dmic_reg: ab8500_ldo_dmic { 199 }; 200 201 // supply for U8500 CSI/DSI; VANA LDO 202 ab8500_ldo_ana_reg: ab8500_ldo_ana { 203 }; 204 }; 205 }; 206 }; 207 208 sound { 209 stericsson,audio-codec = <&codec>; 210 clocks = <&prcmu_clk PRCMU_SYSCLK>, <&ab8500_clock AB8500_SYSCLK_ULP>, <&ab8500_clock AB8500_SYSCLK_INT>; 211 clock-names = "sysclk", "ulpclk", "intclk"; 212 }; 213 214 mcde@a0350000 { 215 vana-supply = <&ab8500_ldo_ana_reg>; 216 217 dsi@a0351000 { 218 vana-supply = <&ab8500_ldo_ana_reg>; 219 }; 220 dsi@a0352000 { 221 vana-supply = <&ab8500_ldo_ana_reg>; 222 }; 223 dsi@a0353000 { 224 vana-supply = <&ab8500_ldo_ana_reg>; 225 }; 226 }; 227 }; 228}; 229