|  | /* | 
|  | * Copyright 2009 Pengutronix, Sascha Hauer <s.hauer@pengutronix.de> | 
|  | * | 
|  | * Initial development of this code was funded by | 
|  | * Phytec Messtechnik GmbH, http://www.phytec.de | 
|  | * | 
|  | * This program is free software; you can redistribute it and/or modify | 
|  | * it under the terms of the GNU General Public License as published by | 
|  | * the Free Software Foundation; either version 2 of the License, or | 
|  | * (at your option) any later version. | 
|  | * | 
|  | * This program is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|  | * GNU General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU General Public License | 
|  | * along with this program; if not, write to the Free Software | 
|  | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 
|  | */ | 
|  |  | 
|  | #ifndef __INCLUDE_LINUX_MFD_MC13783_H | 
|  | #define __INCLUDE_LINUX_MFD_MC13783_H | 
|  |  | 
|  | struct mc13783; | 
|  | struct regulator_init_data; | 
|  |  | 
|  | struct mc13783_regulator_init_data { | 
|  | int id; | 
|  | struct regulator_init_data *init_data; | 
|  | }; | 
|  |  | 
|  | struct mc13783_platform_data { | 
|  | struct mc13783_regulator_init_data *regulators; | 
|  | int num_regulators; | 
|  | unsigned int flags; | 
|  | }; | 
|  |  | 
|  | /* mc13783_platform_data flags */ | 
|  | #define MC13783_USE_TOUCHSCREEN (1 << 0) | 
|  | #define MC13783_USE_CODEC	(1 << 1) | 
|  | #define MC13783_USE_ADC		(1 << 2) | 
|  | #define MC13783_USE_RTC		(1 << 3) | 
|  | #define MC13783_USE_REGULATOR	(1 << 4) | 
|  |  | 
|  | int mc13783_adc_do_conversion(struct mc13783 *mc13783, unsigned int mode, | 
|  | unsigned int channel, unsigned int *sample); | 
|  |  | 
|  | void mc13783_adc_set_ts_status(struct mc13783 *mc13783, unsigned int status); | 
|  |  | 
|  | #define	MC13783_SW_SW1A		0 | 
|  | #define	MC13783_SW_SW1B		1 | 
|  | #define	MC13783_SW_SW2A		2 | 
|  | #define	MC13783_SW_SW2B		3 | 
|  | #define	MC13783_SW_SW3		4 | 
|  | #define	MC13783_SW_PLL		5 | 
|  | #define	MC13783_REGU_VAUDIO	6 | 
|  | #define	MC13783_REGU_VIOHI	7 | 
|  | #define	MC13783_REGU_VIOLO	8 | 
|  | #define	MC13783_REGU_VDIG	9 | 
|  | #define	MC13783_REGU_VGEN	10 | 
|  | #define	MC13783_REGU_VRFDIG	11 | 
|  | #define	MC13783_REGU_VRFREF	12 | 
|  | #define	MC13783_REGU_VRFCP	13 | 
|  | #define	MC13783_REGU_VSIM	14 | 
|  | #define	MC13783_REGU_VESIM	15 | 
|  | #define	MC13783_REGU_VCAM	16 | 
|  | #define	MC13783_REGU_VRFBG	17 | 
|  | #define	MC13783_REGU_VVIB	18 | 
|  | #define	MC13783_REGU_VRF1	19 | 
|  | #define	MC13783_REGU_VRF2	20 | 
|  | #define	MC13783_REGU_VMMC1	21 | 
|  | #define	MC13783_REGU_VMMC2	22 | 
|  | #define	MC13783_REGU_GPO1	23 | 
|  | #define	MC13783_REGU_GPO2	24 | 
|  | #define	MC13783_REGU_GPO3	25 | 
|  | #define	MC13783_REGU_GPO4	26 | 
|  | #define	MC13783_REGU_V1		27 | 
|  | #define	MC13783_REGU_V2		28 | 
|  | #define	MC13783_REGU_V3		29 | 
|  | #define	MC13783_REGU_V4		30 | 
|  |  | 
|  | #endif /* __INCLUDE_LINUX_MFD_MC13783_H */ | 
|  |  |