diff options
author | Paul Walmsley <paul@pwsan.com> | 2012-10-29 22:57:39 -0400 |
---|---|---|
committer | Paul Walmsley <paul@pwsan.com> | 2012-11-08 17:09:26 -0500 |
commit | d9a16f9ab9332b7cf1c95086a4efb98a0d13a57a (patch) | |
tree | 3f15e84beccd384ac1c3d5f2d3260e164e422da8 /arch/arm/mach-omap2/cm_common.c | |
parent | 5b78e61b1cf28f061a7989b25180fcef26d31eb8 (diff) |
ARM: OMAP2+: PRCM: split and relocate the PRM/CM globals setup
Split omap2_set_globals_prcm() into PRM, CM, and PRCM_MPU variants, since
these are all separate IP blocks. This should make it easier to move the
PRM, CM, PRCM_MPU code into drivers/ in future patchsets.
At this point arch/arm/plat-omap/include/plat/prcm.h is empty; a
subsequent patch will remove it, and remove the #include from all the
files that #include it.
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Tested-by: Vaibhav Hiremath <hvaibhav@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/cm_common.c')
-rw-r--r-- | arch/arm/mach-omap2/cm_common.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/cm_common.c b/arch/arm/mach-omap2/cm_common.c index 561969bb511e..0bab493ec133 100644 --- a/arch/arm/mach-omap2/cm_common.c +++ b/arch/arm/mach-omap2/cm_common.c | |||
@@ -2,7 +2,7 @@ | |||
2 | * OMAP2+ common Clock Management (CM) IP block functions | 2 | * OMAP2+ common Clock Management (CM) IP block functions |
3 | * | 3 | * |
4 | * Copyright (C) 2012 Texas Instruments, Inc. | 4 | * Copyright (C) 2012 Texas Instruments, Inc. |
5 | * Paul Walmsley <paul@pwsan.com> | 5 | * Paul Walmsley |
6 | * | 6 | * |
7 | * This program is free software; you can redistribute it and/or modify | 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 | 8 | * it under the terms of the GNU General Public License version 2 as |
@@ -17,6 +17,7 @@ | |||
17 | #include "cm2xxx.h" | 17 | #include "cm2xxx.h" |
18 | #include "cm3xxx.h" | 18 | #include "cm3xxx.h" |
19 | #include "cm44xx.h" | 19 | #include "cm44xx.h" |
20 | #include "common.h" | ||
20 | 21 | ||
21 | /* | 22 | /* |
22 | * cm_ll_data: function pointers to SoC-specific implementations of | 23 | * cm_ll_data: function pointers to SoC-specific implementations of |
@@ -25,6 +26,25 @@ | |||
25 | static struct cm_ll_data null_cm_ll_data; | 26 | static struct cm_ll_data null_cm_ll_data; |
26 | static struct cm_ll_data *cm_ll_data = &null_cm_ll_data; | 27 | static struct cm_ll_data *cm_ll_data = &null_cm_ll_data; |
27 | 28 | ||
29 | /* cm_base: base virtual address of the CM IP block */ | ||
30 | void __iomem *cm_base; | ||
31 | |||
32 | /* cm2_base: base virtual address of the CM2 IP block (OMAP44xx only) */ | ||
33 | void __iomem *cm2_base; | ||
34 | |||
35 | /** | ||
36 | * omap2_set_globals_cm - set the CM/CM2 base addresses (for early use) | ||
37 | * @cm: CM base virtual address | ||
38 | * @cm2: CM2 base virtual address (if present on the booted SoC) | ||
39 | * | ||
40 | * XXX Will be replaced when the PRM/CM drivers are completed. | ||
41 | */ | ||
42 | void __init omap2_set_globals_cm(void __iomem *cm, void __iomem *cm2) | ||
43 | { | ||
44 | cm_base = cm; | ||
45 | cm2_base = cm2; | ||
46 | } | ||
47 | |||
28 | /** | 48 | /** |
29 | * cm_split_idlest_reg - split CM_IDLEST reg addr into its components | 49 | * cm_split_idlest_reg - split CM_IDLEST reg addr into its components |
30 | * @idlest_reg: CM_IDLEST* virtual address | 50 | * @idlest_reg: CM_IDLEST* virtual address |