aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/powerdomains.h
diff options
context:
space:
mode:
authorRajendra Nayak <rnayak@ti.com>2010-12-21 22:01:17 -0500
committerPaul Walmsley <paul@pwsan.com>2010-12-21 22:01:17 -0500
commit74bea6b9881f4b32f6c0379e46d2f5e16fd34a07 (patch)
tree5814d6a95d8edb64b9e4d01e75dfeb15edd8d972 /arch/arm/mach-omap2/powerdomains.h
parentff2516fbef20ed9edd9cc2fc8b8b48d5cb5a932f (diff)
OMAP: powerdomain: Move static allocations from powerdomains.h to a .c file
powerdomains.h header today has only static definitions. Adding any function declarations into it and including it in multiple source file is expected to cause issues. Hence move all the static definitions from powerdomains.h file into powerdomains_data.c file. Also, create a new powerdomain section of the mach-omap2/Makefile, and rearrange the prcm-common part of the Makefile, now that the powerdomain code is in its own Makefile section. Signed-off-by: Rajendra Nayak <rnayak@ti.com> [paul@pwsan.com: rearrange Makefile changes, tweaked commit message] Signed-off-by: Paul Walmsley <paul@pwsan.com> Reviewed-by: Kevin Hilman <khilman@deeprootsystems.com> Tested-by: Kevin Hilman <khilman@deeprootsystems.com> Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Rajendra Nayak <rnayak@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/powerdomains.h')
-rw-r--r--arch/arm/mach-omap2/powerdomains.h153
1 files changed, 0 insertions, 153 deletions
diff --git a/arch/arm/mach-omap2/powerdomains.h b/arch/arm/mach-omap2/powerdomains.h
deleted file mode 100644
index 105cbcaefd3b..000000000000
--- a/arch/arm/mach-omap2/powerdomains.h
+++ /dev/null
@@ -1,153 +0,0 @@
1/*
2 * OMAP2/3 common powerdomain definitions
3 *
4 * Copyright (C) 2007-2008 Texas Instruments, Inc.
5 * Copyright (C) 2007-2009 Nokia Corporation
6 *
7 * Written by Paul Walmsley
8 * Debugging and integration fixes by Jouni Högander
9 *
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
13 */
14
15/*
16 * To Do List
17 * -> Move the Sleep/Wakeup dependencies from Power Domain framework to
18 * Clock Domain Framework
19 */
20
21#ifndef ARCH_ARM_MACH_OMAP2_POWERDOMAINS
22#define ARCH_ARM_MACH_OMAP2_POWERDOMAINS
23
24/*
25 * This file contains all of the powerdomains that have some element
26 * of software control for the OMAP24xx and OMAP34xx chips.
27 *
28 * This is not an exhaustive listing of powerdomains on the chips; only
29 * powerdomains that can be controlled in software.
30 */
31
32/*
33 * The names for the DSP/IVA2 powerdomains are confusing.
34 *
35 * Most OMAP chips have an on-board DSP.
36 *
37 * On the 2420, this is a 'C55 DSP called, simply, the DSP. Its
38 * powerdomain is called the "DSP power domain." On the 2430, the
39 * on-board DSP is a 'C64 DSP, now called (along with its hardware
40 * accelerators) the IVA2 or IVA2.1. Its powerdomain is still called
41 * the "DSP power domain." On the 3430, the DSP is a 'C64 DSP like the
42 * 2430, also known as the IVA2; but its powerdomain is now called the
43 * "IVA2 power domain."
44 *
45 * The 2420 also has something called the IVA, which is a separate ARM
46 * core, and has nothing to do with the DSP/IVA2.
47 *
48 * Ideally the DSP/IVA2 could just be the same powerdomain, but the PRCM
49 * address offset is different between the C55 and C64 DSPs.
50 */
51
52#include <plat/powerdomain.h>
53
54#include "prcm-common.h"
55#include "prm.h"
56#include "cm.h"
57#include "powerdomains24xx.h"
58#include "powerdomains34xx.h"
59#include "powerdomains44xx.h"
60
61/* OMAP2/3-common powerdomains */
62
63#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
64
65/*
66 * The GFX powerdomain is not present on 3430ES2, but currently we do not
67 * have a macro to filter it out at compile-time.
68 */
69static struct powerdomain gfx_omap2_pwrdm = {
70 .name = "gfx_pwrdm",
71 .prcm_offs = GFX_MOD,
72 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX |
73 CHIP_IS_OMAP3430ES1),
74 .pwrsts = PWRSTS_OFF_RET_ON,
75 .pwrsts_logic_ret = PWRDM_POWER_RET,
76 .banks = 1,
77 .pwrsts_mem_ret = {
78 [0] = PWRDM_POWER_RET, /* MEMRETSTATE */
79 },
80 .pwrsts_mem_on = {
81 [0] = PWRDM_POWER_ON, /* MEMONSTATE */
82 },
83};
84
85static struct powerdomain wkup_omap2_pwrdm = {
86 .name = "wkup_pwrdm",
87 .prcm_offs = WKUP_MOD,
88 .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430),
89};
90
91#endif
92
93
94/* As powerdomains are added or removed above, this list must also be changed */
95static struct powerdomain *powerdomains_omap[] __initdata = {
96
97#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
98 &wkup_omap2_pwrdm,
99 &gfx_omap2_pwrdm,
100#endif
101
102#ifdef CONFIG_ARCH_OMAP2
103 &dsp_pwrdm,
104 &mpu_24xx_pwrdm,
105 &core_24xx_pwrdm,
106#endif
107
108#ifdef CONFIG_ARCH_OMAP2430
109 &mdm_pwrdm,
110#endif
111
112#ifdef CONFIG_ARCH_OMAP3
113 &iva2_pwrdm,
114 &mpu_3xxx_pwrdm,
115 &neon_pwrdm,
116 &core_3xxx_pre_es3_1_pwrdm,
117 &core_3xxx_es3_1_pwrdm,
118 &cam_pwrdm,
119 &dss_pwrdm,
120 &per_pwrdm,
121 &emu_pwrdm,
122 &sgx_pwrdm,
123 &usbhost_pwrdm,
124 &dpll1_pwrdm,
125 &dpll2_pwrdm,
126 &dpll3_pwrdm,
127 &dpll4_pwrdm,
128 &dpll5_pwrdm,
129#endif
130
131#ifdef CONFIG_ARCH_OMAP4
132 &core_44xx_pwrdm,
133 &gfx_44xx_pwrdm,
134 &abe_44xx_pwrdm,
135 &dss_44xx_pwrdm,
136 &tesla_44xx_pwrdm,
137 &wkup_44xx_pwrdm,
138 &cpu0_44xx_pwrdm,
139 &cpu1_44xx_pwrdm,
140 &emu_44xx_pwrdm,
141 &mpu_44xx_pwrdm,
142 &ivahd_44xx_pwrdm,
143 &cam_44xx_pwrdm,
144 &l3init_44xx_pwrdm,
145 &l4per_44xx_pwrdm,
146 &always_on_core_44xx_pwrdm,
147 &cefuse_44xx_pwrdm,
148#endif
149 NULL
150};
151
152
153#endif