summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCyril Chemparathy <cyril@ti.com>2010-06-07 14:13:27 -0400
committerTom <Tom@bumblecow.com>2010-06-08 10:07:17 -0500
commit678e008c3a3a27fe2d30cf423679d2d11d0fa5c2 (patch)
tree3aa0322ca757111edb9323c9f8adc6ff314b6c40 /include
parentb5d289fc29842095d5cd0f82cceab1b0b2e824ba (diff)
downloadu-boot-imx-678e008c3a3a27fe2d30cf423679d2d11d0fa5c2.zip
u-boot-imx-678e008c3a3a27fe2d30cf423679d2d11d0fa5c2.tar.gz
u-boot-imx-678e008c3a3a27fe2d30cf423679d2d11d0fa5c2.tar.bz2
ARM1176: Coexist with other ARM1176 platforms
The current ARM1176 CPU specific code is too specific to the SMDK6400 architecture. The following changes were necessary prerequisites for the addition of other SoCs based on ARM1176. Existing board's (SMDK6400) configuration has been modified to keep behavior unchanged despite these changes. 1. Peripheral port remap configurability The earlier code had hardcoded remap values specific to s3c64xx in start.S. This change makes the peripheral port remap addresses and sizes configurable. 2. U-Boot code relocation support Most architectures allow u-boot code to run initially at a different address (possibly in NOR) and then get relocated to its final resting place in RAM. Added support for this capability in ARM1176 architecture. 3. Disable TCM if necessary If a ROM based bootloader happened to have initialized TCM, we disable it here to keep things sane. 4. Remove unnecessary SoC specific includes ARM1176 code does not really need this SoC specific include. The presence of this include prevents builds on other ARM1176 archs. 5. Modified virt-to-phys conversion during MMU disable The original MMU disable code masks out too many bits from the load address when it tries to figure out the physical address of the jump target label. Consequently, it ends up branching to the wrong address after disabling the MMU. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Diffstat (limited to 'include')
-rw-r--r--include/configs/smdk6400.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/configs/smdk6400.h b/include/configs/smdk6400.h
index f04feae..624fe04 100644
--- a/include/configs/smdk6400.h
+++ b/include/configs/smdk6400.h
@@ -40,6 +40,12 @@
#define CONFIG_S3C64XX 1 /* in a SAMSUNG S3C64XX Family */
#define CONFIG_SMDK6400 1 /* on a SAMSUNG SMDK6400 Board */
+#define CONFIG_SKIP_RELOCATE_UBOOT
+
+#define CONFIG_PERIPORT_REMAP
+#define CONFIG_PERIPORT_BASE 0x70000000
+#define CONFIG_PERIPORT_SIZE 0x13
+
#define CONFIG_SYS_SDRAM_BASE 0x50000000
/* input clock of PLL: SMDK6400 has 12MHz input clock */
@@ -61,8 +67,6 @@
#define CONFIG_DISPLAY_CPUINFO
#define CONFIG_DISPLAY_BOARDINFO
-#undef CONFIG_SKIP_RELOCATE_UBOOT
-
/*
* Size of malloc() pool
*/