summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2022-05-08 04:39:27 -0600
committerSimon Glass <sjg@chromium.org>2022-06-28 03:09:52 +0100
commit4f6500aa1a62a80e8df2ffdf16fe4c3eabd99f1c (patch)
tree6497bbf0356366fa0e94c0d577be81f12d6781f4 /common
parent2cb4ddb91ec9fcb77c895e4a1192a15aece700c6 (diff)
dm: spl: Allow SPL to show memory usage
Add an option to tell SPL to show memory usage for driver model just before it boots into the next phase. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common')
-rw-r--r--common/spl/spl.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 2a69a7c9324..dff4eef7071 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -34,6 +34,7 @@
#include <malloc.h>
#include <mapmem.h>
#include <dm/root.h>
+#include <dm/util.h>
#include <linux/compiler.h>
#include <fdt_support.h>
#include <bootcount.h>
@@ -780,6 +781,14 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
bootcount_inc();
+ /* Dump driver model states to aid analysis */
+ if (CONFIG_IS_ENABLED(DM_STATS)) {
+ struct dm_stats mem;
+
+ dm_get_mem(&mem);
+ dm_dump_mem(&mem);
+ }
+
memset(&spl_image, '\0', sizeof(spl_image));
#ifdef CONFIG_SYS_SPL_ARGS_ADDR
spl_image.arg = (void *)CONFIG_SYS_SPL_ARGS_ADDR;