[U-Boot] [PATCH] ppc/85xx: Set CONFIG_SYS_MONITOR_LEN correctly

Wolfgang Denk wd at denx.de
Wed Sep 9 15:42:07 CEST 2009


Dear Kumar Gala,

In message <Pine.LNX.4.64.0909090824300.3372 at localhost.localdomain> you wrote:
> A number of boards didn't have CONFIG_SYS_MONITOR_LEN set properly based
> on how TEXT_BASE was set.
> 
> Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
> ---
> 
> This patch is cleaning up things so we can use CONFIG_SYS_MONITOR_LEN in
> the linker script.  I would appreciate ACKs via various board maintainers.

Thsi makes no sense to me. The linker script should use the
information that is intensded for the linker script, i. e. TEXT_BASE;
using CONFIG_SYS_MONITOR_LEN seems to be wrong here.

Actually I consider this a change to the worse. See for example The
TQM85xx boards below.


> --- a/include/configs/ATUM8548.h
> +++ b/include/configs/ATUM8548.h
> @@ -198,7 +198,7 @@
>  #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE)
>  #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
> 
> -#define CONFIG_SYS_MONITOR_LEN		(256 * 1024) /* Reserve 256 kB for Mon */
> +#define CONFIG_SYS_MONITOR_LEN		(512 * 1024) /* Reserve 512 kB for Mon */

Why is this changing here and in other places?



> diff --git a/include/configs/TQM85xx.h b/include/configs/TQM85xx.h
> index 1fbf4bf..1c50743 100644
> --- a/include/configs/TQM85xx.h
> +++ b/include/configs/TQM85xx.h
> @@ -247,7 +247,11 @@
>  #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE)
>  #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
> 
> -#define CONFIG_SYS_MONITOR_LEN		(~TEXT_BASE + 1)/* Reserved for Monitor	*/
> +#ifdef CONFIG_TQM8548_BE
> +#define CONFIG_SYS_MONITOR_LEN		(512 * 1024)    /* Reserve 512 kB for Mon */
> +#else
> +#define CONFIG_SYS_MONITOR_LEN		(256 * 1024)	/* Reserve 256 kB for Mon */
> +#endif
>  #define CONFIG_SYS_MALLOC_LEN		(384 * 1024)	/* Reserved for malloc	*/


Without your change, we just had one knob to twiddle (TEXT_BASE), now
we suddenly have two, which must be kept in sync. And we have a lot of
additional #ifdef's.


> diff --git a/include/configs/socrates.h b/include/configs/socrates.h
> index 35feed0..e7c09fe 100644
> --- a/include/configs/socrates.h
> +++ b/include/configs/socrates.h
> @@ -174,7 +174,7 @@
>  #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE)
>  #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
> 
> -#define CONFIG_SYS_MONITOR_LEN		(256 * 1024)	/* Reserve 256kB for Mon */
> +#define CONFIG_SYS_MONITOR_LEN		(384 * 1024)	/* Reserve 284kB for Mon */

Typo. s/284/384/


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
You have the capacity to learn from  mistakes.  You'll  learn  a  lot
today.


More information about the U-Boot mailing list