Skip to contentSkip to conversation

Status of CONFIG_OMAP_DM_TIMER

PATCH In review Ben Gamari 2 participants 5 messages Dec 23, 2010 – Dec 24, 2010

Subsystems (2)
lore
Share & tools
lore

Ben Gamari

author
#0 lore raw

While compiling a kernel today I found the build was failing with a fair number of errors while linking vmlinux,

arch/arm/mach-omap2/built-in.o: In function `omap2_gp_timer_set_mode':
/home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:84: undefined reference to omap_dm_timer_stop' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:88: undefined reference to omap_dm_timer_get_fclk' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:90: undefined reference to `omap_dm_timer_set_load_start'
...

After investigating a bit more deeply, I found that I had neglected to enable OMAP_DM_TIMER. Looking further, I found that ARCH_OMAP2PLUS builds timer_gp.o, which itself has symbol dependencies on the dm_timer framework. Given this face, it seems that the easiest solution would be to do as I have done in this patch and make ARCH_OMAP2PLUS depend on OMAP_DM_TIMER, since it will not build without it. That being said, is it necessary to keep OMAP_DM_TIMER configurable? What is this option actually buying us?

Cheers,

- Ben

author
#1 lore raw

PATCH 1/1 omap2: Make OMAP2PLUS select OMAP_DM_TIMER

It appears that arch/arm/mach-omap2/timer-gp.o is needed by OMAP2PLUS. Since timer-gp.o has direct dependencies on omap_dm_timer_*, it seems correct for the architecture to depend upon OMAP_DM_TIMER, otherwise unsuspecting integrators will be faced with a whole bunch of linker errors at the end of their kernel build:

arch/arm/mach-omap2/built-in.o: In function `omap2_gp_timer_set_mode':
/home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:84: undefined reference to omap_dm_timer_stop' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:88: undefined reference to omap_dm_timer_get_fclk' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:90: undefined reference to `omap_dm_timer_set_load_start'
...

---
 arch/arm/plat-omap/Kconfig |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
arch/arm/plat-omap/Kconfig +1 -0
index 92c5bb7..784c06c 100644
@@ -18,6 +18,7 @@ config ARCH_OMAP1
 config ARCH_OMAP2PLUS
 	bool "TI OMAP2/3/4"
 	select COMMON_CLKDEV
+	select OMAP_DM_TIMER
 	help
 	  "Systems based on OMAP2, OMAP3 or OMAP4"
 
Signature · 1 line
1.7.0.4
#2 lore raw

Re: [PATCH] omap2: Make OMAP2PLUS select OMAP_DM_TIMER

Quoted 5 lines · Ben Gamari

It appears that arch/arm/mach-omap2/timer-gp.o is needed by OMAP2PLUS. Since timer-gp.o has direct dependencies on omap_dm_timer_*, it seems correct for the architecture to depend upon OMAP_DM_TIMER, otherwise unsuspecting integrators will be faced with a whole bunch of linker errors at the end of their kernel build:

Can you please repost this with linux-arm-kernel list also Cc'd?

Thanks,

Tony

author
#3 lore raw

Re: [PATCH] omap2: Make OMAP2PLUS select OMAP_DM_TIMER

Quoted 9 lines · Tony Lindgren
Quoted 5 lines · Ben Gamari

It appears that arch/arm/mach-omap2/timer-gp.o is needed by OMAP2PLUS. Since timer-gp.o has direct dependencies on omap_dm_timer_*, it seems correct for the architecture to depend upon OMAP_DM_TIMER, otherwise unsuspecting integrators will be faced with a whole bunch of linker errors at the end of their kernel build:

Can you please repost this with linux-arm-kernel list also Cc'd?

Done. Sorry for all of the list noise.

- Ben

author
#4 lore raw

Re: [PATCH] omap2: Make OMAP2PLUS select OMAP_DM_TIMER

In reply to Ben Gamari

It appears that arch/arm/mach-omap2/timer-gp.o is needed by OMAP2PLUS. Since timer-gp.o has direct dependencies on omap_dm_timer_*, it seems correct for the architecture to depend upon OMAP_DM_TIMER, otherwise unsuspecting integrators will be faced with a whole bunch of linker errors at the end of their kernel build:

arch/arm/mach-omap2/built-in.o: In function `omap2_gp_timer_set_mode':
/home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:84: undefined reference to omap_dm_timer_stop' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:88: undefined reference to omap_dm_timer_get_fclk' /home/bgamari/trees/linux-2.6/arch/arm/mach-omap2/timer-gp.c:90: undefined reference to `omap_dm_timer_set_load_start'
...

---
 arch/arm/plat-omap/Kconfig |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
arch/arm/plat-omap/Kconfig +1 -0
index 92c5bb7..784c06c 100644
@@ -18,6 +18,7 @@ config ARCH_OMAP1
 config ARCH_OMAP2PLUS
 	bool "TI OMAP2/3/4"
 	select COMMON_CLKDEV
+	select OMAP_DM_TIMER
 	help
 	  "Systems based on OMAP2, OMAP3 or OMAP4"
 
Signature · 1 line
1.7.0.4