aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/cm_common.c
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2012-10-29 22:57:39 -0400
committerPaul Walmsley <paul@pwsan.com>2012-11-08 17:09:26 -0500
commitd9a16f9ab9332b7cf1c95086a4efb98a0d13a57a (patch)
tree3f15e84beccd384ac1c3d5f2d3260e164e422da8 /arch/arm/mach-omap2/cm_common.c
parent5b78e61b1cf28f061a7989b25180fcef26d31eb8 (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.c22
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 @@
25static struct cm_ll_data null_cm_ll_data; 26static struct cm_ll_data null_cm_ll_data;
26static struct cm_ll_data *cm_ll_data = &null_cm_ll_data; 27static struct cm_ll_data *cm_ll_data = &null_cm_ll_data;
27 28
29/* cm_base: base virtual address of the CM IP block */
30void __iomem *cm_base;
31
32/* cm2_base: base virtual address of the CM2 IP block (OMAP44xx only) */
33void __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 */
42void __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