Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74bea6b9 authored by Rajendra Nayak's avatar Rajendra Nayak Committed by Paul Walmsley
Browse files

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: default avatarRajendra Nayak <rnayak@ti.com>
[paul@pwsan.com: rearrange Makefile changes, tweaked commit message]
Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
Reviewed-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
Tested-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
Tested-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Tested-by: default avatarRajendra Nayak <rnayak@ti.com>
parent ff2516fb
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -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
hwmod-common				= omap_hwmod.o \
					  omap_hwmod_common_data.o
prcm-common				= prcm.o powerdomain.o
clock-common				= clock.o clock_common_data.o \
					  clockdomain.o clkt_dpll.o \
					  clkt_clksel.o

obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(prcm-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(prcm-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP4) += $(prcm-common) prm44xx.o $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(hwmod-common)
obj-$(CONFIG_ARCH_OMAP4) += prm44xx.o $(hwmod-common)

obj-$(CONFIG_OMAP_MCBSP) += mcbsp.o

@@ -74,9 +73,13 @@ endif
endif

# PRCM
obj-$(CONFIG_ARCH_OMAP2)		+= cm.o
obj-$(CONFIG_ARCH_OMAP3)		+= cm.o
obj-$(CONFIG_ARCH_OMAP4)		+= cm4xxx.o
obj-$(CONFIG_ARCH_OMAP2)		+= prcm.o cm.o
obj-$(CONFIG_ARCH_OMAP3)		+= prcm.o cm.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
obj-$(CONFIG_ARCH_OMAP2)		+= $(clock-common) clock2xxx.o \
+5 −0
Original line number Diff line number Diff line
@@ -38,6 +38,11 @@
#include <plat/clockdomain.h>
#include "cm.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
+1 −2
Original line number Diff line number Diff line
@@ -40,7 +40,6 @@

#include <plat/omap-pm.h>
#include <plat/powerdomain.h>
#include "powerdomains.h"

#include <plat/clockdomain.h>
#include "clockdomains.h"
@@ -340,7 +339,7 @@ void __init omap2_init_common_infrastructure(void)
{
	u8 postsetup_state;

	pwrdm_init(powerdomains_omap);
	pwrdm_fw_init();
	clkdm_init(clockdomains_omap, clkdm_autodeps);
	if (cpu_is_omap242x())
		omap2420_hwmod_init();
+5 −5
Original line number Diff line number Diff line
@@ -18,9 +18,6 @@
 *    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
 * of software control for the OMAP24xx and OMAP34xx chips.
@@ -49,6 +46,7 @@
 * address offset is different between the C55 and C64 DSPs.
 */

#include <linux/init.h>
#include <plat/powerdomain.h>

#include "prcm-common.h"
@@ -149,5 +147,7 @@ static struct powerdomain *powerdomains_omap[] __initdata = {
	NULL
};


#endif
void pwrdm_fw_init(void)
{
	pwrdm_init(powerdomains_omap);
}
+1 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ struct powerdomain {
};


void pwrdm_fw_init(void);
void pwrdm_init(struct powerdomain **pwrdm_list);

struct powerdomain *pwrdm_lookup(const char *name);