^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) * AB8500 Multi-Functional Device (MFD)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Required parent device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) - compatible : contains "stericsson,ab8500" or "stericsson,ab8505";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) - interrupts : contains the IRQ line for the AB8500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) - interrupt-controller : describes the AB8500 as an Interrupt Controller (has its own domain)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) - #interrupt-cells : should be 2, for 2-cell format
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) - The first cell is the AB8500 local IRQ number
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) - The second cell is used to specify optional parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - bits[3:0] trigger type and level flags:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 1 = low-to-high edge triggered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 2 = high-to-low edge triggered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 4 = active high level-sensitive
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 8 = active low level-sensitive
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) The AB8500 consists of a large and varied group of sub-devices:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) Device IRQ Names Supply Names Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) ------ --------- ------------ -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) ab8500-bm : : : Battery Manager
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) ab8500-btemp : : : Battery Temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) ab8500-charger : : : Battery Charger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) ab8500-codec : : : Audio Codec
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) ab8500-fg : : vddadc : Fuel Gauge
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) : NCONV_ACCU : : Accumulate N Sample Conversion
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) : BATT_OVV : : Battery Over Voltage
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) : LOW_BAT_F : : LOW threshold battery voltage
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) : CC_INT_CALIB : : Coulomb Counter Internal Calibration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) : CCEOC : : Coulomb Counter End of Conversion
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) ab8500-btemp : : vtvout : Battery Temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) : BAT_CTRL_INDB : : Battery Removal Indicator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) : BTEMP_LOW : : Btemp < BtempLow, if battery temperature is lower than -10°C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) : BTEMP_LOW_MEDIUM : : BtempLow < Btemp < BtempMedium,if battery temperature is between -10 and 0°C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) : BTEMP_MEDIUM_HIGH : : BtempMedium < Btemp < BtempHigh,if battery temperature is between 0°C and MaxTemp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) : BTEMP_HIGH : : Btemp > BtempHigh, if battery temperature is higher than MaxTemp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) ab8500-charger : : vddadc : Charger interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) : MAIN_CH_UNPLUG_DET : : main charger unplug detection management (not in 8505)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) : MAIN_CHARGE_PLUG_DET : : main charger plug detection management (not in 8505)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) : MAIN_EXT_CH_NOT_OK : : main charger not OK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) : MAIN_CH_TH_PROT_R : : Die temp is above main charger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) : MAIN_CH_TH_PROT_F : : Die temp is below main charger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) : VBUS_DET_F : : VBUS falling detected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) : VBUS_DET_R : : VBUS rising detected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) : USB_LINK_STATUS : : USB link status has changed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) : USB_CH_TH_PROT_R : : Die temp is above usb charger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) : USB_CH_TH_PROT_F : : Die temp is below usb charger
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) : USB_CHARGER_NOT_OKR : : allowed USB charger not ok detection
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) : VBUS_OVV : : Overvoltage on Vbus ball detected (USB charge is stopped)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) : CH_WD_EXP : : Charger watchdog detected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) SW_CONV_END : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) ab8500-gpio : : : GPIO Controller (AB8500)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) ab8505-gpio : : : GPIO Controller (AB8505)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) ab8500-ponkey : ONKEY_DBF : : Power-on Key
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) ONKEY_DBR : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) ab8500-pwm : : : Pulse Width Modulator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) ab8500-regulator : : : Regulators (AB8500)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) ab8505-regulator : : : Regulators (AB8505)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) ab8500-rtc : 60S : : Real Time Clock
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) : ALARM : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) ab8500-sysctrl : : : System Control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) ab8500-usb : ID_WAKEUP_R : vddulpivio18 : Universal Serial Bus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) : ID_WAKEUP_F : v-ape :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) : VBUS_DET_F : musb_1v8 :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) : VBUS_DET_R : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) : USB_LINK_STATUS : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) : USB_ADP_PROBE_PLUG : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) : USB_ADP_PROBE_UNPLUG : :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) Required child device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) - compatible : "stericsson,ab8500-[bm|btemp|charger|fg|gpadc|gpio|ponkey|
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) pwm|regulator|rtc|sysctrl|usb]";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) A few child devices require ADC channels from the GPADC node. Those follow the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) standard bindings from iio/iio-bindings.txt and iio/adc/adc.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) abx500-temp : io-channels "aux1" and "aux2" for measuring external
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) temperatures.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) ab8500-fg : io-channel "main_bat_v" for measuring main battery voltage,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) ab8500-btemp : io-channels "btemp_ball" and "bat_ctrl" for measuring the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) battery voltage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) ab8500-charger : io-channels "main_charger_v", "main_charger_c", "vbus_v",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) "usb_charger_c" for measuring voltage and current of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) different charging supplies.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) Optional child device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) - interrupts : contains the device IRQ(s) using the 2-cell format (see above)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) - interrupt-names : contains names of IRQ resource in the order in which they were
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) supplied in the interrupts property
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) - <supply_name>-supply : contains a phandle to the regulator supply node in Device Tree
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) Non-standard child device properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) - Audio CODEC:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) - stericsson,amic[1|2]-type-single-ended : Single-ended Analoge Mic (default: differential)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) - stericsson,amic1a-bias-vamic2 : Analoge Mic wishes to use a non-standard Vamic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) - stericsson,amic1b-bias-vamic2 : Analoge Mic wishes to use a non-standard Vamic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) - stericsson,amic2-bias-vamic1 : Analoge Mic wishes to use a non-standard Vamic
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) - stericsson,earpeice-cmv : Earpeice voltage (only: 950 | 1100 | 1270 | 1580)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) ab8500 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) compatible = "stericsson,ab8500";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) interrupts = <0 40 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) interrupt-controller;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) #interrupt-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) ab8500-rtc {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) compatible = "stericsson,ab8500-rtc";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) interrupts = <17 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 18 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) interrupt-names = "60S", "ALARM";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) ab8500-gpadc {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) compatible = "stericsson,ab8500-gpadc";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) interrupts = <32 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 39 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) interrupt-names = "HW_CONV_END", "SW_CONV_END";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) vddadc-supply = <&ab8500_ldo_tvout_reg>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) #address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) #size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) #io-channel-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) /* GPADC channels */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) bat_ctrl: channel@1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) reg = <0x01>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) btemp_ball: channel@2 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) reg = <0x02>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) main_charger_v: channel@3 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) reg = <0x03>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) acc_detect1: channel@4 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) reg = <0x04>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) acc_detect2: channel@5 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) reg = <0x05>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) adc_aux1: channel@6 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) reg = <0x06>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) adc_aux2: channel@7 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) reg = <0x07>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) main_batt_v: channel@8 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) reg = <0x08>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) vbus_v: channel@9 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) reg = <0x09>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) main_charger_c: channel@a {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) reg = <0x0a>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) usb_charger_c: channel@b {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) reg = <0x0b>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) bk_bat_v: channel@c {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) reg = <0x0c>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) die_temp: channel@d {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) reg = <0x0d>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) usb_id: channel@e {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) reg = <0x0e>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) xtal_temp: channel@12 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) reg = <0x12>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) vbat_true_meas: channel@13 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) reg = <0x13>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) bat_ctrl_and_ibat: channel@1c {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) reg = <0x1c>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) vbat_meas_and_ibat: channel@1d {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) reg = <0x1d>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) vbat_true_meas_and_ibat: channel@1e {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) reg = <0x1e>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) bat_temp_and_ibat: channel@1f {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) reg = <0x1f>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) ab8500_temp {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) compatible = "stericsson,abx500-temp";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) io-channels = <&gpadc 0x06>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) <&gpadc 0x07>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) io-channel-name = "aux1", "aux2";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) ab8500_battery: ab8500_battery {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) stericsson,battery-type = "LIPO";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) thermistor-on-batctrl;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) ab8500_fg {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) compatible = "stericsson,ab8500-fg";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) battery = <&ab8500_battery>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) io-channels = <&gpadc 0x08>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) io-channel-name = "main_bat_v";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) ab8500_btemp {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) compatible = "stericsson,ab8500-btemp";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) battery = <&ab8500_battery>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) io-channels = <&gpadc 0x02>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) <&gpadc 0x01>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) io-channel-name = "btemp_ball",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) "bat_ctrl";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) ab8500_charger {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) compatible = "stericsson,ab8500-charger";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) battery = <&ab8500_battery>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) vddadc-supply = <&ab8500_ldo_tvout_reg>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) io-channels = <&gpadc 0x03>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) <&gpadc 0x0a>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) <&gpadc 0x09>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) <&gpadc 0x0b>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) io-channel-name = "main_charger_v",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) "main_charger_c",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) "vbus_v",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) "usb_charger_c";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) ab8500-usb {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) compatible = "stericsson,ab8500-usb";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) interrupts = < 90 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 96 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 14 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 15 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 79 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 74 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 75 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) interrupt-names = "ID_WAKEUP_R",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) "ID_WAKEUP_F",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) "VBUS_DET_F",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) "VBUS_DET_R",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) "USB_LINK_STATUS",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) "USB_ADP_PROBE_PLUG",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) "USB_ADP_PROBE_UNPLUG";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) vddulpivio18-supply = <&ab8500_ldo_intcore_reg>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) v-ape-supply = <&db8500_vape_reg>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) musb_1v8-supply = <&db8500_vsmps2_reg>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) ab8500-ponkey {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) compatible = "stericsson,ab8500-ponkey";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) interrupts = <6 0x4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 7 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) interrupt-names = "ONKEY_DBF", "ONKEY_DBR";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) ab8500-sysctrl {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) compatible = "stericsson,ab8500-sysctrl";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) ab8500-pwm {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) compatible = "stericsson,ab8500-pwm";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) codec: ab8500-codec {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) compatible = "stericsson,ab8500-codec";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) stericsson,earpeice-cmv = <950>; /* Units in mV. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) ab8500-regulators {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) compatible = "stericsson,ab8500-regulator";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) * See: Documentation/devicetree/bindings/regulator/regulator.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) * for more information on regulators
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) };