1* AB8500 Multi-Functional Device (MFD) 2 3Required parent device properties: 4- compatible : contains "stericsson,ab8500"; 5- interrupts : contains the IRQ line for the AB8500 6- interrupt-controller : describes the AB8500 as an Interrupt Controller (has its own domain) 7- #interrupt-cells : should be 2, for 2-cell format 8 - The first cell is the AB8500 local IRQ number 9 - The second cell is used to specify optional parameters 10 - bits[3:0] trigger type and level flags: 11 1 = low-to-high edge triggered 12 2 = high-to-low edge triggered 13 4 = active high level-sensitive 14 8 = active low level-sensitive 15 16The AB8500 consists of a large and varied group of sub-devices: 17 18Device IRQ Names Supply Names Description 19------ --------- ------------ ----------- 20ab8500-bm : : : Battery Manager 21ab8500-btemp : : : Battery Temperature 22ab8500-charger : : : Battery Charger 23ab8500-codec : : : Audio Codec 24ab8500-fg : : vddadc : Fuel Gauge 25 : NCONV_ACCU : : Accumulate N Sample Conversion 26 : BATT_OVV : : Battery Over Voltage 27 : LOW_BAT_F : : LOW threshold battery voltage 28 : CC_INT_CALIB : : Coulomb Counter Internal Calibration 29 : CCEOC : : Coulomb Counter End of Conversion 30ab8500-btemp : : vtvout : Battery Temperature 31 : BAT_CTRL_INDB : : Battery Removal Indicator 32 : BTEMP_LOW : : Btemp < BtempLow, if battery temperature is lower than -10°C 33 : BTEMP_LOW_MEDIUM : : BtempLow < Btemp < BtempMedium,if battery temperature is between -10 and 0°C 34 : BTEMP_MEDIUM_HIGH : : BtempMedium < Btemp < BtempHigh,if battery temperature is between 0°C and“MaxTemp 35 : BTEMP_HIGH : : Btemp > BtempHigh, if battery temperature is higher than “MaxTemp 36ab8500-charger : : vddadc : Charger interface 37 : MAIN_CH_UNPLUG_DET : : main charger unplug detection management (not in 8505) 38 : MAIN_CHARGE_PLUG_DET : : main charger plug detection management (not in 8505) 39 : MAIN_EXT_CH_NOT_OK : : main charger not OK 40 : MAIN_CH_TH_PROT_R : : Die temp is above main charger 41 : MAIN_CH_TH_PROT_F : : Die temp is below main charger 42 : VBUS_DET_F : : VBUS falling detected 43 : VBUS_DET_R : : VBUS rising detected 44 : USB_LINK_STATUS : : USB link status has changed 45 : USB_CH_TH_PROT_R : : Die temp is above usb charger 46 : USB_CH_TH_PROT_F : : Die temp is below usb charger 47 : USB_CHARGER_NOT_OKR : : allowed USB charger not ok detection 48 : VBUS_OVV : : Overvoltage on Vbus ball detected (USB charge is stopped) 49 : CH_WD_EXP : : Charger watchdog detected 50ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter 51 SW_CONV_END : : 52ab8500-gpio : : : GPIO Controller 53ab8500-ponkey : ONKEY_DBF : : Power-on Key 54 ONKEY_DBR : : 55ab8500-pwm : : : Pulse Width Modulator 56ab8500-regulator : : : Regulators 57ab8500-rtc : 60S : : Real Time Clock 58 : ALARM : : 59ab8500-sysctrl : : : System Control 60ab8500-usb : ID_WAKEUP_R : vddulpivio18 : Universal Serial Bus 61 : ID_WAKEUP_F : v-ape : 62 : VBUS_DET_F : musb_1v8 : 63 : VBUS_DET_R : : 64 : USB_LINK_STATUS : : 65 : USB_ADP_PROBE_PLUG : : 66 : USB_ADP_PROBE_UNPLUG : : 67 68Required child device properties: 69- compatible : "stericsson,ab8500-[bm|btemp|charger|fg|gpadc|gpio|ponkey| 70 pwm|regulator|rtc|sysctrl|usb]"; 71 72Optional child device properties: 73- interrupts : contains the device IRQ(s) using the 2-cell format (see above) 74- interrupt-names : contains names of IRQ resource in the order in which they were 75 supplied in the interrupts property 76- <supply_name>-supply : contains a phandle to the regulator supply node in Device Tree 77 78Non-standard child device properties: 79 - Audio CODEC: 80 - stericsson,amic[1|2]-type-single-ended : Single-ended Analoge Mic (default: differential) 81 - stericsson,amic1a-bias-vamic2 : Analoge Mic wishes to use a non-standard Vamic 82 - stericsson,amic1b-bias-vamic2 : Analoge Mic wishes to use a non-standard Vamic 83 - stericsson,amic2-bias-vamic1 : Analoge Mic wishes to use a non-standard Vamic 84 - stericsson,earpeice-cmv : Earpeice voltage (only: 950 | 1100 | 1270 | 1580) 85 86ab8500 { 87 compatible = "stericsson,ab8500"; 88 interrupts = <0 40 0x4>; 89 interrupt-controller; 90 #interrupt-cells = <2>; 91 92 ab8500-rtc { 93 compatible = "stericsson,ab8500-rtc"; 94 interrupts = <17 0x4 95 18 0x4>; 96 interrupt-names = "60S", "ALARM"; 97 }; 98 99 ab8500-gpadc { 100 compatible = "stericsson,ab8500-gpadc"; 101 interrupts = <32 0x4 102 39 0x4>; 103 interrupt-names = "HW_CONV_END", "SW_CONV_END"; 104 vddadc-supply = <&ab8500_ldo_tvout_reg>; 105 }; 106 107 ab8500-usb { 108 compatible = "stericsson,ab8500-usb"; 109 interrupts = < 90 0x4 110 96 0x4 111 14 0x4 112 15 0x4 113 79 0x4 114 74 0x4 115 75 0x4>; 116 interrupt-names = "ID_WAKEUP_R", 117 "ID_WAKEUP_F", 118 "VBUS_DET_F", 119 "VBUS_DET_R", 120 "USB_LINK_STATUS", 121 "USB_ADP_PROBE_PLUG", 122 "USB_ADP_PROBE_UNPLUG"; 123 vddulpivio18-supply = <&ab8500_ldo_intcore_reg>; 124 v-ape-supply = <&db8500_vape_reg>; 125 musb_1v8-supply = <&db8500_vsmps2_reg>; 126 }; 127 128 ab8500-ponkey { 129 compatible = "stericsson,ab8500-ponkey"; 130 interrupts = <6 0x4 131 7 0x4>; 132 interrupt-names = "ONKEY_DBF", "ONKEY_DBR"; 133 }; 134 135 ab8500-sysctrl { 136 compatible = "stericsson,ab8500-sysctrl"; 137 }; 138 139 ab8500-pwm { 140 compatible = "stericsson,ab8500-pwm"; 141 }; 142 143 codec: ab8500-codec { 144 compatible = "stericsson,ab8500-codec"; 145 146 stericsson,earpeice-cmv = <950>; /* Units in mV. */ 147 }; 148 149 ab8500-regulators { 150 compatible = "stericsson,ab8500-regulator"; 151 152 ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { 153 /* 154 * See: Documentation/devicetree/bindings/regulator/regulator.txt 155 * for more information on regulators 156 */ 157 }; 158 }; 159}; 160