diff options
author | Fabio Estevam <fabio.estevam at freescale.com> | 2015-05-28 12:33:34 -0300 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2015-06-08 08:35:59 +0200 |
commit | cd6ddc48134297497d226209a4e6ea72b71c87c5 (patch) | |
tree | 2776e01ab81cd5a89b23c683380f5837f65975c4 | |
parent | 9a8804a85e37d774419ee6452a90cc6e57d925f3 (diff) | |
download | u-boot-imx-cd6ddc48134297497d226209a4e6ea72b71c87c5.zip u-boot-imx-cd6ddc48134297497d226209a4e6ea72b71c87c5.tar.gz u-boot-imx-cd6ddc48134297497d226209a4e6ea72b71c87c5.tar.bz2 |
mx6_common: Fix LOADADDR and SYS_TEXT_BASE for MX6SL and MX6SX
Commit 8183058188cd2d942 ("imx6: centralise common boot options in
mx6_common.h") broke boot on mx6sl and mx6sx by assuming that all mx6
SoCs use the same LOADADDR/SYS_TEXT_BASE range, which is not correct.
DDR on mx6sx/mx6sl starts at 0x80000000.
Adjust LOADADDR/SYS_TEXT_BASE to the proper values for mx6sx/mx6sl,
so that these SoCs can boot again.
Also, TQMA6 requires a custom CONFIG_SYS_TEXT_BASE value, so move
its setting prior to the inclusion of mx6_common.h.
Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
-rw-r--r-- | include/configs/mx6_common.h | 10 | ||||
-rw-r--r-- | include/configs/tqma6.h | 14 |
2 files changed, 16 insertions, 8 deletions
diff --git a/include/configs/mx6_common.h b/include/configs/mx6_common.h index 233c6d2..50370e1 100644 --- a/include/configs/mx6_common.h +++ b/include/configs/mx6_common.h @@ -53,11 +53,19 @@ #define CONFIG_REVISION_TAG /* Boot options */ +#if (defined(CONFIG_MX6SX) || defined(CONFIG_MX6SL)) +#define CONFIG_LOADADDR 0x82000000 +#ifndef CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_TEXT_BASE 0x87800000 +#endif +#else #define CONFIG_LOADADDR 0x12000000 -#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR #ifndef CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_TEXT_BASE 0x17800000 #endif +#endif +#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR + #ifndef CONFIG_BOOTDELAY #define CONFIG_BOOTDELAY 3 #endif diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h index a091184..e46c580 100644 --- a/include/configs/tqma6.h +++ b/include/configs/tqma6.h @@ -22,6 +22,13 @@ /* #endif */ +/* place code in last 4 MiB of RAM */ +#if defined(CONFIG_MX6DL) || defined(CONFIG_MX6S) +#define CONFIG_SYS_TEXT_BASE 0x2fc00000 +#elif defined(CONFIG_MX6Q) || defined(CONFIG_MX6D) +#define CONFIG_SYS_TEXT_BASE 0x4fc00000 +#endif + #include "mx6_common.h" #if defined(CONFIG_MX6DL) || defined(CONFIG_MX6S) @@ -118,13 +125,6 @@ #define CONFIG_CMD_ITEST #define CONFIG_CMD_SETEXPR -/* place code in last 4 MiB of RAM */ -#if defined(CONFIG_MX6DL) || defined(CONFIG_MX6S) -#define CONFIG_SYS_TEXT_BASE 0x2fc00000 -#elif defined(CONFIG_MX6Q) || defined(CONFIG_MX6D) -#define CONFIG_SYS_TEXT_BASE 0x4fc00000 -#endif - #define CONFIG_ENV_SIZE (SZ_8K) /* Size of malloc() pool */ #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * SZ_1M) |