Commit | Line | Data |
---|---|---|
a53b8e3b PU |
1 | #ifndef __OMAP_PMIC_COMMON__ |
2 | #define __OMAP_PMIC_COMMON__ | |
3 | ||
7d7e1eba | 4 | #include "common.h" |
46232a36 | 5 | |
b22f954b | 6 | #define TWL_COMMON_PDATA_USB (1 << 0) |
827ed9ae PU |
7 | #define TWL_COMMON_PDATA_BCI (1 << 1) |
8 | #define TWL_COMMON_PDATA_MADC (1 << 2) | |
9 | #define TWL_COMMON_PDATA_AUDIO (1 << 3) | |
b22f954b PU |
10 | |
11 | /* Common LDO regulators for TWL4030/TWL6030 */ | |
12 | #define TWL_COMMON_REGULATOR_VDAC (1 << 0) | |
13 | #define TWL_COMMON_REGULATOR_VAUX1 (1 << 1) | |
14 | #define TWL_COMMON_REGULATOR_VAUX2 (1 << 2) | |
15 | #define TWL_COMMON_REGULATOR_VAUX3 (1 << 3) | |
16 | ||
17 | /* TWL6030 LDO regulators */ | |
18 | #define TWL_COMMON_REGULATOR_VMMC (1 << 4) | |
19 | #define TWL_COMMON_REGULATOR_VPP (1 << 5) | |
20 | #define TWL_COMMON_REGULATOR_VUSIM (1 << 6) | |
21 | #define TWL_COMMON_REGULATOR_VANA (1 << 7) | |
22 | #define TWL_COMMON_REGULATOR_VCXIO (1 << 8) | |
23 | #define TWL_COMMON_REGULATOR_VUSB (1 << 9) | |
24 | #define TWL_COMMON_REGULATOR_CLK32KG (1 << 10) | |
fde0190d PU |
25 | #define TWL_COMMON_REGULATOR_V1V8 (1 << 11) |
26 | #define TWL_COMMON_REGULATOR_V2V1 (1 << 12) | |
b22f954b | 27 | |
b252b0ef PU |
28 | /* TWL4030 LDO regulators */ |
29 | #define TWL_COMMON_REGULATOR_VPLL1 (1 << 4) | |
30 | #define TWL_COMMON_REGULATOR_VPLL2 (1 << 5) | |
31 | ||
32 | ||
a53b8e3b | 33 | struct twl4030_platform_data; |
8eaeb939 | 34 | struct twl6040_platform_data; |
40234bf7 | 35 | struct omap_tw4030_pdata; |
9495d1e2 | 36 | struct i2c_board_info; |
a53b8e3b PU |
37 | |
38 | void omap_pmic_init(int bus, u32 clkrate, const char *pmic_type, int pmic_irq, | |
39 | struct twl4030_platform_data *pmic_data); | |
46232a36 | 40 | void omap_pmic_late_init(void); |
a53b8e3b PU |
41 | |
42 | static inline void omap2_pmic_init(const char *pmic_type, | |
43 | struct twl4030_platform_data *pmic_data) | |
44 | { | |
7d7e1eba | 45 | omap_pmic_init(2, 2600, pmic_type, 7 + OMAP_INTC_START, pmic_data); |
a53b8e3b PU |
46 | } |
47 | ||
48 | static inline void omap3_pmic_init(const char *pmic_type, | |
49 | struct twl4030_platform_data *pmic_data) | |
50 | { | |
7d7e1eba | 51 | omap_pmic_init(1, 2600, pmic_type, 7 + OMAP_INTC_START, pmic_data); |
a53b8e3b PU |
52 | } |
53 | ||
8eaeb939 PU |
54 | void omap4_pmic_init(const char *pmic_type, |
55 | struct twl4030_platform_data *pmic_data, | |
9495d1e2 | 56 | struct i2c_board_info *devices, int nr_devices); |
a53b8e3b | 57 | |
827ed9ae PU |
58 | void omap3_pmic_get_config(struct twl4030_platform_data *pmic_data, |
59 | u32 pdata_flags, u32 regulators_flags); | |
60 | ||
b22f954b PU |
61 | void omap4_pmic_get_config(struct twl4030_platform_data *pmic_data, |
62 | u32 pdata_flags, u32 regulators_flags); | |
63 | ||
40234bf7 | 64 | void omap_twl4030_audio_init(char *card_name, struct omap_tw4030_pdata *pdata); |
552d9dc3 | 65 | |
a53b8e3b | 66 | #endif /* __OMAP_PMIC_COMMON__ */ |