aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
authorVaibhav Hiremath <hvaibhav@ti.com>2012-07-05 11:05:15 -0400
committerTony Lindgren <tony@atomide.com>2012-07-05 11:05:15 -0400
commit1c213ba16ed8f48fc12dfec8a588d608ffef0904 (patch)
treee121a5f4fa9a2f99e28ca8abc3fb9b42e9e2465e /arch/arm/mach-omap2
parent353cec46d50a38e412112e23f9542c3d6e51a308 (diff)
ARM: OMAP2+: am33xx: Make am33xx as a separate class
Initially, we decided to make am33xx family of device to fall under omap3 class (cpu_is_omap34xx() = true), since it carries Cortex-A8 core. But while adding complete baseport support (like, clock, power and hwmod) support, it is observed that, we are creating more and more problems by treating am33xx device as omap3 family, as nothing matches between them (except cortex-A8 mpu). So, after long discussion we have came to the conclusion that, we should not consider am33xx device as omap3 family, instead create separate class (SOC_AM33XX) under OMAP2PLUS. This means, for am33xx device, cpu_is_omap34xx() will return false, and only cpu_is_am33xx() will be true. Please refer to the link below, for mailing-list discussion on this - http://www.spinics.net/lists/linux-omap/msg69439.html Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com> Cc: Kevin Hilman <khilman@ti.com> Cc: Paul Walmsley <paul@pwsan.com> [tony@atomide.com: fixed typo, updated for soc_is changes] Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/Kconfig4
-rw-r--r--arch/arm/mach-omap2/Makefile5
-rw-r--r--arch/arm/mach-omap2/common.c2
3 files changed, 10 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 042f157a8f94..3649a34db00d 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -82,8 +82,10 @@ config SOC_TI81XX
82 82
83config SOC_AM33XX 83config SOC_AM33XX
84 bool "AM33XX support" 84 bool "AM33XX support"
85 depends on ARCH_OMAP3
86 default y 85 default y
86 select CPU_V7
87 select ARM_CPU_SUSPEND if PM
88 select MULTI_IRQ_HANDLER
87 89
88config OMAP_PACKAGE_ZAF 90config OMAP_PACKAGE_ZAF
89 bool 91 bool
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 54ad3a4b612c..846d44547fd3 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -16,6 +16,7 @@ secure-common = omap-smc.o omap-secure.o
16obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(hwmod-common) 16obj-$(CONFIG_ARCH_OMAP2) += $(omap-2-3-common) $(hwmod-common)
17obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(hwmod-common) $(secure-common) 17obj-$(CONFIG_ARCH_OMAP3) += $(omap-2-3-common) $(hwmod-common) $(secure-common)
18obj-$(CONFIG_ARCH_OMAP4) += prm44xx.o $(hwmod-common) $(secure-common) 18obj-$(CONFIG_ARCH_OMAP4) += prm44xx.o $(hwmod-common) $(secure-common)
19obj-$(CONFIG_SOC_AM33XX) += irq.o $(hwmod-common)
19 20
20ifneq ($(CONFIG_SND_OMAP_SOC_MCBSP),) 21ifneq ($(CONFIG_SND_OMAP_SOC_MCBSP),)
21obj-y += mcbsp.o 22obj-y += mcbsp.o
@@ -100,6 +101,7 @@ obj-$(CONFIG_ARCH_OMAP3) += $(voltagedomain-common)
100obj-$(CONFIG_ARCH_OMAP3) += voltagedomains3xxx_data.o 101obj-$(CONFIG_ARCH_OMAP3) += voltagedomains3xxx_data.o
101obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common) 102obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common)
102obj-$(CONFIG_ARCH_OMAP4) += voltagedomains44xx_data.o 103obj-$(CONFIG_ARCH_OMAP4) += voltagedomains44xx_data.o
104obj-$(CONFIG_SOC_AM33XX) += $(voltagedomain-common)
103obj-$(CONFIG_SOC_AM33XX) += voltagedomains33xx_data.o 105obj-$(CONFIG_SOC_AM33XX) += voltagedomains33xx_data.o
104 106
105# OMAP powerdomain framework 107# OMAP powerdomain framework
@@ -115,6 +117,7 @@ obj-$(CONFIG_ARCH_OMAP3) += powerdomains2xxx_3xxx_data.o
115obj-$(CONFIG_ARCH_OMAP4) += $(powerdomain-common) 117obj-$(CONFIG_ARCH_OMAP4) += $(powerdomain-common)
116obj-$(CONFIG_ARCH_OMAP4) += powerdomain44xx.o 118obj-$(CONFIG_ARCH_OMAP4) += powerdomain44xx.o
117obj-$(CONFIG_ARCH_OMAP4) += powerdomains44xx_data.o 119obj-$(CONFIG_ARCH_OMAP4) += powerdomains44xx_data.o
120obj-$(CONFIG_SOC_AM33XX) += $(powerdomain-common)
118obj-$(CONFIG_SOC_AM33XX) += powerdomain33xx.o 121obj-$(CONFIG_SOC_AM33XX) += powerdomain33xx.o
119obj-$(CONFIG_SOC_AM33XX) += powerdomains33xx_data.o 122obj-$(CONFIG_SOC_AM33XX) += powerdomains33xx_data.o
120 123
@@ -132,6 +135,7 @@ obj-$(CONFIG_ARCH_OMAP3) += clockdomains3xxx_data.o
132obj-$(CONFIG_ARCH_OMAP4) += $(clockdomain-common) 135obj-$(CONFIG_ARCH_OMAP4) += $(clockdomain-common)
133obj-$(CONFIG_ARCH_OMAP4) += clockdomain44xx.o 136obj-$(CONFIG_ARCH_OMAP4) += clockdomain44xx.o
134obj-$(CONFIG_ARCH_OMAP4) += clockdomains44xx_data.o 137obj-$(CONFIG_ARCH_OMAP4) += clockdomains44xx_data.o
138obj-$(CONFIG_SOC_AM33XX) += $(clockdomain-common)
135obj-$(CONFIG_SOC_AM33XX) += clockdomain33xx.o 139obj-$(CONFIG_SOC_AM33XX) += clockdomain33xx.o
136obj-$(CONFIG_SOC_AM33XX) += clockdomains33xx_data.o 140obj-$(CONFIG_SOC_AM33XX) += clockdomains33xx_data.o
137 141
@@ -151,6 +155,7 @@ obj-$(CONFIG_ARCH_OMAP3) += dpll3xxx.o clock3xxx_data.o
151obj-$(CONFIG_ARCH_OMAP3) += clkt_iclk.o 155obj-$(CONFIG_ARCH_OMAP3) += clkt_iclk.o
152obj-$(CONFIG_ARCH_OMAP4) += $(clock-common) clock44xx_data.o 156obj-$(CONFIG_ARCH_OMAP4) += $(clock-common) clock44xx_data.o
153obj-$(CONFIG_ARCH_OMAP4) += dpll3xxx.o dpll44xx.o 157obj-$(CONFIG_ARCH_OMAP4) += dpll3xxx.o dpll44xx.o
158obj-$(CONFIG_SOC_AM33XX) += $(clock-common) dpll3xxx.o
154 159
155# OMAP2 clock rate set data (old "OPP" data) 160# OMAP2 clock rate set data (old "OPP" data)
156obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o 161obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o
diff --git a/arch/arm/mach-omap2/common.c b/arch/arm/mach-omap2/common.c
index 8a6953a34fe2..a7aa538e681d 100644
--- a/arch/arm/mach-omap2/common.c
+++ b/arch/arm/mach-omap2/common.c
@@ -134,7 +134,9 @@ void __init ti81xx_map_io(void)
134{ 134{
135 omapti81xx_map_common_io(); 135 omapti81xx_map_common_io();
136} 136}
137#endif
137 138
139#if defined(CONFIG_SOC_AM33XX)
138#define AM33XX_TAP_BASE (AM33XX_CTRL_BASE + \ 140#define AM33XX_TAP_BASE (AM33XX_CTRL_BASE + \
139 TI81XX_CONTROL_DEVICE_ID - 0x204) 141 TI81XX_CONTROL_DEVICE_ID - 0x204)
140 142