dect
/
linux-2.6
Archived
13
0
Fork 0

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>
This commit is contained in:
Rajendra Nayak 2010-12-21 20:01:17 -07:00 committed by Paul Walmsley
parent ff2516fbef
commit 74bea6b988
5 changed files with 22 additions and 14 deletions

View File

@ -9,14 +9,13 @@ obj-y := id.o io.o control.o mux.o devices.o serial.o gpmc.o timer-gp.o pm.o \
omap-2-3-common = irq.o sdrc.o prm2xxx_3xxx.o omap-2-3-common = irq.o sdrc.o prm2xxx_3xxx.o
hwmod-common = omap_hwmod.o \ hwmod-common = omap_hwmod.o \
omap_hwmod_common_data.o omap_hwmod_common_data.o
prcm-common = prcm.o powerdomain.o
clock-common = clock.o clock_common_data.o \ clock-common = clock.o clock_common_data.o \
clockdomain.o clkt_dpll.o \ clockdomain.o clkt_dpll.o \
clkt_clksel.o clkt_clksel.o
obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(prcm-common) $(hwmod-common) obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(prcm-common) $(hwmod-common) obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP4) += $(prcm-common) prm44xx.o $(hwmod-common) obj-$(CONFIG_ARCH_OMAP4) += prm44xx.o $(hwmod-common)
obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o
@ -74,9 +73,13 @@ endif
endif endif
# PRCM # PRCM
obj-$(CONFIG_ARCH_OMAP2) += cm.o obj-$(CONFIG_ARCH_OMAP2) += prcm.o cm.o
obj-$(CONFIG_ARCH_OMAP3) += cm.o obj-$(CONFIG_ARCH_OMAP3) += prcm.o cm.o
obj-$(CONFIG_ARCH_OMAP4) += cm4xxx.o obj-$(CONFIG_ARCH_OMAP4) += prcm.o cm4xxx.o
# OMAP powerdomain framework
powerdomain-common += powerdomain.o powerdomains_data.o
obj-y += $(powerdomain-common)
# Clock framework # Clock framework
obj-$(CONFIG_ARCH_OMAP2) += $(clock-common) clock2xxx.o \ obj-$(CONFIG_ARCH_OMAP2) += $(clock-common) clock2xxx.o \

View File

@ -38,6 +38,11 @@
#include <plat/clockdomain.h> #include <plat/clockdomain.h>
#include "cm.h" #include "cm.h"
#include "prm.h" #include "prm.h"
#include "cm-regbits-24xx.h"
#include "cm-regbits-34xx.h"
#include "cm-regbits-44xx.h"
#include "prm-regbits-24xx.h"
#include "prm-regbits-34xx.h"
/* /*
* Clockdomain dependencies for wkdeps/sleepdeps * Clockdomain dependencies for wkdeps/sleepdeps

View File

@ -40,7 +40,6 @@
#include <plat/omap-pm.h> #include <plat/omap-pm.h>
#include <plat/powerdomain.h> #include <plat/powerdomain.h>
#include "powerdomains.h"
#include <plat/clockdomain.h> #include <plat/clockdomain.h>
#include "clockdomains.h" #include "clockdomains.h"
@ -340,7 +339,7 @@ void __init omap2_init_common_infrastructure(void)
{ {
u8 postsetup_state; u8 postsetup_state;
pwrdm_init(powerdomains_omap); pwrdm_fw_init();
clkdm_init(clockdomains_omap, clkdm_autodeps); clkdm_init(clockdomains_omap, clkdm_autodeps);
if (cpu_is_omap242x()) if (cpu_is_omap242x())
omap2420_hwmod_init(); omap2420_hwmod_init();

View File

@ -18,9 +18,6 @@
* Clock Domain Framework * Clock Domain Framework
*/ */
#ifndef ARCH_ARM_MACH_OMAP2_POWERDOMAINS
#define ARCH_ARM_MACH_OMAP2_POWERDOMAINS
/* /*
* This file contains all of the powerdomains that have some element * This file contains all of the powerdomains that have some element
* of software control for the OMAP24xx and OMAP34xx chips. * of software control for the OMAP24xx and OMAP34xx chips.
@ -49,6 +46,7 @@
* address offset is different between the C55 and C64 DSPs. * address offset is different between the C55 and C64 DSPs.
*/ */
#include <linux/init.h>
#include <plat/powerdomain.h> #include <plat/powerdomain.h>
#include "prcm-common.h" #include "prcm-common.h"
@ -149,5 +147,7 @@ static struct powerdomain *powerdomains_omap[] __initdata = {
NULL NULL
}; };
void pwrdm_fw_init(void)
#endif {
pwrdm_init(powerdomains_omap);
}

View File

@ -118,6 +118,7 @@ struct powerdomain {
}; };
void pwrdm_fw_init(void);
void pwrdm_init(struct powerdomain **pwrdm_list); void pwrdm_init(struct powerdomain **pwrdm_list);
struct powerdomain *pwrdm_lookup(const char *name); struct powerdomain *pwrdm_lookup(const char *name);