[PATCH 03/13] common: split out meminfo output and make it optional

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Mon Aug 20 10:42:25 EDT 2012


On 16:20 Mon 20 Aug     , Jan Luebbe wrote:
> Signed-off-by: Jan Luebbe <jlu at pengutronix.de>
> ---
>  common/Kconfig   |    4 ++++
>  common/Makefile  |    1 +
>  common/meminfo.c |   21 +++++++++++++++++++++
>  common/startup.c |   19 -------------------
>  include/common.h |   10 ++++++++--
>  5 files changed, 34 insertions(+), 21 deletions(-)
>  create mode 100644 common/meminfo.c
> 
> diff --git a/common/Kconfig b/common/Kconfig
> index b776031..7d33c2e 100644
> --- a/common/Kconfig
> +++ b/common/Kconfig
> @@ -88,6 +88,10 @@ config BANNER
>  	bool "display banner"
>  	default y
>  
> +config MEMINFO
> +	bool "display memory info"
> +	default y
> +
>  config ENVIRONMENT_VARIABLES
>  	bool "environment variables support"
>  
> diff --git a/common/Makefile b/common/Makefile
> index a1926d3..69ff5df 100644
> --- a/common/Makefile
> +++ b/common/Makefile
> @@ -19,6 +19,7 @@ obj-$(CONFIG_MALLOC_TLSF) += tlsf.o
>  obj-$(CONFIG_MALLOC_DUMMY) += dummy_malloc.o
>  obj-y += clock.o
>  obj-$(CONFIG_BANNER) += version.o
> +obj-$(CONFIG_MEMINFO) += meminfo.o
>  obj-$(CONFIG_COMMAND_SUPPORT) += command.o
>  obj-$(CONFIG_CONSOLE_FULL) += console.o
>  obj-$(CONFIG_CONSOLE_SIMPLE) += console_simple.o
> diff --git a/common/meminfo.c b/common/meminfo.c
> new file mode 100644
> index 0000000..30b5bef
> --- /dev/null
> +++ b/common/meminfo.c
> @@ -0,0 +1,21 @@
> +#include <common.h>
> +#include <memory.h>
> +#include <asm-generic/memory_layout.h>
> +
> +void display_meminfo(void)
> +{
> +	ulong mstart = mem_malloc_start();
> +	ulong mend   = mem_malloc_end();
> +	ulong msize  = mend - mstart + 1;
> +
> +	debug("barebox code: 0x%p -> 0x%p\n", _stext, _etext);
> +	debug("bss segment:  0x%p -> 0x%p\n", __bss_start, __bss_stop);
> +	printf("Malloc space: 0x%08lx -> 0x%08lx (size %s)\n",
> +		mstart, mend, size_human_readable(msize));
> +#ifdef CONFIG_ARM
> +	printf("Stack space : 0x%08x -> 0x%08x (size %s)\n",
> +		STACK_BASE, STACK_BASE + STACK_SIZE,
> +		size_human_readable(STACK_SIZE));
> +#endif
> +}

so move it as a late_initcall

Best Regards,
J.



More information about the barebox mailing list