Skip to content

Commit 6515e48

Browse files
author
Paul Walmsley
committed
OMAP2+: Kconfig: disallow builds for boards that don't use the currently-selected SoC
Currently, if, for example, CONFIG_ARCH_OMAP2420 is not selected, OMAP2420 board files can still be included in the build. This results in link errors: arch/arm/mach-omap2/built-in.o: In function `omap_generic_map_io': .../arch/arm/mach-omap2/board-generic.c:51: undefined reference to `omap2_set_globals_242x' arch/arm/mach-omap2/built-in.o: In function `omap_h4_init': .../arch/arm/mach-omap2/board-h4.c:330: undefined reference to `omap2420_mux_init' arch/arm/mach-omap2/built-in.o: In function `omap_h4_map_io': .../arch/arm/mach-omap2/board-h4.c:373: undefined reference to `omap2_set_globals_242x' arch/arm/mach-omap2/built-in.o: In function `omap_apollon_init': .../arch/arm/mach-omap2/board-apollon.c:325: undefined reference to `omap2420_mux_init' arch/arm/mach-omap2/built-in.o: In function `omap_apollon_map_io': .../arch/arm/mach-omap2/board-apollon.c:353: undefined reference to `omap2_set_globals_242x' make: *** [.tmp_vmlinux1] Error 1 Fix this by making the boards depend on the Kconfig option for the specific SoC that they use. Also, while here, fix the mach-omap2/board-generic.c file to remove the dependency on OMAP2420. Charulatha Varadarajan <[email protected]> caught a typo - thanks Charu. Signed-off-by: Paul Walmsley <[email protected]> Cc: Tony Lindgren <[email protected]> Cc: Charulatha Varadarajan <[email protected]>
1 parent 6f91149 commit 6515e48

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

arch/arm/mach-omap2/Kconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,20 +100,20 @@ config MACH_OMAP2_TUSB6010
100100

101101
config MACH_OMAP_H4
102102
bool "OMAP 2420 H4 board"
103-
depends on ARCH_OMAP2
103+
depends on ARCH_OMAP2420
104104
default y
105105
select OMAP_PACKAGE_ZAF
106106
select OMAP_DEBUG_DEVICES
107107

108108
config MACH_OMAP_APOLLON
109109
bool "OMAP 2420 Apollon board"
110-
depends on ARCH_OMAP2
110+
depends on ARCH_OMAP2420
111111
default y
112112
select OMAP_PACKAGE_ZAC
113113

114114
config MACH_OMAP_2430SDP
115115
bool "OMAP 2430 SDP board"
116-
depends on ARCH_OMAP2
116+
depends on ARCH_OMAP2430
117117
default y
118118
select OMAP_PACKAGE_ZAC
119119

arch/arm/mach-omap2/board-generic.c

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,22 @@ static void __init omap_generic_init(void)
4848

4949
static void __init omap_generic_map_io(void)
5050
{
51-
omap2_set_globals_242x(); /* should be 242x, 243x, or 343x */
52-
omap242x_map_common_io();
51+
if (cpu_is_omap242x()) {
52+
omap2_set_globals_242x();
53+
omap242x_map_common_io();
54+
} else if (cpu_is_omap243x()) {
55+
omap2_set_globals_243x();
56+
omap243x_map_common_io();
57+
} else if (cpu_is_omap34xx()) {
58+
omap2_set_globals_3xxx();
59+
omap34xx_map_common_io();
60+
} else if (cpu_is_omap44xx()) {
61+
omap2_set_globals_443x();
62+
omap44xx_map_common_io();
63+
}
5364
}
5465

66+
/* XXX This machine entry name should be updated */
5567
MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx")
5668
/* Maintainer: Paul Mundt <[email protected]> */
5769
.phys_io = 0x48000000,

0 commit comments

Comments
 (0)