1 /*
2  * Interface of Maxim max8649
3  *
4  * Copyright (C) 2009-2010 Marvell International Ltd.
5  *      Haojian Zhuang <haojian.zhuang@marvell.com>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  */
11 
12 #ifndef __LINUX_REGULATOR_MAX8649_H
13 #define	__LINUX_REGULATOR_MAX8649_H
14 
15 #include <linux/regulator/machine.h>
16 
17 enum {
18 	MAX8649_EXTCLK_26MHZ = 0,
19 	MAX8649_EXTCLK_13MHZ,
20 	MAX8649_EXTCLK_19MHZ,	/* 19.2MHz */
21 };
22 
23 enum {
24 	MAX8649_RAMP_32MV = 0,
25 	MAX8649_RAMP_16MV,
26 	MAX8649_RAMP_8MV,
27 	MAX8649_RAMP_4MV,
28 	MAX8649_RAMP_2MV,
29 	MAX8649_RAMP_1MV,
30 	MAX8649_RAMP_0_5MV,
31 	MAX8649_RAMP_0_25MV,
32 };
33 
34 struct max8649_platform_data {
35 	struct regulator_init_data *regulator;
36 
37 	unsigned	mode:2;		/* bit[1:0] = VID1,VID0 */
38 	unsigned	extclk_freq:2;
39 	unsigned	extclk:1;
40 	unsigned	ramp_timing:3;
41 	unsigned	ramp_down:1;
42 };
43 
44 #endif	/* __LINUX_REGULATOR_MAX8649_H */
45