All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-21 23:22 ` Arnd Bergmann
  0 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2013-06-21 23:22 UTC (permalink / raw)
  To: Tony Lindgren
  Cc: Ankur Kishore, Afzal Mohammed, Linux OMAP List, Linux ARM Kernel List

With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
build errors:

arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
:(.text+0x7858): undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
:(.text+0x793c): undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
:(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'

The easiest way to work around that is to turn on the missing
functions, even though we know they won't be used on am43xx,
which is single-CPU.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Ankur Kishore <a-kishore@ti.com>
Cc: Afzal Mohammed <afzal@ti.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index f5038f5..46d7c5f 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -39,7 +39,7 @@ omap-4-5-common				=  omap4-common.o omap-wakeupgen.o \
 					   sleep44xx.o
 obj-$(CONFIG_ARCH_OMAP4)		+= $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_OMAP5)			+= $(omap-4-5-common) $(smp-y)
-obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common)
+obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common) $(smp-y)
 
 plus_sec := $(call as-instr,.arch_extension sec,+sec)
 AFLAGS_omap-headsmp.o			:=-Wa,-march=armv7-a$(plus_sec)
@@ -89,6 +89,7 @@ obj-$(CONFIG_ARCH_OMAP2)		+= sleep24xx.o
 obj-$(CONFIG_ARCH_OMAP3)		+= pm34xx.o sleep34xx.o
 obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o omap-mpuss-lowpower.o
 obj-$(CONFIG_SOC_OMAP5)			+= omap-mpuss-lowpower.o
+obj-$(CONFIG_SOC_AM43XX)		+= omap-mpuss-lowpower.o
 obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
 
 obj-$(CONFIG_POWER_AVS_OMAP)		+= sr_device.o

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-21 23:22 ` Arnd Bergmann
  0 siblings, 0 replies; 10+ messages in thread
From: Arnd Bergmann @ 2013-06-21 23:22 UTC (permalink / raw)
  To: linux-arm-kernel

With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
build errors:

arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
:(.text+0x7858): undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
:(.text+0x793c): undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
:(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'

The easiest way to work around that is to turn on the missing
functions, even though we know they won't be used on am43xx,
which is single-CPU.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Ankur Kishore <a-kishore@ti.com>
Cc: Afzal Mohammed <afzal@ti.com>
Cc: Tony Lindgren <tony@atomide.com>

diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index f5038f5..46d7c5f 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -39,7 +39,7 @@ omap-4-5-common				=  omap4-common.o omap-wakeupgen.o \
 					   sleep44xx.o
 obj-$(CONFIG_ARCH_OMAP4)		+= $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_OMAP5)			+= $(omap-4-5-common) $(smp-y)
-obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common)
+obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common) $(smp-y)
 
 plus_sec := $(call as-instr,.arch_extension sec,+sec)
 AFLAGS_omap-headsmp.o			:=-Wa,-march=armv7-a$(plus_sec)
@@ -89,6 +89,7 @@ obj-$(CONFIG_ARCH_OMAP2)		+= sleep24xx.o
 obj-$(CONFIG_ARCH_OMAP3)		+= pm34xx.o sleep34xx.o
 obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o omap-mpuss-lowpower.o
 obj-$(CONFIG_SOC_OMAP5)			+= omap-mpuss-lowpower.o
+obj-$(CONFIG_SOC_AM43XX)		+= omap-mpuss-lowpower.o
 obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
 
 obj-$(CONFIG_POWER_AVS_OMAP)		+= sr_device.o

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH] ARM: omap: make am43xx build with SMP enabled
  2013-06-21 23:22 ` Arnd Bergmann
@ 2013-06-24  7:17   ` Tony Lindgren
  -1 siblings, 0 replies; 10+ messages in thread
From: Tony Lindgren @ 2013-06-24  7:17 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Ankur Kishore, Afzal Mohammed, Linux OMAP List, Linux ARM Kernel List

* Arnd Bergmann <arnd@arndb.de> [130621 16:28]:
> With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> build errors:
> 
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> 
> The easiest way to work around that is to turn on the missing
> functions, even though we know they won't be used on am43xx,
> which is single-CPU.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Cc: Ankur Kishore <a-kishore@ti.com>
> Cc: Afzal Mohammed <afzal@ti.com>
> Cc: Tony Lindgren <tony@atomide.com>

Looks OK to me:

Acked-by: Tony Lindgren <tony@atomide.com>
 
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index f5038f5..46d7c5f 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -39,7 +39,7 @@ omap-4-5-common				=  omap4-common.o omap-wakeupgen.o \
>  					   sleep44xx.o
>  obj-$(CONFIG_ARCH_OMAP4)		+= $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_OMAP5)			+= $(omap-4-5-common) $(smp-y)
> -obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common)
> +obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common) $(smp-y)
>  
>  plus_sec := $(call as-instr,.arch_extension sec,+sec)
>  AFLAGS_omap-headsmp.o			:=-Wa,-march=armv7-a$(plus_sec)
> @@ -89,6 +89,7 @@ obj-$(CONFIG_ARCH_OMAP2)		+= sleep24xx.o
>  obj-$(CONFIG_ARCH_OMAP3)		+= pm34xx.o sleep34xx.o
>  obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o omap-mpuss-lowpower.o
>  obj-$(CONFIG_SOC_OMAP5)			+= omap-mpuss-lowpower.o
> +obj-$(CONFIG_SOC_AM43XX)		+= omap-mpuss-lowpower.o
>  obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
>  
>  obj-$(CONFIG_POWER_AVS_OMAP)		+= sr_device.o

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-24  7:17   ` Tony Lindgren
  0 siblings, 0 replies; 10+ messages in thread
From: Tony Lindgren @ 2013-06-24  7:17 UTC (permalink / raw)
  To: linux-arm-kernel

* Arnd Bergmann <arnd@arndb.de> [130621 16:28]:
> With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> build errors:
> 
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> 
> The easiest way to work around that is to turn on the missing
> functions, even though we know they won't be used on am43xx,
> which is single-CPU.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Cc: Ankur Kishore <a-kishore@ti.com>
> Cc: Afzal Mohammed <afzal@ti.com>
> Cc: Tony Lindgren <tony@atomide.com>

Looks OK to me:

Acked-by: Tony Lindgren <tony@atomide.com>
 
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index f5038f5..46d7c5f 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -39,7 +39,7 @@ omap-4-5-common				=  omap4-common.o omap-wakeupgen.o \
>  					   sleep44xx.o
>  obj-$(CONFIG_ARCH_OMAP4)		+= $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_OMAP5)			+= $(omap-4-5-common) $(smp-y)
> -obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common)
> +obj-$(CONFIG_SOC_AM43XX)		+= $(omap-4-5-common) $(smp-y)
>  
>  plus_sec := $(call as-instr,.arch_extension sec,+sec)
>  AFLAGS_omap-headsmp.o			:=-Wa,-march=armv7-a$(plus_sec)
> @@ -89,6 +89,7 @@ obj-$(CONFIG_ARCH_OMAP2)		+= sleep24xx.o
>  obj-$(CONFIG_ARCH_OMAP3)		+= pm34xx.o sleep34xx.o
>  obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o omap-mpuss-lowpower.o
>  obj-$(CONFIG_SOC_OMAP5)			+= omap-mpuss-lowpower.o
> +obj-$(CONFIG_SOC_AM43XX)		+= omap-mpuss-lowpower.o
>  obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
>  
>  obj-$(CONFIG_POWER_AVS_OMAP)		+= sr_device.o

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: [PATCH] ARM: omap: make am43xx build with SMP enabled
  2013-06-24  7:17   ` Tony Lindgren
@ 2013-06-24  7:25     ` Mohammed, Afzal
  -1 siblings, 0 replies; 10+ messages in thread
From: Mohammed, Afzal @ 2013-06-24  7:25 UTC (permalink / raw)
  To: Tony Lindgren, Arnd Bergmann
  Cc: Kishore, Ankur, Linux OMAP List, Linux ARM Kernel List

Hi,

On Mon, Jun 24, 2013 at 12:47:42, Tony Lindgren wrote:
> * Arnd Bergmann <arnd@arndb.de> [130621 16:28]:
> > With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> > build errors:
> > 
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> > :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> > :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> > :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> > 
> > The easiest way to work around that is to turn on the missing
> > functions, even though we know they won't be used on am43xx,
> > which is single-CPU.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > Cc: Ankur Kishore <a-kishore@ti.com>
> > Cc: Afzal Mohammed <afzal@ti.com>
> > Cc: Tony Lindgren <tony@atomide.com>
> 
> Looks OK to me:
> 
> Acked-by: Tony Lindgren <tony@atomide.com>

Wait, seeing another build error after applying this patch,
I will respond back soon.

Regards
Afzal

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-24  7:25     ` Mohammed, Afzal
  0 siblings, 0 replies; 10+ messages in thread
From: Mohammed, Afzal @ 2013-06-24  7:25 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On Mon, Jun 24, 2013 at 12:47:42, Tony Lindgren wrote:
> * Arnd Bergmann <arnd@arndb.de> [130621 16:28]:
> > With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> > build errors:
> > 
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> > :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> > :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> > :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> > 
> > The easiest way to work around that is to turn on the missing
> > functions, even though we know they won't be used on am43xx,
> > which is single-CPU.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > Cc: Ankur Kishore <a-kishore@ti.com>
> > Cc: Afzal Mohammed <afzal@ti.com>
> > Cc: Tony Lindgren <tony@atomide.com>
> 
> Looks OK to me:
> 
> Acked-by: Tony Lindgren <tony@atomide.com>

Wait, seeing another build error after applying this patch,
I will respond back soon.

Regards
Afzal

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: [PATCH] ARM: omap: make am43xx build with SMP enabled
  2013-06-21 23:22 ` Arnd Bergmann
@ 2013-06-24  8:13   ` Mohammed, Afzal
  -1 siblings, 0 replies; 10+ messages in thread
From: Mohammed, Afzal @ 2013-06-24  8:13 UTC (permalink / raw)
  To: Arnd Bergmann, Tony Lindgren
  Cc: Kishore, Ankur, Linux OMAP List, Linux ARM Kernel List

Hi Arnd, Tony,

On Sat, Jun 22, 2013 at 04:52:47, Arnd Bergmann wrote:
> With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> build errors:

Getting AM43x only build with OMAP4/5 disabled was really difficult
with original series itself, I thought finally had got a right
Makefile change handling SMP combinations too, but still :(, my brain
was not big enough to think of multiplatform case :)

Thanks Arnd for the patch.

> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> 
> The easiest way to work around that is to turn on the missing
> functions, even though we know they won't be used on am43xx,
> which is single-CPU.

This change was giving errors mainly due to unavailable omap4 prcm
functions required by "omap-mpuss-lowpower.c"

How about the below patch - we don't need to include additional
files with it, or something wrong with it ?

Regards
Afzal

---8<------

From: Afzal Mohammed <afzal@ti.com>
Date: Mon, 24 Jun 2013 12:41:05 +0530
Subject: [PATCH] ARM: OMAP2+: AM43x: resolve SMP related build error

If AM43x and SMP is selected, OMAP4 & OMAP5 deselected, build error as
follows,

arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
arch/arm/mach-omap2/sleep44xx.S:131: undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/sleep44xx.S:132: undefined reference to `scu_power_mode'
arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
arch/arm/mach-omap2/sleep44xx.S:227: undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/sleep44xx.S:229: undefined reference to `scu_power_mode'

Resolve it by building sleep44xx.S only for OMAP4 & OMAP5.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
---
 arch/arm/mach-omap2/Makefile | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 0520dc4..a6c4187 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -35,8 +35,9 @@ obj-$(CONFIG_SOC_HAS_OMAP2_SDRC)      += sdrc.o

 smp-$(CONFIG_SMP)                      += omap-smp.o omap-headsmp.o
 smp-$(CONFIG_HOTPLUG_CPU)              += omap-hotplug.o
-omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o \
-                                          sleep44xx.o
+omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o
+obj-$(CONFIG_ARCH_OMAP4)               += sleep44xx.o
+obj-$(CONFIG_SOC_OMAP5)                        += sleep44xx.o
 obj-$(CONFIG_ARCH_OMAP4)               += $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_OMAP5)                        += $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_AM43XX)               += $(omap-4-5-common)
--


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-24  8:13   ` Mohammed, Afzal
  0 siblings, 0 replies; 10+ messages in thread
From: Mohammed, Afzal @ 2013-06-24  8:13 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Arnd, Tony,

On Sat, Jun 22, 2013 at 04:52:47, Arnd Bergmann wrote:
> With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> build errors:

Getting AM43x only build with OMAP4/5 disabled was really difficult
with original series itself, I thought finally had got a right
Makefile change handling SMP combinations too, but still :(, my brain
was not big enough to think of multiplatform case :)

Thanks Arnd for the patch.

> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> 
> The easiest way to work around that is to turn on the missing
> functions, even though we know they won't be used on am43xx,
> which is single-CPU.

This change was giving errors mainly due to unavailable omap4 prcm
functions required by "omap-mpuss-lowpower.c"

How about the below patch - we don't need to include additional
files with it, or something wrong with it ?

Regards
Afzal

---8<------

From: Afzal Mohammed <afzal@ti.com>
Date: Mon, 24 Jun 2013 12:41:05 +0530
Subject: [PATCH] ARM: OMAP2+: AM43x: resolve SMP related build error

If AM43x and SMP is selected, OMAP4 & OMAP5 deselected, build error as
follows,

arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
arch/arm/mach-omap2/sleep44xx.S:131: undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/sleep44xx.S:132: undefined reference to `scu_power_mode'
arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
arch/arm/mach-omap2/sleep44xx.S:227: undefined reference to `omap4_get_scu_base'
arch/arm/mach-omap2/sleep44xx.S:229: undefined reference to `scu_power_mode'

Resolve it by building sleep44xx.S only for OMAP4 & OMAP5.

Signed-off-by: Afzal Mohammed <afzal@ti.com>
---
 arch/arm/mach-omap2/Makefile | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 0520dc4..a6c4187 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -35,8 +35,9 @@ obj-$(CONFIG_SOC_HAS_OMAP2_SDRC)      += sdrc.o

 smp-$(CONFIG_SMP)                      += omap-smp.o omap-headsmp.o
 smp-$(CONFIG_HOTPLUG_CPU)              += omap-hotplug.o
-omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o \
-                                          sleep44xx.o
+omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o
+obj-$(CONFIG_ARCH_OMAP4)               += sleep44xx.o
+obj-$(CONFIG_SOC_OMAP5)                        += sleep44xx.o
 obj-$(CONFIG_ARCH_OMAP4)               += $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_OMAP5)                        += $(omap-4-5-common) $(smp-y)
 obj-$(CONFIG_SOC_AM43XX)               += $(omap-4-5-common)
--

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH] ARM: omap: make am43xx build with SMP enabled
  2013-06-24  8:13   ` Mohammed, Afzal
@ 2013-06-24  9:58     ` Tony Lindgren
  -1 siblings, 0 replies; 10+ messages in thread
From: Tony Lindgren @ 2013-06-24  9:58 UTC (permalink / raw)
  To: Mohammed, Afzal
  Cc: Arnd Bergmann, Kishore, Ankur, Linux OMAP List, Linux ARM Kernel List

* Mohammed, Afzal <afzal@ti.com> [130624 01:19]:
> Hi Arnd, Tony,
> 
> On Sat, Jun 22, 2013 at 04:52:47, Arnd Bergmann wrote:
> > With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> > build errors:
> 
> Getting AM43x only build with OMAP4/5 disabled was really difficult
> with original series itself, I thought finally had got a right
> Makefile change handling SMP combinations too, but still :(, my brain
> was not big enough to think of multiplatform case :)
> 
> Thanks Arnd for the patch.
> 
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> > :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> > :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> > :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> > 
> > The easiest way to work around that is to turn on the missing
> > functions, even though we know they won't be used on am43xx,
> > which is single-CPU.
> 
> This change was giving errors mainly due to unavailable omap4 prcm
> functions required by "omap-mpuss-lowpower.c"
> 
> How about the below patch - we don't need to include additional
> files with it, or something wrong with it ?

This too looks OK to me, sounds like you'll need a separate
sleep code anyways. It's probably best that Arnd applies this
directly:

Acked-by: Tony Lindgren <tony@atomide.com>

> ---8<------
> 
> From: Afzal Mohammed <afzal@ti.com>
> Date: Mon, 24 Jun 2013 12:41:05 +0530
> Subject: [PATCH] ARM: OMAP2+: AM43x: resolve SMP related build error
> 
> If AM43x and SMP is selected, OMAP4 & OMAP5 deselected, build error as
> follows,
> 
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> arch/arm/mach-omap2/sleep44xx.S:131: undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/sleep44xx.S:132: undefined reference to `scu_power_mode'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> arch/arm/mach-omap2/sleep44xx.S:227: undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/sleep44xx.S:229: undefined reference to `scu_power_mode'
> 
> Resolve it by building sleep44xx.S only for OMAP4 & OMAP5.
> 
> Signed-off-by: Afzal Mohammed <afzal@ti.com>
> ---
>  arch/arm/mach-omap2/Makefile | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index 0520dc4..a6c4187 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -35,8 +35,9 @@ obj-$(CONFIG_SOC_HAS_OMAP2_SDRC)      += sdrc.o
> 
>  smp-$(CONFIG_SMP)                      += omap-smp.o omap-headsmp.o
>  smp-$(CONFIG_HOTPLUG_CPU)              += omap-hotplug.o
> -omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o \
> -                                          sleep44xx.o
> +omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o
> +obj-$(CONFIG_ARCH_OMAP4)               += sleep44xx.o
> +obj-$(CONFIG_SOC_OMAP5)                        += sleep44xx.o
>  obj-$(CONFIG_ARCH_OMAP4)               += $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_OMAP5)                        += $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_AM43XX)               += $(omap-4-5-common)
> --
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] ARM: omap: make am43xx build with SMP enabled
@ 2013-06-24  9:58     ` Tony Lindgren
  0 siblings, 0 replies; 10+ messages in thread
From: Tony Lindgren @ 2013-06-24  9:58 UTC (permalink / raw)
  To: linux-arm-kernel

* Mohammed, Afzal <afzal@ti.com> [130624 01:19]:
> Hi Arnd, Tony,
> 
> On Sat, Jun 22, 2013 at 04:52:47, Arnd Bergmann wrote:
> > With am43xx enabled, omap4 and omap5 disabled and SMP on, I get these
> > build errors:
> 
> Getting AM43x only build with OMAP4/5 disabled was really difficult
> with original series itself, I thought finally had got a right
> Makefile change handling SMP combinations too, but still :(, my brain
> was not big enough to think of multiplatform case :)
> 
> Thanks Arnd for the patch.
> 
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> > :(.text+0x7858): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> > :(.text+0x793c): undefined reference to `omap4_get_scu_base'
> > arch/arm/mach-omap2/built-in.o: In function `omap4_cpu_die':
> > :(.ref.text+0x44): undefined reference to `omap4_hotplug_cpu'
> > 
> > The easiest way to work around that is to turn on the missing
> > functions, even though we know they won't be used on am43xx,
> > which is single-CPU.
> 
> This change was giving errors mainly due to unavailable omap4 prcm
> functions required by "omap-mpuss-lowpower.c"
> 
> How about the below patch - we don't need to include additional
> files with it, or something wrong with it ?

This too looks OK to me, sounds like you'll need a separate
sleep code anyways. It's probably best that Arnd applies this
directly:

Acked-by: Tony Lindgren <tony@atomide.com>

> ---8<------
> 
> From: Afzal Mohammed <afzal@ti.com>
> Date: Mon, 24 Jun 2013 12:41:05 +0530
> Subject: [PATCH] ARM: OMAP2+: AM43x: resolve SMP related build error
> 
> If AM43x and SMP is selected, OMAP4 & OMAP5 deselected, build error as
> follows,
> 
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_set':
> arch/arm/mach-omap2/sleep44xx.S:131: undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/sleep44xx.S:132: undefined reference to `scu_power_mode'
> arch/arm/mach-omap2/built-in.o: In function `scu_gp_clear':
> arch/arm/mach-omap2/sleep44xx.S:227: undefined reference to `omap4_get_scu_base'
> arch/arm/mach-omap2/sleep44xx.S:229: undefined reference to `scu_power_mode'
> 
> Resolve it by building sleep44xx.S only for OMAP4 & OMAP5.
> 
> Signed-off-by: Afzal Mohammed <afzal@ti.com>
> ---
>  arch/arm/mach-omap2/Makefile | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
> index 0520dc4..a6c4187 100644
> --- a/arch/arm/mach-omap2/Makefile
> +++ b/arch/arm/mach-omap2/Makefile
> @@ -35,8 +35,9 @@ obj-$(CONFIG_SOC_HAS_OMAP2_SDRC)      += sdrc.o
> 
>  smp-$(CONFIG_SMP)                      += omap-smp.o omap-headsmp.o
>  smp-$(CONFIG_HOTPLUG_CPU)              += omap-hotplug.o
> -omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o \
> -                                          sleep44xx.o
> +omap-4-5-common                                =  omap4-common.o omap-wakeupgen.o
> +obj-$(CONFIG_ARCH_OMAP4)               += sleep44xx.o
> +obj-$(CONFIG_SOC_OMAP5)                        += sleep44xx.o
>  obj-$(CONFIG_ARCH_OMAP4)               += $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_OMAP5)                        += $(omap-4-5-common) $(smp-y)
>  obj-$(CONFIG_SOC_AM43XX)               += $(omap-4-5-common)
> --
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-06-24  9:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-21 23:22 [PATCH] ARM: omap: make am43xx build with SMP enabled Arnd Bergmann
2013-06-21 23:22 ` Arnd Bergmann
2013-06-24  7:17 ` Tony Lindgren
2013-06-24  7:17   ` Tony Lindgren
2013-06-24  7:25   ` Mohammed, Afzal
2013-06-24  7:25     ` Mohammed, Afzal
2013-06-24  8:13 ` Mohammed, Afzal
2013-06-24  8:13   ` Mohammed, Afzal
2013-06-24  9:58   ` Tony Lindgren
2013-06-24  9:58     ` Tony Lindgren

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.