[U-Boot] [PATCH] mx6_common: Fix LOADADDR and SYS_TEXT_BASE for MX6SL and MX6SX

Markus Niebel
2015-05-28T11:25:40Z

Am 28.05.2015 um 12:21 schrieb Stefano Babic:
> Hi Fabio,
>
> On 28/05/2015 11:52, Stefano Babic wrote:
>> On 27/05/2015 04:22, Fabio Estevam wrote:
>>> From: Fabio Estevam <fabio.estevam@freescale.com>
>>>
>>> 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.
>>>
>>> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>>> ---
>>> include/configs/mx6_common.h | 7 ++++++-
>>> 1 file changed, 6 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/include/configs/mx6_common.h b/include/configs/mx6_common.h
>>> index 233c6d2..bd16ec2 100644
>>> --- a/include/configs/mx6_common.h
>>> +++ b/include/configs/mx6_common.h
>>> @@ -53,10 +53,15 @@
>>> #define CONFIG_REVISION_TAG
>>>
>>> /* Boot options */
>>> +#if (defined(CONFIG_MX6SX) || defined(CONFIG_MX6SL))
>>> +#define CONFIG_LOADADDR 0x82000000
>>> +#define CONFIG_SYS_TEXT_BASE 0x87800000
>>> +#else
>>> #define CONFIG_LOADADDR 0x12000000
>>> +#define CONFIG_SYS_TEXT_BASE 0x17800000
>>> +#endif
>>> #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
>>> #ifndef CONFIG_SYS_TEXT_BASE
>>> -#define CONFIG_SYS_TEXT_BASE 0x17800000
>>> #endif
>>> #ifndef CONFIG_BOOTDELAY
>>> #define CONFIG_BOOTDELAY 3
>>>
>>
>> Applied to u-boot-imx, thanks !
>>
>
> Sorry, it is not. This breaks (warnings) the tqma6 board. At least we
> have to undefine CONFIG_SYS_TEXT_BASE in tqma6.h because this board
> redefines it. I added Markus (b oard maintainer in CC), as he can better
> explain while this single board requires different CONFIG_SYS_TEXT_BASE.
> From the addresses I guess he will avoid relocation.
>

We do it to have the U-Boot at the end of RAM - some projects using the TQMa6
requires that we have most of RAM available - for instance during system updates.

Markus

> Best regards,
> Stefano Babic
>
>
>