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

[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
...@@ -9,18 +9,37 @@ config CRUNCH ...@@ -9,18 +9,37 @@ config CRUNCH
comment "EP93xx Platforms" 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 config MACH_ADSSPHERE
bool "Support ADS Sphere" bool "Support ADS Sphere"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
help help
Say 'Y' here if you want your kernel to support the ADS Say 'Y' here if you want your kernel to support the ADS
Sphere board. Sphere board.
config MACH_EDB93XX config MACH_EDB93XX
bool bool
default n
config MACH_EDB9301 config MACH_EDB9301
bool "Support Cirrus Logic EDB9301" bool "Support Cirrus Logic EDB9301"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -28,6 +47,7 @@ config MACH_EDB9301 ...@@ -28,6 +47,7 @@ config MACH_EDB9301
config MACH_EDB9302 config MACH_EDB9302
bool "Support Cirrus Logic EDB9302" bool "Support Cirrus Logic EDB9302"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -35,6 +55,7 @@ config MACH_EDB9302 ...@@ -35,6 +55,7 @@ config MACH_EDB9302
config MACH_EDB9302A config MACH_EDB9302A
bool "Support Cirrus Logic EDB9302A" bool "Support Cirrus Logic EDB9302A"
depends on EP93XX_SDCE0_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -42,6 +63,7 @@ config MACH_EDB9302A ...@@ -42,6 +63,7 @@ config MACH_EDB9302A
config MACH_EDB9307 config MACH_EDB9307
bool "Support Cirrus Logic EDB9307" bool "Support Cirrus Logic EDB9307"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -49,6 +71,7 @@ config MACH_EDB9307 ...@@ -49,6 +71,7 @@ config MACH_EDB9307
config MACH_EDB9307A config MACH_EDB9307A
bool "Support Cirrus Logic EDB9307A" bool "Support Cirrus Logic EDB9307A"
depends on EP93XX_SDCE0_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -56,6 +79,7 @@ config MACH_EDB9307A ...@@ -56,6 +79,7 @@ config MACH_EDB9307A
config MACH_EDB9312 config MACH_EDB9312
bool "Support Cirrus Logic EDB9312" bool "Support Cirrus Logic EDB9312"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -63,6 +87,7 @@ config MACH_EDB9312 ...@@ -63,6 +87,7 @@ config MACH_EDB9312
config MACH_EDB9315 config MACH_EDB9315
bool "Support Cirrus Logic EDB9315" bool "Support Cirrus Logic EDB9315"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
...@@ -70,12 +95,14 @@ config MACH_EDB9315 ...@@ -70,12 +95,14 @@ config MACH_EDB9315
config MACH_EDB9315A config MACH_EDB9315A
bool "Support Cirrus Logic EDB9315A" bool "Support Cirrus Logic EDB9315A"
depends on EP93XX_SDCE0_PHYS_OFFSET
select MACH_EDB93XX select MACH_EDB93XX
help help
Say 'Y' here if you want your kernel to support the Cirrus Say 'Y' here if you want your kernel to support the Cirrus
Logic EDB9315A Evaluation Board. Logic EDB9315A Evaluation Board.
config MACH_GESBC9312 config MACH_GESBC9312
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
bool "Support Glomation GESBC-9312-sx" bool "Support Glomation GESBC-9312-sx"
help help
Say 'Y' here if you want your kernel to support the Glomation Say 'Y' here if you want your kernel to support the Glomation
...@@ -83,10 +110,10 @@ config MACH_GESBC9312 ...@@ -83,10 +110,10 @@ config MACH_GESBC9312
config MACH_MICRO9 config MACH_MICRO9
bool bool
default n
config MACH_MICRO9H config MACH_MICRO9H
bool "Support Contec Hypercontrol Micro9-H" bool "Support Contec Hypercontrol Micro9-H"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_MICRO9 select MACH_MICRO9
help help
Say 'Y' here if you want your kernel to support the Say 'Y' here if you want your kernel to support the
...@@ -94,6 +121,7 @@ config MACH_MICRO9H ...@@ -94,6 +121,7 @@ config MACH_MICRO9H
config MACH_MICRO9M config MACH_MICRO9M
bool "Support Contec Hypercontrol Micro9-M" bool "Support Contec Hypercontrol Micro9-M"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_MICRO9 select MACH_MICRO9
help help
Say 'Y' here if you want your kernel to support the Say 'Y' here if you want your kernel to support the
...@@ -101,6 +129,7 @@ config MACH_MICRO9M ...@@ -101,6 +129,7 @@ config MACH_MICRO9M
config MACH_MICRO9L config MACH_MICRO9L
bool "Support Contec Hypercontrol Micro9-L" bool "Support Contec Hypercontrol Micro9-L"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
select MACH_MICRO9 select MACH_MICRO9
help help
Say 'Y' here if you want your kernel to support the Say 'Y' here if you want your kernel to support the
...@@ -108,6 +137,7 @@ config MACH_MICRO9L ...@@ -108,6 +137,7 @@ config MACH_MICRO9L
config MACH_TS72XX config MACH_TS72XX
bool "Support Technologic Systems TS-72xx SBC" bool "Support Technologic Systems TS-72xx SBC"
depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET
help help
Say 'Y' here if you want your kernel to support the Say 'Y' here if you want your kernel to support the
Technologic Systems TS-72xx board. Technologic Systems TS-72xx board.
......
zreladdr-y := 0x00008000 zreladdr-$(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET) := 0x00008000
params_phys-y := 0x00000100 params_phys-$(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET) := 0x00000100
zreladdr-$(CONFIG_EP93XX_SDCE0_PHYS_OFFSET) := 0xc0008000
params_phys-$(CONFIG_EP93XX_SDCE0_PHYS_OFFSET) := 0xc0000100
...@@ -5,6 +5,12 @@ ...@@ -5,6 +5,12 @@
#ifndef __ASM_ARCH_MEMORY_H #ifndef __ASM_ARCH_MEMORY_H
#define __ASM_ARCH_MEMORY_H #define __ASM_ARCH_MEMORY_H
#if defined(CONFIG_EP93XX_SDCE3_SYNC_PHYS_OFFSET)
#define PHYS_OFFSET UL(0x00000000) #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 #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment