1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright 2012 Linaro Ltd 4*724ba675SRob Herring */ 5*724ba675SRob Herring 6*724ba675SRob Herring#include <dt-bindings/clock/ste-ab8500.h> 7*724ba675SRob Herring 8*724ba675SRob Herring/ { 9*724ba675SRob Herring /* Essential housekeeping hardware monitors */ 10*724ba675SRob Herring iio-hwmon { 11*724ba675SRob Herring compatible = "iio-hwmon"; 12*724ba675SRob Herring io-channels = <&gpadc 0x02>, /* Battery temperature */ 13*724ba675SRob Herring <&gpadc 0x08>, /* Main battery voltage */ 14*724ba675SRob Herring <&gpadc 0x09>, /* VBUS */ 15*724ba675SRob Herring <&gpadc 0x0b>, /* Charger current */ 16*724ba675SRob Herring <&gpadc 0x0c>, /* Backup battery voltage */ 17*724ba675SRob Herring <&gpadc 0x0d>; /* Die temperature */ 18*724ba675SRob Herring }; 19*724ba675SRob Herring 20*724ba675SRob Herring soc { 21*724ba675SRob Herring prcmu@80157000 { 22*724ba675SRob Herring ab8505 { 23*724ba675SRob Herring compatible = "stericsson,ab8505"; 24*724ba675SRob Herring interrupt-parent = <&intc>; 25*724ba675SRob Herring interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>; 26*724ba675SRob Herring interrupt-controller; 27*724ba675SRob Herring #interrupt-cells = <2>; 28*724ba675SRob Herring #address-cells = <1>; 29*724ba675SRob Herring #size-cells = <0>; 30*724ba675SRob Herring 31*724ba675SRob Herring ab8500_clock: clock-controller { 32*724ba675SRob Herring compatible = "stericsson,ab8500-clk"; 33*724ba675SRob Herring #clock-cells = <1>; 34*724ba675SRob Herring }; 35*724ba675SRob Herring 36*724ba675SRob Herring ab8505_gpio: gpio { 37*724ba675SRob Herring compatible = "stericsson,ab8505-gpio"; 38*724ba675SRob Herring gpio-controller; 39*724ba675SRob Herring #gpio-cells = <2>; 40*724ba675SRob Herring }; 41*724ba675SRob Herring 42*724ba675SRob Herring rtc { 43*724ba675SRob Herring compatible = "stericsson,ab8500-rtc"; 44*724ba675SRob Herring interrupts = <17 IRQ_TYPE_LEVEL_HIGH>, 45*724ba675SRob Herring <18 IRQ_TYPE_LEVEL_HIGH>; 46*724ba675SRob Herring interrupt-names = "60S", "ALARM"; 47*724ba675SRob Herring }; 48*724ba675SRob Herring 49*724ba675SRob Herring gpadc: adc { 50*724ba675SRob Herring compatible = "stericsson,ab8500-gpadc"; 51*724ba675SRob Herring interrupts = <39 IRQ_TYPE_LEVEL_HIGH>; 52*724ba675SRob Herring interrupt-names = "SW_CONV_END"; 53*724ba675SRob Herring vddadc-supply = <&ab8500_ldo_adc_reg>; 54*724ba675SRob Herring #address-cells = <1>; 55*724ba675SRob Herring #size-cells = <0>; 56*724ba675SRob Herring #io-channel-cells = <1>; 57*724ba675SRob Herring 58*724ba675SRob Herring /* GPADC channels */ 59*724ba675SRob Herring bat_ctrl: channel@1 { 60*724ba675SRob Herring reg = <0x01>; 61*724ba675SRob Herring }; 62*724ba675SRob Herring btemp_ball: channel@2 { 63*724ba675SRob Herring reg = <0x02>; 64*724ba675SRob Herring }; 65*724ba675SRob Herring acc_detect1: channel@4 { 66*724ba675SRob Herring reg = <0x04>; 67*724ba675SRob Herring }; 68*724ba675SRob Herring acc_detect2: channel@5 { 69*724ba675SRob Herring reg = <0x05>; 70*724ba675SRob Herring }; 71*724ba675SRob Herring adc_aux1: channel@6 { 72*724ba675SRob Herring reg = <0x06>; 73*724ba675SRob Herring }; 74*724ba675SRob Herring adc_aux2: channel@7 { 75*724ba675SRob Herring reg = <0x07>; 76*724ba675SRob Herring }; 77*724ba675SRob Herring main_batt_v: channel@8 { 78*724ba675SRob Herring reg = <0x08>; 79*724ba675SRob Herring }; 80*724ba675SRob Herring vbus_v: channel@9 { 81*724ba675SRob Herring reg = <0x09>; 82*724ba675SRob Herring }; 83*724ba675SRob Herring charger_c: channel@b { 84*724ba675SRob Herring reg = <0x0b>; 85*724ba675SRob Herring }; 86*724ba675SRob Herring bk_bat_v: channel@c { 87*724ba675SRob Herring reg = <0x0c>; 88*724ba675SRob Herring }; 89*724ba675SRob Herring die_temp: channel@d { 90*724ba675SRob Herring reg = <0x0d>; 91*724ba675SRob Herring }; 92*724ba675SRob Herring usb_id: channel@e { 93*724ba675SRob Herring reg = <0x0e>; 94*724ba675SRob Herring }; 95*724ba675SRob Herring }; 96*724ba675SRob Herring 97*724ba675SRob Herring thermal { 98*724ba675SRob Herring compatible = "stericsson,abx500-temp"; 99*724ba675SRob Herring interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; 100*724ba675SRob Herring interrupt-names = "ABX500_TEMP_WARM"; 101*724ba675SRob Herring }; 102*724ba675SRob Herring 103*724ba675SRob Herring ab8500_fg { 104*724ba675SRob Herring compatible = "stericsson,ab8500-fg"; 105*724ba675SRob Herring interrupts = <24 IRQ_TYPE_LEVEL_HIGH>, 106*724ba675SRob Herring <8 IRQ_TYPE_LEVEL_HIGH>, 107*724ba675SRob Herring <28 IRQ_TYPE_LEVEL_HIGH>, 108*724ba675SRob Herring <27 IRQ_TYPE_LEVEL_HIGH>, 109*724ba675SRob Herring <26 IRQ_TYPE_LEVEL_HIGH>; 110*724ba675SRob Herring interrupt-names = "NCONV_ACCU", 111*724ba675SRob Herring "BATT_OVV", 112*724ba675SRob Herring "LOW_BAT_F", 113*724ba675SRob Herring "CC_INT_CALIB", 114*724ba675SRob Herring "CCEOC"; 115*724ba675SRob Herring monitored-battery = <&battery>; 116*724ba675SRob Herring io-channels = <&gpadc 0x08>; 117*724ba675SRob Herring io-channel-names = "main_bat_v"; 118*724ba675SRob Herring }; 119*724ba675SRob Herring 120*724ba675SRob Herring ab8500_btemp { 121*724ba675SRob Herring compatible = "stericsson,ab8500-btemp"; 122*724ba675SRob Herring interrupts = <20 IRQ_TYPE_LEVEL_HIGH>, 123*724ba675SRob Herring <80 IRQ_TYPE_LEVEL_HIGH>, 124*724ba675SRob Herring <83 IRQ_TYPE_LEVEL_HIGH>, 125*724ba675SRob Herring <81 IRQ_TYPE_LEVEL_HIGH>, 126*724ba675SRob Herring <82 IRQ_TYPE_LEVEL_HIGH>; 127*724ba675SRob Herring interrupt-names = "BAT_CTRL_INDB", 128*724ba675SRob Herring "BTEMP_LOW", 129*724ba675SRob Herring "BTEMP_HIGH", 130*724ba675SRob Herring "BTEMP_LOW_MEDIUM", 131*724ba675SRob Herring "BTEMP_MEDIUM_HIGH"; 132*724ba675SRob Herring monitored-battery = <&battery>; 133*724ba675SRob Herring io-channels = <&gpadc 0x02>, 134*724ba675SRob Herring <&gpadc 0x01>; 135*724ba675SRob Herring io-channel-names = "btemp_ball", 136*724ba675SRob Herring "bat_ctrl"; 137*724ba675SRob Herring }; 138*724ba675SRob Herring 139*724ba675SRob Herring ab8500_charger { 140*724ba675SRob Herring compatible = "stericsson,ab8500-charger"; 141*724ba675SRob Herring interrupts = <10 IRQ_TYPE_LEVEL_HIGH>, 142*724ba675SRob Herring <11 IRQ_TYPE_LEVEL_HIGH>, 143*724ba675SRob Herring <0 IRQ_TYPE_LEVEL_HIGH>, 144*724ba675SRob Herring <107 IRQ_TYPE_LEVEL_HIGH>, 145*724ba675SRob Herring <106 IRQ_TYPE_LEVEL_HIGH>, 146*724ba675SRob Herring <14 IRQ_TYPE_LEVEL_HIGH>, 147*724ba675SRob Herring <15 IRQ_TYPE_LEVEL_HIGH>, 148*724ba675SRob Herring <79 IRQ_TYPE_LEVEL_HIGH>, 149*724ba675SRob Herring <105 IRQ_TYPE_LEVEL_HIGH>, 150*724ba675SRob Herring <104 IRQ_TYPE_LEVEL_HIGH>, 151*724ba675SRob Herring <89 IRQ_TYPE_LEVEL_HIGH>, 152*724ba675SRob Herring <22 IRQ_TYPE_LEVEL_HIGH>, 153*724ba675SRob Herring <21 IRQ_TYPE_LEVEL_HIGH>, 154*724ba675SRob Herring <16 IRQ_TYPE_LEVEL_HIGH>; 155*724ba675SRob Herring interrupt-names = "MAIN_CH_UNPLUG_DET", 156*724ba675SRob Herring "MAIN_CHARGE_PLUG_DET", 157*724ba675SRob Herring "MAIN_EXT_CH_NOT_OK", 158*724ba675SRob Herring "MAIN_CH_TH_PROT_R", 159*724ba675SRob Herring "MAIN_CH_TH_PROT_F", 160*724ba675SRob Herring "VBUS_DET_F", 161*724ba675SRob Herring "VBUS_DET_R", 162*724ba675SRob Herring "USB_LINK_STATUS", 163*724ba675SRob Herring "USB_CH_TH_PROT_R", 164*724ba675SRob Herring "USB_CH_TH_PROT_F", 165*724ba675SRob Herring "USB_CHARGER_NOT_OKR", 166*724ba675SRob Herring "VBUS_OVV", 167*724ba675SRob Herring "CH_WD_EXP", 168*724ba675SRob Herring "VBUS_CH_DROP_END"; 169*724ba675SRob Herring monitored-battery = <&battery>; 170*724ba675SRob Herring vddadc-supply = <&ab8500_ldo_adc_reg>; 171*724ba675SRob Herring io-channels = <&gpadc 0x09>, 172*724ba675SRob Herring <&gpadc 0x0b>; 173*724ba675SRob Herring io-channel-names = "vbus_v", 174*724ba675SRob Herring "usb_charger_c"; 175*724ba675SRob Herring }; 176*724ba675SRob Herring 177*724ba675SRob Herring ab8500_chargalg { 178*724ba675SRob Herring compatible = "stericsson,ab8500-chargalg"; 179*724ba675SRob Herring monitored-battery = <&battery>; 180*724ba675SRob Herring }; 181*724ba675SRob Herring 182*724ba675SRob Herring ab8500_usb: phy { 183*724ba675SRob Herring compatible = "stericsson,ab8500-usb"; 184*724ba675SRob Herring interrupts = <90 IRQ_TYPE_LEVEL_HIGH>, 185*724ba675SRob Herring <96 IRQ_TYPE_LEVEL_HIGH>, 186*724ba675SRob Herring <14 IRQ_TYPE_LEVEL_HIGH>, 187*724ba675SRob Herring <15 IRQ_TYPE_LEVEL_HIGH>, 188*724ba675SRob Herring <79 IRQ_TYPE_LEVEL_HIGH>, 189*724ba675SRob Herring <74 IRQ_TYPE_LEVEL_HIGH>, 190*724ba675SRob Herring <75 IRQ_TYPE_LEVEL_HIGH>; 191*724ba675SRob Herring interrupt-names = "ID_WAKEUP_R", 192*724ba675SRob Herring "ID_WAKEUP_F", 193*724ba675SRob Herring "VBUS_DET_F", 194*724ba675SRob Herring "VBUS_DET_R", 195*724ba675SRob Herring "USB_LINK_STATUS", 196*724ba675SRob Herring "USB_ADP_PROBE_PLUG", 197*724ba675SRob Herring "USB_ADP_PROBE_UNPLUG"; 198*724ba675SRob Herring vddulpivio18-supply = <&ab8500_ldo_intcore_reg>; 199*724ba675SRob Herring v-ape-supply = <&db8500_vape_reg>; 200*724ba675SRob Herring musb_1v8-supply = <&db8500_vsmps2_reg>; 201*724ba675SRob Herring clocks = <&prcmu_clk PRCMU_SYSCLK>; 202*724ba675SRob Herring clock-names = "sysclk"; 203*724ba675SRob Herring #phy-cells = <0>; 204*724ba675SRob Herring }; 205*724ba675SRob Herring 206*724ba675SRob Herring key { 207*724ba675SRob Herring compatible = "stericsson,ab8500-poweron-key"; 208*724ba675SRob Herring interrupts = <6 IRQ_TYPE_LEVEL_HIGH>, 209*724ba675SRob Herring <7 IRQ_TYPE_LEVEL_HIGH>; 210*724ba675SRob Herring interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; 211*724ba675SRob Herring }; 212*724ba675SRob Herring 213*724ba675SRob Herring ab8500-sysctrl { 214*724ba675SRob Herring compatible = "stericsson,ab8500-sysctrl"; 215*724ba675SRob Herring }; 216*724ba675SRob Herring 217*724ba675SRob Herring pwm@1 { 218*724ba675SRob Herring compatible = "stericsson,ab8500-pwm"; 219*724ba675SRob Herring reg = <1>; 220*724ba675SRob Herring clocks = <&ab8500_clock AB8500_SYSCLK_INT>; 221*724ba675SRob Herring clock-names = "intclk"; 222*724ba675SRob Herring #pwm-cells = <1>; 223*724ba675SRob Herring }; 224*724ba675SRob Herring 225*724ba675SRob Herring codec: codec { 226*724ba675SRob Herring compatible = "stericsson,ab8500-codec"; 227*724ba675SRob Herring 228*724ba675SRob Herring V-AUD-supply = <&ab8500_ldo_audio_reg>; 229*724ba675SRob Herring V-AMIC1-supply = <&ab8500_ldo_anamic1_reg>; 230*724ba675SRob Herring V-AMIC2-supply = <&ab8500_ldo_anamic2_reg>; 231*724ba675SRob Herring 232*724ba675SRob Herring clocks = <&ab8500_clock AB8500_SYSCLK_AUDIO>; 233*724ba675SRob Herring clock-names = "audioclk"; 234*724ba675SRob Herring 235*724ba675SRob Herring stericsson,earpeice-cmv = <950>; /* Units in mV. */ 236*724ba675SRob Herring }; 237*724ba675SRob Herring 238*724ba675SRob Herring regulator { 239*724ba675SRob Herring compatible = "stericsson,ab8505-regulator"; 240*724ba675SRob Herring 241*724ba675SRob Herring ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { 242*724ba675SRob Herring regulator-min-microvolt = <2800000>; 243*724ba675SRob Herring regulator-max-microvolt = <3300000>; 244*724ba675SRob Herring }; 245*724ba675SRob Herring 246*724ba675SRob Herring ab8500_ldo_aux2_reg: ab8500_ldo_aux2 { 247*724ba675SRob Herring regulator-min-microvolt = <1100000>; 248*724ba675SRob Herring regulator-max-microvolt = <3300000>; 249*724ba675SRob Herring }; 250*724ba675SRob Herring 251*724ba675SRob Herring ab8500_ldo_aux3_reg: ab8500_ldo_aux3 { 252*724ba675SRob Herring regulator-min-microvolt = <1100000>; 253*724ba675SRob Herring regulator-max-microvolt = <3300000>; 254*724ba675SRob Herring }; 255*724ba675SRob Herring 256*724ba675SRob Herring ab8500_ldo_aux4_reg: ab8500_ldo_aux4 { 257*724ba675SRob Herring regulator-min-microvolt = <1100000>; 258*724ba675SRob Herring regulator-max-microvolt = <3300000>; 259*724ba675SRob Herring }; 260*724ba675SRob Herring 261*724ba675SRob Herring ab8500_ldo_aux5_reg: ab8500_ldo_aux5 { 262*724ba675SRob Herring regulator-min-microvolt = <1050000>; 263*724ba675SRob Herring regulator-max-microvolt = <2790000>; 264*724ba675SRob Herring }; 265*724ba675SRob Herring 266*724ba675SRob Herring ab8500_ldo_aux6_reg: ab8500_ldo_aux6 { 267*724ba675SRob Herring regulator-min-microvolt = <1050000>; 268*724ba675SRob Herring regulator-max-microvolt = <2790000>; 269*724ba675SRob Herring }; 270*724ba675SRob Herring 271*724ba675SRob Herring // supply for v-intcore12; VINTCORE12 LDO 272*724ba675SRob Herring ab8500_ldo_intcore_reg: ab8500_ldo_intcore { 273*724ba675SRob Herring regulator-min-microvolt = <1250000>; 274*724ba675SRob Herring regulator-max-microvolt = <1350000>; 275*724ba675SRob Herring }; 276*724ba675SRob Herring 277*724ba675SRob Herring // supply for gpadc; ADC LDO 278*724ba675SRob Herring ab8500_ldo_adc_reg: ab8500_ldo_adc { 279*724ba675SRob Herring }; 280*724ba675SRob Herring 281*724ba675SRob Herring // supply for ab8500-vaudio; VAUDIO LDO 282*724ba675SRob Herring ab8500_ldo_audio_reg: ab8500_ldo_audio { 283*724ba675SRob Herring }; 284*724ba675SRob Herring 285*724ba675SRob Herring // supply for v-anamic1 VAMIC1 LDO 286*724ba675SRob Herring ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 { 287*724ba675SRob Herring }; 288*724ba675SRob Herring 289*724ba675SRob Herring // supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1 290*724ba675SRob Herring ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 { 291*724ba675SRob Herring }; 292*724ba675SRob Herring 293*724ba675SRob Herring // supply for v-aux8; VAUX8 LDO 294*724ba675SRob Herring ab8500_ldo_aux8_reg: ab8500_ldo_aux8 { 295*724ba675SRob Herring }; 296*724ba675SRob Herring 297*724ba675SRob Herring // supply for U8500 CSI/DSI; VANA LDO 298*724ba675SRob Herring ab8500_ldo_ana_reg: ab8500_ldo_ana { 299*724ba675SRob Herring }; 300*724ba675SRob Herring }; 301*724ba675SRob Herring }; 302*724ba675SRob Herring }; 303*724ba675SRob Herring 304*724ba675SRob Herring sound { 305*724ba675SRob Herring stericsson,audio-codec = <&codec>; 306*724ba675SRob Herring clocks = <&prcmu_clk PRCMU_SYSCLK>, <&ab8500_clock AB8500_SYSCLK_ULP>, <&ab8500_clock AB8500_SYSCLK_INT>; 307*724ba675SRob Herring clock-names = "sysclk", "ulpclk", "intclk"; 308*724ba675SRob Herring }; 309*724ba675SRob Herring 310*724ba675SRob Herring mcde@a0350000 { 311*724ba675SRob Herring vana-supply = <&ab8500_ldo_ana_reg>; 312*724ba675SRob Herring 313*724ba675SRob Herring dsi@a0351000 { 314*724ba675SRob Herring vana-supply = <&ab8500_ldo_ana_reg>; 315*724ba675SRob Herring }; 316*724ba675SRob Herring dsi@a0352000 { 317*724ba675SRob Herring vana-supply = <&ab8500_ldo_ana_reg>; 318*724ba675SRob Herring }; 319*724ba675SRob Herring dsi@a0353000 { 320*724ba675SRob Herring vana-supply = <&ab8500_ldo_ana_reg>; 321*724ba675SRob Herring }; 322*724ba675SRob Herring }; 323*724ba675SRob Herring 324*724ba675SRob Herring usb_per5@a03e0000 { 325*724ba675SRob Herring phys = <&ab8500_usb>; 326*724ba675SRob Herring phy-names = "usb"; 327*724ba675SRob Herring }; 328*724ba675SRob Herring }; 329*724ba675SRob Herring}; 330