1 /*
2  * Copyright (C) 2010 ST-Ericsson SA
3  * Licensed under GPLv2.
4  *
5  * Author: Arun R Murthy <arun.murthy@stericsson.com>
6  * Author: Daniel Willerud <daniel.willerud@stericsson.com>
7  */
8 
9 #ifndef	_AB8500_GPADC_H
10 #define _AB8500_GPADC_H
11 
12 /* GPADC source: From datasheet(ADCSwSel[4:0] in GPADCCtrl2) */
13 #define BAT_CTRL	0x01
14 #define BTEMP_BALL	0x02
15 #define MAIN_CHARGER_V	0x03
16 #define ACC_DETECT1	0x04
17 #define ACC_DETECT2	0x05
18 #define ADC_AUX1	0x06
19 #define ADC_AUX2	0x07
20 #define MAIN_BAT_V	0x08
21 #define VBUS_V		0x09
22 #define MAIN_CHARGER_C	0x0A
23 #define USB_CHARGER_C	0x0B
24 #define BK_BAT_V	0x0C
25 #define DIE_TEMP	0x0D
26 
27 struct ab8500_gpadc;
28 
29 struct ab8500_gpadc *ab8500_gpadc_get(char *name);
30 int ab8500_gpadc_convert(struct ab8500_gpadc *gpadc, u8 channel);
31 int ab8500_gpadc_read_raw(struct ab8500_gpadc *gpadc, u8 channel);
32 int ab8500_gpadc_ad_to_voltage(struct ab8500_gpadc *gpadc,
33     u8 channel, int ad_value);
34 
35 #endif /* _AB8500_GPADC_H */
36