diff options
Diffstat (limited to 'arch/arm/mach-omap2/cm.h')
-rw-r--r-- | arch/arm/mach-omap2/cm.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/cm.h b/arch/arm/mach-omap2/cm.h index b3cee913dd67..93473f9a551c 100644 --- a/arch/arm/mach-omap2/cm.h +++ b/arch/arm/mach-omap2/cm.h | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * OMAP2+ Clock Management prototypes | 2 | * OMAP2+ Clock Management prototypes |
3 | * | 3 | * |
4 | * Copyright (C) 2007-2009 Texas Instruments, Inc. | 4 | * Copyright (C) 2007-2009, 2012 Texas Instruments, Inc. |
5 | * Copyright (C) 2007-2009 Nokia Corporation | 5 | * Copyright (C) 2007-2009 Nokia Corporation |
6 | * | 6 | * |
7 | * Written by Paul Walmsley | 7 | * Written by Paul Walmsley |
@@ -22,6 +22,12 @@ | |||
22 | */ | 22 | */ |
23 | #define MAX_MODULE_READY_TIME 2000 | 23 | #define MAX_MODULE_READY_TIME 2000 |
24 | 24 | ||
25 | # ifndef __ASSEMBLER__ | ||
26 | extern void __iomem *cm_base; | ||
27 | extern void __iomem *cm2_base; | ||
28 | extern void omap2_set_globals_cm(void __iomem *cm, void __iomem *cm2); | ||
29 | # endif | ||
30 | |||
25 | /* | 31 | /* |
26 | * MAX_MODULE_DISABLE_TIME: max duration in microseconds to wait for | 32 | * MAX_MODULE_DISABLE_TIME: max duration in microseconds to wait for |
27 | * the PRCM to request that a module enter the inactive state in the | 33 | * the PRCM to request that a module enter the inactive state in the |
@@ -37,8 +43,18 @@ | |||
37 | 43 | ||
38 | /** | 44 | /** |
39 | * struct cm_ll_data - fn ptrs to per-SoC CM function implementations | 45 | * struct cm_ll_data - fn ptrs to per-SoC CM function implementations |
46 | * @split_idlest_reg: ptr to the SoC CM-specific split_idlest_reg impl | ||
47 | * @wait_module_ready: ptr to the SoC CM-specific wait_module_ready impl | ||
40 | */ | 48 | */ |
41 | struct cm_ll_data {}; | 49 | struct cm_ll_data { |
50 | int (*split_idlest_reg)(void __iomem *idlest_reg, s16 *prcm_inst, | ||
51 | u8 *idlest_reg_id); | ||
52 | int (*wait_module_ready)(s16 prcm_mod, u8 idlest_id, u8 idlest_shift); | ||
53 | }; | ||
54 | |||
55 | extern int cm_split_idlest_reg(void __iomem *idlest_reg, s16 *prcm_inst, | ||
56 | u8 *idlest_reg_id); | ||
57 | extern int cm_wait_module_ready(s16 prcm_mod, u8 idlest_id, u8 idlest_shift); | ||
42 | 58 | ||
43 | extern int cm_register(struct cm_ll_data *cld); | 59 | extern int cm_register(struct cm_ll_data *cld); |
44 | extern int cm_unregister(struct cm_ll_data *cld); | 60 | extern int cm_unregister(struct cm_ll_data *cld); |