~ubuntu-branches/ubuntu/precise/linux-lowlatency/precise

« back to all changes in this revision

Viewing changes to arch/arm/mach-omap2/twl-common.h

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-tz023xykf0i6eosh
Tags: upstream-3.2.0
ImportĀ upstreamĀ versionĀ 3.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef __OMAP_PMIC_COMMON__
 
2
#define __OMAP_PMIC_COMMON__
 
3
 
 
4
#include <plat/irqs.h>
 
5
 
 
6
#define TWL_COMMON_PDATA_USB            (1 << 0)
 
7
#define TWL_COMMON_PDATA_BCI            (1 << 1)
 
8
#define TWL_COMMON_PDATA_MADC           (1 << 2)
 
9
#define TWL_COMMON_PDATA_AUDIO          (1 << 3)
 
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)
 
25
 
 
26
/* TWL4030 LDO regulators */
 
27
#define TWL_COMMON_REGULATOR_VPLL1      (1 << 4)
 
28
#define TWL_COMMON_REGULATOR_VPLL2      (1 << 5)
 
29
 
 
30
 
 
31
struct twl4030_platform_data;
 
32
 
 
33
void omap_pmic_init(int bus, u32 clkrate, const char *pmic_type, int pmic_irq,
 
34
                    struct twl4030_platform_data *pmic_data);
 
35
void omap_pmic_late_init(void);
 
36
 
 
37
static inline void omap2_pmic_init(const char *pmic_type,
 
38
                                   struct twl4030_platform_data *pmic_data)
 
39
{
 
40
        omap_pmic_init(2, 2600, pmic_type, INT_24XX_SYS_NIRQ, pmic_data);
 
41
}
 
42
 
 
43
static inline void omap3_pmic_init(const char *pmic_type,
 
44
                                   struct twl4030_platform_data *pmic_data)
 
45
{
 
46
        omap_pmic_init(1, 2600, pmic_type, INT_34XX_SYS_NIRQ, pmic_data);
 
47
}
 
48
 
 
49
static inline void omap4_pmic_init(const char *pmic_type,
 
50
                                   struct twl4030_platform_data *pmic_data)
 
51
{
 
52
        /* Phoenix Audio IC needs I2C1 to start with 400 KHz or less */
 
53
        omap_pmic_init(1, 400, pmic_type, OMAP44XX_IRQ_SYS_1N, pmic_data);
 
54
}
 
55
 
 
56
void omap3_pmic_get_config(struct twl4030_platform_data *pmic_data,
 
57
                           u32 pdata_flags, u32 regulators_flags);
 
58
 
 
59
void omap4_pmic_get_config(struct twl4030_platform_data *pmic_data,
 
60
                           u32 pdata_flags, u32 regulators_flags);
 
61
 
 
62
#endif /* __OMAP_PMIC_COMMON__ */