diff mbox

[U-Boot,2/3] am33xx: Correct NON_SECURE_SRAM_START/END

Message ID 1370024339-28355-2-git-send-email-trini@ti.com
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Tom Rini May 31, 2013, 6:18 p.m. UTC
Prior to Sricharan's cleanup of the boot parameter saving code, we
did not make use of NON_SECURE_SRAM_START on am33xx, so it wasn't a
problem that the address was pointing to the middle of our running SPL.
Correct to point to the base location of the download image area.
Increase CONFIG_SPL_TEXT_BASE to account for this scratch area being
used.  As part of correcting these tests, make use of the fact that
we've always been placing our stack outside of the download image area
(which is fine, once the downloaded image is run, ROM is gone) so
correct the max size test to be the ROM defined top of the download area
to where we link/load at.

Signed-off-by: Tom Rini <trini@ti.com>
---
 arch/arm/include/asm/arch-am33xx/omap.h |    4 ++--
 include/configs/am335x_evm.h            |   10 ++++++++--
 include/configs/igep0033.h              |   10 ++++++++--
 include/configs/pcm051.h                |   10 ++++++++--
 4 files changed, 26 insertions(+), 8 deletions(-)

Comments

Peter Korsgaard May 31, 2013, 8:56 p.m. UTC | #1
>>>>> "Tom" == Tom Rini <trini@ti.com> writes:

 Tom> Prior to Sricharan's cleanup of the boot parameter saving code, we
 Tom> did not make use of NON_SECURE_SRAM_START on am33xx, so it wasn't a
 Tom> problem that the address was pointing to the middle of our running SPL.
 Tom> Correct to point to the base location of the download image area.
 Tom> Increase CONFIG_SPL_TEXT_BASE to account for this scratch area being
 Tom> used.  As part of correcting these tests, make use of the fact that
 Tom> we've always been placing our stack outside of the download image area
 Tom> (which is fine, once the downloaded image is run, ROM is gone) so
 Tom> correct the max size test to be the ROM defined top of the download area
 Tom> to where we link/load at.

 Tom> Signed-off-by: Tom Rini <trini@ti.com>
 Tom> ---
 Tom>  arch/arm/include/asm/arch-am33xx/omap.h |    4 ++--
 Tom>  include/configs/am335x_evm.h            |   10 ++++++++--
 Tom>  include/configs/igep0033.h              |   10 ++++++++--
 Tom>  include/configs/pcm051.h                |   10 ++++++++--
 Tom>  4 files changed, 26 insertions(+), 8 deletions(-)

 Tom> diff --git a/arch/arm/include/asm/arch-am33xx/omap.h b/arch/arm/include/asm/arch-am33xx/omap.h
 Tom> index 7e3bb9c..db15159 100644
 Tom> --- a/arch/arm/include/asm/arch-am33xx/omap.h
 Tom> +++ b/arch/arm/include/asm/arch-am33xx/omap.h
 Tom> @@ -29,8 +29,8 @@
 Tom>   * at 0x40304000(EMU base) so that our code works for both EMU and GP
 Tom>   */
 Tom>  #ifdef CONFIG_AM33XX
 Tom> -#define NON_SECURE_SRAM_START	0x40304000
 Tom> -#define NON_SECURE_SRAM_END	0x4030E000
 Tom> +#define NON_SECURE_SRAM_START	0x402F0400
 Tom> +#define NON_SECURE_SRAM_END	0x40310000
 Tom>  #elif defined(CONFIG_TI814X)
 Tom>  #define NON_SECURE_SRAM_START	0x40300000
 Tom>  #define NON_SECURE_SRAM_END	0x40320000
 Tom> diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
 Tom> index f019134..a4777c7 100644
 Tom> --- a/include/configs/am335x_evm.h
 Tom> +++ b/include/configs/am335x_evm.h
 Tom> @@ -305,8 +305,14 @@
 Tom>  /* Defines for SPL */
 Tom>  #define CONFIG_SPL
 Tom>  #define CONFIG_SPL_FRAMEWORK
 Tom> -#define CONFIG_SPL_TEXT_BASE		0x402F0400
 Tom> -#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
 Tom> +/*
 Tom> + * Place the image at the start of the ROM defined image space and leave
 Tom> + * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
 Tom> + * We limit our size to the ROM-defined dowloaded image area, and use the

s/dowloaded/downloaded/


 Tom> + * rest of the space for stack.
 Tom> + */
 Tom> +#define CONFIG_SPL_TEXT_BASE		0x402F0500
 Tom> +#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 Tom>  #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 
 Tom>  #define CONFIG_SPL_BSS_START_ADDR	0x80000000
 Tom> diff --git a/include/configs/igep0033.h b/include/configs/igep0033.h
 Tom> index 1912d7d..dd26d9c 100644
 Tom> --- a/include/configs/igep0033.h
 Tom> +++ b/include/configs/igep0033.h
 Tom> @@ -214,8 +214,14 @@
 Tom>  /* Defines for SPL */
 Tom>  #define CONFIG_SPL
 Tom>  #define CONFIG_SPL_FRAMEWORK
 Tom> -#define CONFIG_SPL_TEXT_BASE		0x402F0400
 Tom> -#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
 Tom> +/*
 Tom> + * Place the image at the start of the ROM defined image space and leave
 Tom> + * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
 Tom> + * We limit our size to the ROM-defined dowloaded image area, and use the

s/dowloaded/downloaded/


 Tom> + * rest of the space for stack.
 Tom> + */
 Tom> +#define CONFIG_SPL_TEXT_BASE		0x402F0500
 Tom> +#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 Tom>  #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 
 Tom>  #define CONFIG_SPL_BSS_START_ADDR	0x80000000
 Tom> diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h
 Tom> index 478f805..a7d01f1 100644
 Tom> --- a/include/configs/pcm051.h
 Tom> +++ b/include/configs/pcm051.h
 Tom> @@ -204,8 +204,14 @@
 Tom>  /* Defines for SPL */
 Tom>  #define CONFIG_SPL
 Tom>  #define CONFIG_SPL_FRAMEWORK
 Tom> -#define CONFIG_SPL_TEXT_BASE		0x402F0400
 Tom> -#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
 Tom> +/*
 Tom> + * Place the image at the start of the ROM defined image space and leave
 Tom> + * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
 Tom> + * We limit our size to the ROM-defined dowloaded image area, and use the

s/dowloaded/downloaded/

Otherwise it looks good.

Reviewed-by: Peter Korsgaard <jacmet@sunsite.dk>
Tom Rini June 1, 2013, 1:23 p.m. UTC | #2
On Fri, May 31, 2013 at 10:56:52PM +0200, Peter Korsgaard wrote:
> >>>>> "Tom" == Tom Rini <trini@ti.com> writes:
> 
>  Tom> Prior to Sricharan's cleanup of the boot parameter saving code, we
>  Tom> did not make use of NON_SECURE_SRAM_START on am33xx, so it wasn't a
>  Tom> problem that the address was pointing to the middle of our running SPL.
>  Tom> Correct to point to the base location of the download image area.
>  Tom> Increase CONFIG_SPL_TEXT_BASE to account for this scratch area being
>  Tom> used.  As part of correcting these tests, make use of the fact that
>  Tom> we've always been placing our stack outside of the download image area
>  Tom> (which is fine, once the downloaded image is run, ROM is gone) so
>  Tom> correct the max size test to be the ROM defined top of the download area
>  Tom> to where we link/load at.
[snip]
>  Tom> + * We limit our size to the ROM-defined dowloaded image area, and use the
> 
> s/dowloaded/downloaded/

And copy/pasted to the other configs, oops, fixed in all 3.  If there's
no other feedback, I'll refrain from a v2 posting and just include the
typo correction when I merge it middle of next week, thanks!
diff mbox

Patch

diff --git a/arch/arm/include/asm/arch-am33xx/omap.h b/arch/arm/include/asm/arch-am33xx/omap.h
index 7e3bb9c..db15159 100644
--- a/arch/arm/include/asm/arch-am33xx/omap.h
+++ b/arch/arm/include/asm/arch-am33xx/omap.h
@@ -29,8 +29,8 @@ 
  * at 0x40304000(EMU base) so that our code works for both EMU and GP
  */
 #ifdef CONFIG_AM33XX
-#define NON_SECURE_SRAM_START	0x40304000
-#define NON_SECURE_SRAM_END	0x4030E000
+#define NON_SECURE_SRAM_START	0x402F0400
+#define NON_SECURE_SRAM_END	0x40310000
 #elif defined(CONFIG_TI814X)
 #define NON_SECURE_SRAM_START	0x40300000
 #define NON_SECURE_SRAM_END	0x40320000
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index f019134..a4777c7 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -305,8 +305,14 @@ 
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
-#define CONFIG_SPL_TEXT_BASE		0x402F0400
-#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
+/*
+ * Place the image at the start of the ROM defined image space and leave
+ * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
+ * We limit our size to the ROM-defined dowloaded image area, and use the
+ * rest of the space for stack.
+ */
+#define CONFIG_SPL_TEXT_BASE		0x402F0500
+#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 
 #define CONFIG_SPL_BSS_START_ADDR	0x80000000
diff --git a/include/configs/igep0033.h b/include/configs/igep0033.h
index 1912d7d..dd26d9c 100644
--- a/include/configs/igep0033.h
+++ b/include/configs/igep0033.h
@@ -214,8 +214,14 @@ 
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
-#define CONFIG_SPL_TEXT_BASE		0x402F0400
-#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
+/*
+ * Place the image at the start of the ROM defined image space and leave
+ * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
+ * We limit our size to the ROM-defined dowloaded image area, and use the
+ * rest of the space for stack.
+ */
+#define CONFIG_SPL_TEXT_BASE		0x402F0500
+#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 
 #define CONFIG_SPL_BSS_START_ADDR	0x80000000
diff --git a/include/configs/pcm051.h b/include/configs/pcm051.h
index 478f805..a7d01f1 100644
--- a/include/configs/pcm051.h
+++ b/include/configs/pcm051.h
@@ -204,8 +204,14 @@ 
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
-#define CONFIG_SPL_TEXT_BASE		0x402F0400
-#define CONFIG_SPL_MAX_SIZE		(101 * 1024)
+/*
+ * Place the image at the start of the ROM defined image space and leave
+ * space for SRAM scratch entries (see arch/arm/include/omap_common.h).
+ * We limit our size to the ROM-defined dowloaded image area, and use the
+ * rest of the space for stack.
+ */
+#define CONFIG_SPL_TEXT_BASE		0x402F0500
+#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 
 #define CONFIG_SPL_BSS_START_ADDR	0x80000000