Commit 615dce5b authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

ARM: omap1: fix build with no SoC selected



In a multiplatform randconfig kernel, one can have
CONFIG_ARCH_OMAP1 enabled, but none of the specific SoCs.
This leads to some build issues as the code is not
meant to deal with this configuration at the moment:

arch/arm/mach-omap1/io.c:86:20: error: unused function 'omap1_map_common_io' [-Werror,-Wunused-function]
arch/arm/mach-omap1/pm.h:113:2: error: "Power management for this processor not implemented yet" [-Werror,-W#warnings]

Use the same trick as on OMAP2 and guard the actual compilation
of platform code with another Makefile ifdef check based
on an option that depends on having at least one SoC enabled.

The io.c file still needs to get compiled to allow building
device drivers with a dependency on CONFIG_ARCH_OMAP1.

Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent 7e0a9e62
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -485,7 +485,6 @@ config ARCH_S3C24XX

config ARCH_OMAP1
	bool "TI OMAP1"
	select ARCH_OMAP
	select CLKSRC_MMIO
	select FORCE_PCI if PCCARD
	select GENERIC_IRQ_CHIP
+4 −0
Original line number Diff line number Diff line
@@ -28,6 +28,10 @@ config ARCH_OMAP16XX
	select CPU_ARM926T
	select OMAP_DM_TIMER

config ARCH_OMAP1_ANY
	select ARCH_OMAP
	def_bool ARCH_OMAP730 || ARCH_OMAP850 || ARCH_OMAP15XX || ARCH_OMAP16XX

config ARCH_OMAP
	bool

+4 −0
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@
# Makefile for the linux kernel.
#

ifdef CONFIG_ARCH_OMAP1_ANY

# Common support
obj-y := io.o id.o sram-init.o sram.o time.o irq.o mux.o flash.o \
	 serial.o devices.o dma.o omap-dma.o fb.o
@@ -57,3 +59,5 @@ obj-$(CONFIG_ARCH_OMAP730) += gpio7xx.o
obj-$(CONFIG_ARCH_OMAP850)		+= gpio7xx.o
obj-$(CONFIG_ARCH_OMAP15XX)		+= gpio15xx.o
obj-$(CONFIG_ARCH_OMAP16XX)		+= gpio16xx.o

endif
+2 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
#ifndef __ASSEMBLER__
#include <linux/types.h>

#if defined(CONFIG_ARCH_OMAP) && defined(CONFIG_ARCH_OMAP1)
#ifdef CONFIG_ARCH_OMAP1_ANY
/*
 * NOTE: Please use ioremap + __raw_read/write where possible instead of these
 */
@@ -15,7 +15,7 @@ extern u32 omap_readl(u32 pa);
extern void omap_writeb(u8 v, u32 pa);
extern void omap_writew(u16 v, u32 pa);
extern void omap_writel(u32 v, u32 pa);
#elif defined(CONFIG_COMPILE_TEST)
#else
static inline u8 omap_readb(u32 pa)  { return 0; }
static inline u16 omap_readw(u32 pa) { return 0; }
static inline u32 omap_readl(u32 pa) { return 0; }