Commit 6cb38c5f authored by Ryan Mallon's avatar Ryan Mallon Committed by Russell King
Browse files

[ARM] 5523/1: ep93xx phys offset selection



This patch adds a Kconfig option to select between ep93xx boards which
boot from the SDRAM bank at 0x00000000 (SDCE3/SyncBoot) and those which
boot from 0xc0000000 (SDCE0). This corrects a problem which causes
invalid images to be built for boards which boot from 0xc0000000.

Signed-off-by: default avatarRyan Mallon <ryan@bluewatersys.com>
Acked-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent a2bd40d2
Loading
Loading
Loading
Loading
+32 −2
Original line number Diff line number Diff line
@@ -9,18 +9,37 @@ config CRUNCH

comment "EP93xx Platforms"

choice
	prompt "EP93xx first SDRAM bank selection"
	default EP93XX_SDCE3_SYNC_PHYS_OFFSET

config EP93XX_SDCE3_SYNC_PHYS_OFFSET
	bool "0x00000000 - SDCE3/SyncBoot"
	help
	  Select this option if you want support for EP93xx boards with the
	  first SDRAM bank at 0x00000000

config EP93XX_SDCE0_PHYS_OFFSET
	bool "0xc0000000 - SDCEO"
	help
	  Select this option if you want support for EP93xx boards with the
	  first SDRAM bank at 0xc0000000

endchoice

config MACH_ADSSPHERE
	bool "Support ADS Sphere"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	help
	  Say 'Y' here if you want your kernel to support the ADS
	  Sphere board.

config MACH_EDB93XX
	bool
	default n

config MACH_EDB9301
	bool "Support Cirrus Logic EDB9301"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -28,6 +47,7 @@ config MACH_EDB9301

config MACH_EDB9302
	bool "Support Cirrus Logic EDB9302"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -35,6 +55,7 @@ config MACH_EDB9302

config MACH_EDB9302A
	bool "Support Cirrus Logic EDB9302A"
	depends on EP93XX_SDCE0_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -42,6 +63,7 @@ config MACH_EDB9302A

config MACH_EDB9307
	bool "Support Cirrus Logic EDB9307"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -49,6 +71,7 @@ config MACH_EDB9307

config MACH_EDB9307A
	bool "Support Cirrus Logic EDB9307A"
	depends on EP93XX_SDCE0_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -56,6 +79,7 @@ config MACH_EDB9307A

config MACH_EDB9312
	bool "Support Cirrus Logic EDB9312"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -63,6 +87,7 @@ config MACH_EDB9312

config MACH_EDB9315
	bool "Support Cirrus Logic EDB9315"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
@@ -70,12 +95,14 @@ config MACH_EDB9315

config MACH_EDB9315A
	bool "Support Cirrus Logic EDB9315A"
	depends on EP93XX_SDCE0_PHYS_OFFSET
	select MACH_EDB93XX
	help
	  Say 'Y' here if you want your kernel to support the Cirrus
	  Logic EDB9315A Evaluation Board.

config MACH_GESBC9312
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	bool "Support Glomation GESBC-9312-sx"
	help
	  Say 'Y' here if you want your kernel to support the Glomation
@@ -83,10 +110,10 @@ config MACH_GESBC9312

config MACH_MICRO9
	bool
	default n

config MACH_MICRO9H
	bool "Support Contec Hypercontrol Micro9-H"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_MICRO9
	help
	  Say 'Y' here if you want your kernel to support the
@@ -94,6 +121,7 @@ config MACH_MICRO9H

config MACH_MICRO9M
	bool "Support Contec Hypercontrol Micro9-M"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_MICRO9
	help
	  Say 'Y' here if you want your kernel to support the
@@ -101,6 +129,7 @@ config MACH_MICRO9M

config MACH_MICRO9L
	bool "Support Contec Hypercontrol Micro9-L"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	select MACH_MICRO9
	help
	  Say 'Y' here if you want your kernel to support the
@@ -108,6 +137,7 @@ config MACH_MICRO9L

config MACH_TS72XX
	bool "Support Technologic Systems TS-72xx SBC"
	depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
	help
	  Say 'Y' here if you want your kernel to support the
	  Technologic Systems TS-72xx board.
+5 −2
Original line number Diff line number Diff line
   zreladdr-y	:= 0x00008000
params_phys-y	:= 0x00000100
   zreladdr-$(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET)	:= 0x00008000
params_phys-$(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET)	:= 0x00000100

   zreladdr-$(CONFIG_EP93XX_SDCE0_PHYS_OFFSET)		:= 0xc0008000
params_phys-$(CONFIG_EP93XX_SDCE0_PHYS_OFFSET)		:= 0xc0000100
+6 −0
Original line number Diff line number Diff line
@@ -5,6 +5,12 @@
#ifndef __ASM_ARCH_MEMORY_H
#define __ASM_ARCH_MEMORY_H

#if defined(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET)
#define PHYS_OFFSET		UL(0x00000000)
#elif defined(CONFIG_EP93XX_SDCE0_PHYS_OFFSET)
#define PHYS_OFFSET		UL(0xc0000000)
#else
#error "Kconfig bug: No EP93xx PHYS_OFFSET set"
#endif

#endif