swh:1:snp:77163734605b0ec556b01d897b7bb4a7e30d46b6
Raw File
Tip revision: 2c6625cd545bdd66acff14f3394865d43920a5c7 authored by Linus Torvalds on 16 August 2015, 23:34:13 UTC
Linux 4.2-rc7
Tip revision: 2c6625c
da9055
Supported chips:
  * Dialog Semiconductors DA9055 PMIC
    Prefix: 'da9055'
    Datasheet: Datasheet is not publicly available.

Authors: David Dajun Chen <dchen@diasemi.com>

Description
-----------

The DA9055 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 5
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: ADC_IN1 - high impedance input (0 - 2.5V)
Channel 2: ADC_IN2 - high impedance input (0 - 2.5V)
Channel 3: ADC_IN3 - high impedance input (0 - 2.5V)
Channel 4: Internal Tjunc. - sense (internal temp. sensor)

By using sysfs attributes we can measure the system voltage VDDOUT,
chip junction temperature and auxiliary channels voltages.

Voltage Monitoring
------------------

Voltages are sampled in a AUTO mode it can be manually sampled too and results
are stored in a 10 bit ADC.

The system voltage is calculated as:
	Milli volt = ((ADC value * 1000) / 85) + 2500

The voltages on ADC channels 1, 2 and 3 are calculated as:
	Milli volt = (ADC value * 1000) / 102

Temperature Monitoring
----------------------

Temperatures are sampled by a 10 bit ADC.  Junction temperatures
are monitored by the ADC channels.

The junction temperature is calculated:
	Degrees celsius = -0.4084 * (ADC_RES - T_OFFSET) + 307.6332
The junction temperature attribute is supported by the driver.
back to top