public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Lokesh Vutla <lokeshvutla@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC PATCH] armv7:omap4-common: Correct check of the SPL image size
Date: Mon, 2 Sep 2013 13:26:03 +0530	[thread overview]
Message-ID: <52244493.7000608@ti.com> (raw)
In-Reply-To: <20130828144032.GD17898@bill-the-cat>

Hi Tom,
On Wednesday 28 August 2013 08:10 PM, Tom Rini wrote:
> On Wed, Jul 24, 2013 at 05:02:04PM +0300, Oleg Kosheliev wrote:
> 
>> From: Oleg_Kosheliev <oleg.kosheliev@ti.com>
>>
>> The u-boot-spl image must be stored in SRAM at
>> addresses from 0x40300000 till 0x4030bfff.
>> Higher than that area is located the ROM code stack.
>> Thus we should check that the highest address
>> of the SPL image is not in the stack area or higher.
>> In this patch CONFIG_SPL_MAX_SIZE is corrected based
>> on the max allowed for SPL image address.
>>
>> Signed-off-by: Oleg Kosheliev <oleg.kosheliev@ti.com>
>> ---
>>  include/configs/omap4_common.h |    9 ++++++++-
>>  1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h
>> index 2fa4382..aeeef6c 100644
>> --- a/include/configs/omap4_common.h
>> +++ b/include/configs/omap4_common.h
>> @@ -266,7 +266,14 @@
>>  #define CONFIG_SPL
>>  #define CONFIG_SPL_FRAMEWORK
>>  #define CONFIG_SPL_TEXT_BASE		0x40304350
>> -#define CONFIG_SPL_MAX_SIZE		(38 * 1024)
>> +/*
>> + * The allowed space in SRAM for SPL is from 0x40300000 till 0x4030bfff.
>> + * The space above 0x4030c000 is used by ROM code stack
>> + * and this area must not be rewritten by the SPL
> 
> Note that we are allowed to use the public stack area (and should, for
> our scratch space) but must not exceed the download image area of
> 0x40300000 - 0x4030bfff.  See include/configs/ti_armv7_common.h for how
> the comment should look.  And if you have time, please convert the OMAP4
> platforms to use ti_armv7_common.h
> 
>> +#define CONFIG_SPL_MAX_ADDR		0x4030bfff
>> +#define CONFIG_SPL_MAX_SIZE		(CONFIG_SPL_MAX_ADDR - \
>> +					 CONFIG_SPL_TEXT_BASE)
> 
> Just say:
> #define CONFIG_SPL_MAX_SIZE		(0x4030C000 - \
> 					 CONFIG_SPL_TEXT_BASE)
> 
>>  #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
>>  #define CONFIG_SPL_DISPLAY_PRINT
> 
> We need to change things like in
> http://patchwork.ozlabs.org/patch/268511/ including changing the scratch
> area.
When I change the CONFIG_SPL_TEXT_BASE to 0x40304000 like below,
breaks on HS devices. There is a limitation on HS devices that first 0x350 space
should not be used.

Here is the diff:
diff --git a/arch/arm/include/asm/arch-omap4/omap.h b/arch/arm/include/asm/arch-omap4/omap.h
index 3823a37..3df0d48 100644
--- a/arch/arm/include/asm/arch-omap4/omap.h
+++ b/arch/arm/include/asm/arch-omap4/omap.h
@@ -111,7 +111,7 @@ struct s32ktimer {
  */
 #define NON_SECURE_SRAM_START	0x40304000
 #define NON_SECURE_SRAM_END	0x4030E000	/* Not inclusive */
-#define SRAM_SCRATCH_SPACE_ADDR	NON_SECURE_SRAM_START
+#define SRAM_SCRATCH_SPACE_ADDR	0x4030C000
 /* base address for indirect vectors (internal boot mode) */
 #define SRAM_ROM_VECT_BASE	0x4030D000
 
diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h
index e9f2383..f57ee95 100644
--- a/include/configs/omap4_common.h
+++ b/include/configs/omap4_common.h
@@ -250,8 +250,8 @@
 /* Defines for SPL */
 #define CONFIG_SPL
 #define CONFIG_SPL_FRAMEWORK
-#define CONFIG_SPL_TEXT_BASE		0x40304350
-#define CONFIG_SPL_MAX_SIZE		(38 * 1024)
+#define CONFIG_SPL_TEXT_BASE		0x40304000
+#define CONFIG_SPL_MAX_SIZE		(0x4030C000 - CONFIG_SPL_TEXT_BASE)
 #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
 #define CONFIG_SPL_DISPLAY_PRINT

Not sure if this is same for OMAP5 devices.
Please correct me if I am wrong.

Thanks and regards,
Lokesh
> 
> 
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
> 

      reply	other threads:[~2013-09-02  7:56 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-24 14:02 [U-Boot] [RFC PATCH] armv7:omap4-common: Correct check of the SPL image size Oleg Kosheliev
2013-08-28 14:40 ` Tom Rini
2013-09-02  7:56   ` Lokesh Vutla [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52244493.7000608@ti.com \
    --to=lokeshvutla@ti.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox