| Supported chips: | |
| * Dialog Semiconductors DA9052-BC and DA9053-AA/Bx PMICs | |
| Prefix: 'da9052' | |
| Datasheet: Datasheet is not publicly available. | |
| Authors: David Dajun Chen <dchen@diasemi.com> | |
| Description | |
| ----------- | |
| The DA9052/53 provides an Analogue to Digital Converter (ADC) with 10 bits | |
| resolution and track and hold circuitry combined with an analogue input | |
| multiplexer. The analogue input multiplexer will allow conversion of up to 10 | |
| different inputs. The track and hold circuit ensures stable input voltages at | |
| the input of the ADC during the conversion. | |
| The ADC is used to measure the following inputs: | |
| Channel 0: VDDOUT - measurement of the system voltage | |
| Channel 1: ICH - internal battery charger current measurement | |
| Channel 2: TBAT - output from the battery NTC | |
| Channel 3: VBAT - measurement of the battery voltage | |
| Channel 4: ADC_IN4 - high impedance input (0 - 2.5V) | |
| Channel 5: ADC_IN5 - high impedance input (0 - 2.5V) | |
| Channel 6: ADC_IN6 - high impedance input (0 - 2.5V) | |
| Channel 7: XY - TSI interface to measure the X and Y voltage of the touch | |
| screen resistive potentiometers | |
| Channel 8: Internal Tjunc. - sense (internal temp. sensor) | |
| Channel 9: VBBAT - measurement of the backup battery voltage | |
| By using sysfs attributes we can measure the system voltage VDDOUT, the battery | |
| charging current ICH, battery temperature TBAT, battery junction temperature | |
| TJUNC, battery voltage VBAT and the back up battery voltage VBBAT. | |
| Voltage Monitoring | |
| ------------------ | |
| Voltages are sampled by a 10 bit ADC. | |
| The battery voltage is calculated as: | |
| Milli volt = ((ADC value * 1000) / 512) + 2500 | |
| The backup battery voltage is calculated as: | |
| Milli volt = (ADC value * 2500) / 512; | |
| The voltages on ADC channels 4, 5 and 6 are calculated as: | |
| Milli volt = (ADC value * 2500) / 1023 | |
| Temperature Monitoring | |
| ---------------------- | |
| Temperatures are sampled by a 10 bit ADC. Junction and battery temperatures | |
| are monitored by the ADC channels. | |
| The junction temperature is calculated: | |
| Degrees celsius = 1.708 * (TJUNC_RES - T_OFFSET) - 108.8 | |
| The junction temperature attribute is supported by the driver. | |
| The battery temperature is calculated: | |
| Degree Celsius = 1 / (t1 + 1/298)- 273 | |
| where t1 = (1/B)* ln(( ADCval * 2.5)/(R25*ITBAT*255)) | |
| Default values of R25, B, ITBAT are 10e3, 3380 and 50e-6 respectively. |