Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5ae8d15f authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'multi-platform-for-3.7' of git://sources.calxeda.com/kernel/linux...

Merge tag 'multi-platform-for-3.7' of git://sources.calxeda.com/kernel/linux into next/multiplatform

Enable initial ARM multi-platform support for highbank, mvebu,
socfpga, picoxcell, and vexpress.

Multi-platform support is dependent on mach/gpio.h removal and
restructuring of DEBUG_LL and dtb build rules included in this branch.

This has been built for all defconfigs, and booted on highbank with
all 5 platforms enabled.

By Rob Herring (18) and Arnd Bergmann (1)
via Rob Herring
* tag 'multi-platform-for-3.7' of git://sources.calxeda.com/kernel/linux

:
  ARM: vexpress: convert to multi-platform
  ARM: initial multiplatform support
  ARM: mvebu: move armada-370-xp.h in mach dir
  ARM: vexpress: remove dependency on mach/* headers
  ARM: picoxcell: remove dependency on mach/* headers
  ARM: move all dtb targets out of Makefile.boot
  ARM: picoxcell: move debug macros to include/debug
  ARM: socfpga: move debug macros to include/debug
  ARM: mvebu: move debug macros to include/debug
  ARM: vexpress: move debug macros to include/debug
  ARM: highbank: move debug macros to include/debug
  ARM: move debug macros to common location
  ARM: make mach/gpio.h headers optional
  ARM: orion: move custom gpio functions to orion-gpio.h
  ARM: shmobile: move custom gpio functions to sh-gpio.h
  ARM: pxa: use gpio_to_irq for sharppm_sl
  net: pxaficp_ir: add irq resources
  usb: pxa27x_udc: remove IRQ_USB define
  staging: ste_rmi4: remove gpio.h include

Conflicts due to addition of bcm2835 and removal of pnx4008 in:
	arch/arm/Kconfig
	arch/arm/Makefile

Conflicts due to new dtb targets, moved to arch/arm/boot/dts/Makefile in:
	arch/arm/mach-imx/Makefile.boot
	arch/arm/mach-mxs/Makefile.boot
	arch/arm/mach-tegra/Makefile.boot

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents b612a857 61727630
Loading
Loading
Loading
Loading
+81 −84
Original line number Diff line number Diff line
@@ -202,6 +202,13 @@ config ARM_PATCH_PHYS_VIRT
	  this feature (eg, building a kernel for a single machine) and
	  you need to shrink the kernel to the minimal size.

config NEED_MACH_GPIO_H
	bool
	help
	  Select this when mach/gpio.h is required to provide special
	  definitions for this platform. The need for mach/gpio.h should
	  be avoided when possible.

config NEED_MACH_IO_H
	bool
	help
@@ -247,26 +254,17 @@ config MMU
#
choice
	prompt "ARM system type"
	default ARCH_VERSATILE
	default ARCH_MULTIPLATFORM

config ARCH_SOCFPGA
	bool "Altera SOCFPGA family"
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARM_AMBA
	select ARM_GIC
	select CACHE_L2X0
	select CLKDEV_LOOKUP
config ARCH_MULTIPLATFORM
	bool "Allow multiple platforms to be selected"
	select ARM_PATCH_PHYS_VIRT
	select AUTO_ZRELADDR
	select COMMON_CLK
	select CPU_V7
	select DW_APB_TIMER
	select DW_APB_TIMER_OF
	select GENERIC_CLOCKEVENTS
	select GPIO_PL061 if GPIOLIB
	select HAVE_ARM_SCU
	select MULTI_IRQ_HANDLER
	select SPARSE_IRQ
	select USE_OF
	help
	  This enables support for Altera SOCFPGA Cyclone V platform
	depends on MMU

config ARCH_INTEGRATOR
	bool "ARM Ltd. Integrator family"
@@ -318,30 +316,13 @@ config ARCH_VERSATILE
	help
	  This enables support for ARM Ltd Versatile board.

config ARCH_VEXPRESS
	bool "ARM Ltd. Versatile Express family"
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARM_AMBA
	select ARM_TIMER_SP804
	select CLKDEV_LOOKUP
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select HAVE_CLK
	select HAVE_PATA_PLATFORM
	select ICST
	select NO_IOPORT
	select PLAT_VERSATILE
	select PLAT_VERSATILE_CLCD
	select REGULATOR_FIXED_VOLTAGE if REGULATOR
	help
	  This enables support for the ARM Ltd Versatile Express boards.

config ARCH_AT91
	bool "Atmel AT91"
	select ARCH_REQUIRE_GPIOLIB
	select HAVE_CLK
	select CLKDEV_LOOKUP
	select IRQ_DOMAIN
	select NEED_MACH_GPIO_H
	select NEED_MACH_IO_H if PCCARD
	help
	  This enables support for systems based on Atmel
@@ -376,24 +357,6 @@ config ARCH_BCMRING
	help
	  Support for Broadcom's BCMRing platform.

config ARCH_HIGHBANK
	bool "Calxeda Highbank-based"
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARM_AMBA
	select ARM_GIC
	select ARM_TIMER_SP804
	select CACHE_L2X0
	select CLKDEV_LOOKUP
	select COMMON_CLK
	select CPU_V7
	select GENERIC_CLOCKEVENTS
	select HAVE_ARM_SCU
	select HAVE_SMP
	select SPARSE_IRQ
	select USE_OF
	help
	  Support for the Calxeda Highbank SoC based boards.

config ARCH_CLPS711X
	bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
	select CPU_ARM720T
@@ -534,6 +497,8 @@ config ARCH_IOP32X
	bool "IOP32x-based"
	depends on MMU
	select CPU_XSCALE
	select NEED_MACH_GPIO_H
	select NEED_MACH_IO_H
	select NEED_RET_TO_USER
	select PLAT_IOP
	select PCI
@@ -546,6 +511,8 @@ config ARCH_IOP33X
	bool "IOP33x-based"
	depends on MMU
	select CPU_XSCALE
	select NEED_MACH_GPIO_H
	select NEED_MACH_IO_H
	select NEED_RET_TO_USER
	select PLAT_IOP
	select PCI
@@ -567,18 +534,6 @@ config ARCH_IXP4XX
	help
	  Support for Intel's IXP4XX (XScale) family of processors.

config ARCH_MVEBU
	bool "Marvell SOCs with Device Tree support"
	select GENERIC_CLOCKEVENTS
	select MULTI_IRQ_HANDLER
	select SPARSE_IRQ
	select CLKSRC_MMIO
	select GENERIC_IRQ_CHIP
	select IRQ_DOMAIN
	select COMMON_CLK
	help
	  Support for the Marvell SoC Family with device tree support

config ARCH_DOVE
	bool "Marvell Dove"
	select CPU_V7
@@ -650,6 +605,7 @@ config ARCH_MMP
	select PLAT_PXA
	select SPARSE_IRQ
	select GENERIC_ALLOCATOR
	select NEED_MACH_GPIO_H
	help
	  Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line.

@@ -696,25 +652,6 @@ config ARCH_TEGRA
	  This enables support for NVIDIA Tegra based systems (Tegra APX,
	  Tegra 6xx and Tegra 2 series).

config ARCH_PICOXCELL
	bool "Picochip picoXcell"
	select ARCH_REQUIRE_GPIOLIB
	select ARM_PATCH_PHYS_VIRT
	select ARM_VIC
	select CPU_V6K
	select DW_APB_TIMER
	select DW_APB_TIMER_OF
	select GENERIC_CLOCKEVENTS
	select GENERIC_GPIO
	select HAVE_TCM
	select NO_IOPORT
	select SPARSE_IRQ
	select USE_OF
	help
	  This enables support for systems based on the Picochip picoXcell
	  family of Femtocell devices.  The picoxcell support requires device tree
	  for all boards.

config ARCH_PXA
	bool "PXA2xx/PXA3xx-based"
	depends on MMU
@@ -731,6 +668,7 @@ config ARCH_PXA
	select MULTI_IRQ_HANDLER
	select ARM_CPU_SUSPEND if PM
	select HAVE_IDE
	select NEED_MACH_GPIO_H
	help
	  Support for Intel/Marvell's PXA2xx/PXA3xx processor line.

@@ -793,6 +731,7 @@ config ARCH_SA1100
	select CLKDEV_LOOKUP
	select ARCH_REQUIRE_GPIOLIB
	select HAVE_IDE
	select NEED_MACH_GPIO_H
	select NEED_MACH_MEMORY_H
	select SPARSE_IRQ
	help
@@ -808,6 +747,7 @@ config ARCH_S3C24XX
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select NEED_MACH_GPIO_H
	select NEED_MACH_IO_H
	help
	  Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443
@@ -835,6 +775,7 @@ config ARCH_S3C64XX
	select SAMSUNG_GPIOLIB_4BIT
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select NEED_MACH_GPIO_H
	help
	  Samsung S3C64XX series based systems

@@ -849,6 +790,7 @@ config ARCH_S5P64X0
	select GENERIC_CLOCKEVENTS
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select NEED_MACH_GPIO_H
	help
	  Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440,
	  SMDK6450.
@@ -863,6 +805,7 @@ config ARCH_S5PC100
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select NEED_MACH_GPIO_H
	help
	  Samsung S5PC100 series based systems

@@ -880,6 +823,7 @@ config ARCH_S5PV210
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select NEED_MACH_GPIO_H
	select NEED_MACH_MEMORY_H
	help
	  Samsung S5PV210/S5PC110 series based systems
@@ -897,6 +841,7 @@ config ARCH_EXYNOS
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select NEED_MACH_GPIO_H
	select NEED_MACH_MEMORY_H
	help
	  Support for SAMSUNG's EXYNOS SoCs (EXYNOS4/5)
@@ -969,6 +914,7 @@ config ARCH_DAVINCI
	select GENERIC_ALLOCATOR
	select GENERIC_IRQ_CHIP
	select ARCH_HAS_HOLES_MEMORYMODEL
	select NEED_MACH_GPIO_H
	help
	  Support for TI's DaVinci platform.

@@ -981,6 +927,7 @@ config ARCH_OMAP
	select CLKSRC_MMIO
	select GENERIC_CLOCKEVENTS
	select ARCH_HAS_HOLES_MEMORYMODEL
	select NEED_MACH_GPIO_H
	help
	  Support for TI's OMAP platform (OMAP1/2/3/4).

@@ -1020,6 +967,50 @@ config ARCH_ZYNQ
	  Support for Xilinx Zynq ARM Cortex A9 Platform
endchoice

menu "Multiple platform selection"
	depends on ARCH_MULTIPLATFORM

comment "CPU Core family selection"

config ARCH_MULTI_V4
	bool "ARMv4 based platforms (FA526, StrongARM)"
	select ARCH_MULTI_V4_V5
	depends on !ARCH_MULTI_V6_V7

config ARCH_MULTI_V4T
	bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
	select ARCH_MULTI_V4_V5
	depends on !ARCH_MULTI_V6_V7

config ARCH_MULTI_V5
	bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
	select ARCH_MULTI_V4_V5
	depends on !ARCH_MULTI_V6_V7

config ARCH_MULTI_V4_V5
	bool

config ARCH_MULTI_V6
	bool "ARMv6 based platforms (ARM11, Scorpion, ...)"
	select CPU_V6
	select ARCH_MULTI_V6_V7

config ARCH_MULTI_V7
	bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)"
	select CPU_V7
	select ARCH_VEXPRESS
	default y
	select ARCH_MULTI_V6_V7

config ARCH_MULTI_V6_V7
	bool

config ARCH_MULTI_CPU_AUTO
	def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
	select ARCH_MULTI_V5

endmenu

#
# This is sorted alphabetically by mach-* pathname.  However, plat-*
# Kconfigs may be included either alphabetically (according to the
@@ -1047,6 +1038,8 @@ source "arch/arm/mach-gemini/Kconfig"

source "arch/arm/mach-h720x/Kconfig"

source "arch/arm/mach-highbank/Kconfig"

source "arch/arm/mach-integrator/Kconfig"

source "arch/arm/mach-iop32x/Kconfig"
@@ -1082,6 +1075,8 @@ source "arch/arm/mach-omap2/Kconfig"

source "arch/arm/mach-orion5x/Kconfig"

source "arch/arm/mach-picoxcell/Kconfig"

source "arch/arm/mach-pxa/Kconfig"
source "arch/arm/plat-pxa/Kconfig"

@@ -1094,6 +1089,8 @@ source "arch/arm/mach-sa1100/Kconfig"
source "arch/arm/plat-samsung/Kconfig"
source "arch/arm/plat-s3c24xx/Kconfig"

source "arch/arm/mach-socfpga/Kconfig"

source "arch/arm/plat-spear/Kconfig"

source "arch/arm/mach-s3c24xx/Kconfig"
@@ -2054,7 +2051,7 @@ endchoice

config XIP_KERNEL
	bool "Kernel Execute-In-Place from ROM"
	depends on !ZBOOT_ROM && !ARM_LPAE
	depends on !ZBOOT_ROM && !ARM_LPAE && !ARCH_MULTIPLATFORM
	help
	  Execute-In-Place allows the kernel to run from non-volatile storage
	  directly addressable by the CPU, such as NOR flash. This saves RAM
+33 −0
Original line number Diff line number Diff line
@@ -261,6 +261,20 @@ choice
		  Say Y here if you want the debug print routines to direct
		  their output to the serial port on MSM 8960 devices.

	config DEBUG_MVEBU_UART
		bool "Kernel low-level debugging messages via MVEBU UART"
		depends on ARCH_MVEBU
		help
		  Say Y here if you want kernel low-level debugging support
		  on MVEBU based platforms.

	config DEBUG_PICOXCELL_UART
		depends on ARCH_PICOXCELL
		bool "Use PicoXcell UART for low-level debug"
		help
		  Say Y here if you want kernel low-level debugging support
		  on PicoXcell based platforms.

	config DEBUG_REALVIEW_STD_PORT
		bool "RealView Default UART"
		depends on ARCH_REALVIEW
@@ -310,6 +324,13 @@ choice
		  The uncompressor code port configuration is now handled
		  by CONFIG_S3C_LOWLEVEL_UART_PORT.

	config DEBUG_SOCFPGA_UART
		depends on ARCH_SOCFPGA
		bool "Use SOCFPGA UART for low-level debug"
		help
		  Say Y here if you want kernel low-level debugging support
		  on SOCFPGA based platforms.

	config DEBUG_VEXPRESS_UART0_DETECT
		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
		depends on ARCH_VEXPRESS && CPU_CP15_MMU
@@ -338,6 +359,7 @@ choice

	config DEBUG_LL_UART_NONE
		bool "No low-level debugging UART"
		depends on !ARCH_MULTIPLATFORM
		help
		  Say Y here if your platform doesn't provide a UART option
		  below. This relies on your platform choosing the right UART
@@ -373,6 +395,17 @@ choice

endchoice

config DEBUG_LL_INCLUDE
	string
	default "debug/icedcc.S" if DEBUG_ICEDCC
	default "debug/highbank.S" if DEBUG_HIGHBANK_UART
	default "debug/mvebu.S" if DEBUG_MVEBU_UART
	default "debug/picoxcell.S" if DEBUG_PICOXCELL_UART
	default "debug/socfpga.S" if DEBUG_SOCFPGA_UART
	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT || \
		DEBUG_VEXPRESS_UART0_CA9 || DEBUG_VEXPRESS_UART0_RS1
	default "mach/debug-macro.S"

config EARLY_PRINTK
	bool "Early printk"
	depends on DEBUG_LL
+75 −75
Original line number Diff line number Diff line
@@ -135,84 +135,79 @@ textofs-$(CONFIG_ARCH_MSM8960) := 0x00208000

# Machine directory name.  This list is sorted alphanumerically
# by CONFIG_* macro name.
machine-$(CONFIG_ARCH_AT91)		:= at91
machine-$(CONFIG_ARCH_BCM2835)		:= bcm2835
machine-$(CONFIG_ARCH_BCMRING)		:= bcmring
machine-$(CONFIG_ARCH_CLPS711X)		:= clps711x
machine-$(CONFIG_ARCH_CNS3XXX)		:= cns3xxx
machine-$(CONFIG_ARCH_DAVINCI)		:= davinci
machine-$(CONFIG_ARCH_DOVE)		:= dove
machine-$(CONFIG_ARCH_EBSA110)		:= ebsa110
machine-$(CONFIG_ARCH_EP93XX)		:= ep93xx
machine-$(CONFIG_ARCH_GEMINI)		:= gemini
machine-$(CONFIG_ARCH_H720X)		:= h720x
machine-$(CONFIG_ARCH_HIGHBANK)		:= highbank
machine-$(CONFIG_ARCH_INTEGRATOR)	:= integrator
machine-$(CONFIG_ARCH_IOP13XX)		:= iop13xx
machine-$(CONFIG_ARCH_IOP32X)		:= iop32x
machine-$(CONFIG_ARCH_IOP33X)		:= iop33x
machine-$(CONFIG_ARCH_IXP4XX)		:= ixp4xx
machine-$(CONFIG_ARCH_KIRKWOOD)		:= kirkwood
machine-$(CONFIG_ARCH_KS8695)		:= ks8695
machine-$(CONFIG_ARCH_LPC32XX)		:= lpc32xx
machine-$(CONFIG_ARCH_MMP)		:= mmp
machine-$(CONFIG_ARCH_MSM)		:= msm
machine-$(CONFIG_ARCH_MV78XX0)		:= mv78xx0
machine-$(CONFIG_ARCH_IMX_V4_V5)	:= imx
machine-$(CONFIG_ARCH_IMX_V6_V7)	:= imx
machine-$(CONFIG_ARCH_MXS)		:= mxs
machine-$(CONFIG_ARCH_MVEBU)		:= mvebu
machine-$(CONFIG_ARCH_NETX)		:= netx
machine-$(CONFIG_ARCH_NOMADIK)		:= nomadik
machine-$(CONFIG_ARCH_OMAP1)		:= omap1
machine-$(CONFIG_ARCH_OMAP2PLUS)	:= omap2
machine-$(CONFIG_ARCH_ORION5X)		:= orion5x
machine-$(CONFIG_ARCH_PICOXCELL)	:= picoxcell
machine-$(CONFIG_ARCH_PRIMA2)		:= prima2
machine-$(CONFIG_ARCH_PXA)		:= pxa
machine-$(CONFIG_ARCH_REALVIEW)		:= realview
machine-$(CONFIG_ARCH_RPC)		:= rpc
machine-$(CONFIG_ARCH_S3C24XX)		:= s3c24xx s3c2412 s3c2440
machine-$(CONFIG_ARCH_S3C64XX)		:= s3c64xx
machine-$(CONFIG_ARCH_S5P64X0)		:= s5p64x0
machine-$(CONFIG_ARCH_S5PC100)		:= s5pc100
machine-$(CONFIG_ARCH_S5PV210)		:= s5pv210
machine-$(CONFIG_ARCH_EXYNOS4)		:= exynos
machine-$(CONFIG_ARCH_EXYNOS5)		:= exynos
machine-$(CONFIG_ARCH_SA1100)		:= sa1100
machine-$(CONFIG_ARCH_SHARK)		:= shark
machine-$(CONFIG_ARCH_SHMOBILE) 	:= shmobile
machine-$(CONFIG_ARCH_TEGRA)		:= tegra
machine-$(CONFIG_ARCH_U300)		:= u300
machine-$(CONFIG_ARCH_U8500)		:= ux500
machine-$(CONFIG_ARCH_VERSATILE)	:= versatile
machine-$(CONFIG_ARCH_VEXPRESS)		:= vexpress
machine-$(CONFIG_ARCH_VT8500)		:= vt8500
machine-$(CONFIG_ARCH_W90X900)		:= w90x900
machine-$(CONFIG_FOOTBRIDGE)		:= footbridge
machine-$(CONFIG_ARCH_SOCFPGA)		:= socfpga
machine-$(CONFIG_MACH_SPEAR1310)	:= spear13xx
machine-$(CONFIG_MACH_SPEAR1340)	:= spear13xx
machine-$(CONFIG_MACH_SPEAR300)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR310)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR320)		:= spear3xx
machine-$(CONFIG_MACH_SPEAR600)		:= spear6xx
machine-$(CONFIG_ARCH_ZYNQ)		:= zynq
machine-$(CONFIG_ARCH_AT91)		+= at91
machine-$(CONFIG_ARCH_BCM2835)		+= bcm2835
machine-$(CONFIG_ARCH_BCMRING)		+= bcmring
machine-$(CONFIG_ARCH_CLPS711X)		+= clps711x
machine-$(CONFIG_ARCH_CNS3XXX)		+= cns3xxx
machine-$(CONFIG_ARCH_DAVINCI)		+= davinci
machine-$(CONFIG_ARCH_DOVE)		+= dove
machine-$(CONFIG_ARCH_EBSA110)		+= ebsa110
machine-$(CONFIG_ARCH_EP93XX)		+= ep93xx
machine-$(CONFIG_ARCH_GEMINI)		+= gemini
machine-$(CONFIG_ARCH_H720X)		+= h720x
machine-$(CONFIG_ARCH_HIGHBANK)		+= highbank
machine-$(CONFIG_ARCH_INTEGRATOR)	+= integrator
machine-$(CONFIG_ARCH_IOP13XX)		+= iop13xx
machine-$(CONFIG_ARCH_IOP32X)		+= iop32x
machine-$(CONFIG_ARCH_IOP33X)		+= iop33x
machine-$(CONFIG_ARCH_IXP4XX)		+= ixp4xx
machine-$(CONFIG_ARCH_KIRKWOOD)		+= kirkwood
machine-$(CONFIG_ARCH_KS8695)		+= ks8695
machine-$(CONFIG_ARCH_LPC32XX)		+= lpc32xx
machine-$(CONFIG_ARCH_MMP)		+= mmp
machine-$(CONFIG_ARCH_MSM)		+= msm
machine-$(CONFIG_ARCH_MV78XX0)		+= mv78xx0
machine-$(CONFIG_ARCH_MXC)		+= imx
machine-$(CONFIG_ARCH_MXS)		+= mxs
machine-$(CONFIG_ARCH_MVEBU)		+= mvebu
machine-$(CONFIG_ARCH_NETX)		+= netx
machine-$(CONFIG_ARCH_NOMADIK)		+= nomadik
machine-$(CONFIG_ARCH_OMAP1)		+= omap1
machine-$(CONFIG_ARCH_OMAP2PLUS)	+= omap2
machine-$(CONFIG_ARCH_ORION5X)		+= orion5x
machine-$(CONFIG_ARCH_PICOXCELL)	+= picoxcell
machine-$(CONFIG_ARCH_PRIMA2)		+= prima2
machine-$(CONFIG_ARCH_PXA)		+= pxa
machine-$(CONFIG_ARCH_REALVIEW)		+= realview
machine-$(CONFIG_ARCH_RPC)		+= rpc
machine-$(CONFIG_ARCH_S3C24XX)		+= s3c24xx s3c2412 s3c2440
machine-$(CONFIG_ARCH_S3C64XX)		+= s3c64xx
machine-$(CONFIG_ARCH_S5P64X0)		+= s5p64x0
machine-$(CONFIG_ARCH_S5PC100)		+= s5pc100
machine-$(CONFIG_ARCH_S5PV210)		+= s5pv210
machine-$(CONFIG_ARCH_EXYNOS)		+= exynos
machine-$(CONFIG_ARCH_SA1100)		+= sa1100
machine-$(CONFIG_ARCH_SHARK)		+= shark
machine-$(CONFIG_ARCH_SHMOBILE) 	+= shmobile
machine-$(CONFIG_ARCH_TEGRA)		+= tegra
machine-$(CONFIG_ARCH_U300)		+= u300
machine-$(CONFIG_ARCH_U8500)		+= ux500
machine-$(CONFIG_ARCH_VERSATILE)	+= versatile
machine-$(CONFIG_ARCH_VEXPRESS)		+= vexpress
machine-$(CONFIG_ARCH_VT8500)		+= vt8500
machine-$(CONFIG_ARCH_W90X900)		+= w90x900
machine-$(CONFIG_FOOTBRIDGE)		+= footbridge
machine-$(CONFIG_ARCH_SOCFPGA)		+= socfpga
machine-$(CONFIG_ARCH_SPEAR13XX)	+= spear13xx
machine-$(CONFIG_ARCH_SPEAR3XX)		+= spear3xx
machine-$(CONFIG_MACH_SPEAR600)		+= spear6xx
machine-$(CONFIG_ARCH_ZYNQ)		+= zynq

# Platform directory name.  This list is sorted alphanumerically
# by CONFIG_* macro name.
plat-$(CONFIG_ARCH_MXC)		:= mxc
plat-$(CONFIG_ARCH_OMAP)	:= omap
plat-$(CONFIG_ARCH_S3C64XX)	:= samsung
plat-$(CONFIG_ARCH_ZYNQ)	:= versatile
plat-$(CONFIG_PLAT_IOP)		:= iop
plat-$(CONFIG_PLAT_NOMADIK)	:= nomadik
plat-$(CONFIG_PLAT_ORION)	:= orion
plat-$(CONFIG_PLAT_PXA)		:= pxa
plat-$(CONFIG_PLAT_S3C24XX)	:= s3c24xx samsung
plat-$(CONFIG_PLAT_S5P)		:= samsung
plat-$(CONFIG_PLAT_SPEAR)	:= spear
plat-$(CONFIG_PLAT_VERSATILE)	:= versatile
plat-$(CONFIG_ARCH_MXC)		+= mxc
plat-$(CONFIG_ARCH_OMAP)	+= omap
plat-$(CONFIG_ARCH_S3C64XX)	+= samsung
plat-$(CONFIG_ARCH_ZYNQ)	+= versatile
plat-$(CONFIG_PLAT_IOP)		+= iop
plat-$(CONFIG_PLAT_NOMADIK)	+= nomadik
plat-$(CONFIG_PLAT_ORION)	+= orion
plat-$(CONFIG_PLAT_PXA)		+= pxa
plat-$(CONFIG_PLAT_S3C24XX)	+= s3c24xx samsung
plat-$(CONFIG_PLAT_S5P)		+= samsung
plat-$(CONFIG_PLAT_SPEAR)	+= spear
plat-$(CONFIG_PLAT_VERSATILE)	+= versatile

ifeq ($(CONFIG_ARCH_EBSA110),y)
# This is what happens if you forget the IOCS16 line.
@@ -230,15 +225,20 @@ MACHINE := arch/arm/mach-$(word 1,$(machine-y))/
else
MACHINE  :=
endif
ifeq ($(CONFIG_ARCH_MULTIPLATFORM),y)
MACHINE  :=
endif

machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
platdirs := $(patsubst %,arch/arm/plat-%/,$(plat-y))

ifneq ($(CONFIG_ARCH_MULTIPLATFORM),y)
ifeq ($(KBUILD_SRC),)
KBUILD_CPPFLAGS += $(patsubst %,-I%include,$(machdirs) $(platdirs))
else
KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs) $(platdirs))
endif
endif

export	TEXT_OFFSET GZFLAGS MMUEXT

+2 −0
Original line number Diff line number Diff line
@@ -15,6 +15,8 @@ ifneq ($(MACHINE),)
include $(srctree)/$(MACHINE)/Makefile.boot
endif

include $(srctree)/arch/arm/boot/dts/Makefile

# Note: the following conditions must always be true:
#   ZRELADDR == virt_to_phys(PAGE_OFFSET + TEXT_OFFSET)
#   PARAMS_PHYS must be within 4MB of ZRELADDR
+6 −0
Original line number Diff line number Diff line
@@ -25,7 +25,13 @@ unsigned int __machine_arch_type;
static void putstr(const char *ptr);
extern void error(char *x);

#ifdef CONFIG_ARCH_MULTIPLATFORM
static inline void putc(int c) {}
static inline void flush(void) {}
static inline void arch_decomp_setup(void) {}
#else
#include <mach/uncompress.h>
#endif

#ifdef CONFIG_DEBUG_ICEDCC

Loading