lmb/bdinfo: dump lmb info via bdinfo

Dump lmb status from the bdinfo command. This is useful for seeing the
reserved memory regions from the u-boot cmdline.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
This commit is contained in:
Tero Kristo 2020-07-20 11:10:45 +03:00 committed by Tom Rini
parent cc6b87ecaa
commit 9996cea75f
3 changed files with 36 additions and 24 deletions

View file

@ -14,33 +14,37 @@
#define LMB_ALLOC_ANYWHERE 0
void lmb_dump_all_force(struct lmb *lmb)
{
unsigned long i;
printf("lmb_dump_all:\n");
printf(" memory.cnt = 0x%lx\n", lmb->memory.cnt);
printf(" memory.size = 0x%llx\n",
(unsigned long long)lmb->memory.size);
for (i = 0; i < lmb->memory.cnt; i++) {
printf(" memory.reg[0x%lx].base = 0x%llx\n", i,
(unsigned long long)lmb->memory.region[i].base);
printf(" .size = 0x%llx\n",
(unsigned long long)lmb->memory.region[i].size);
}
printf("\n reserved.cnt = 0x%lx\n", lmb->reserved.cnt);
printf(" reserved.size = 0x%llx\n",
(unsigned long long)lmb->reserved.size);
for (i = 0; i < lmb->reserved.cnt; i++) {
printf(" reserved.reg[0x%lx].base = 0x%llx\n", i,
(unsigned long long)lmb->reserved.region[i].base);
printf(" .size = 0x%llx\n",
(unsigned long long)lmb->reserved.region[i].size);
}
}
void lmb_dump_all(struct lmb *lmb)
{
#ifdef DEBUG
unsigned long i;
debug("lmb_dump_all:\n");
debug(" memory.cnt = 0x%lx\n", lmb->memory.cnt);
debug(" memory.size = 0x%llx\n",
(unsigned long long)lmb->memory.size);
for (i = 0; i < lmb->memory.cnt; i++) {
debug(" memory.reg[0x%lx].base = 0x%llx\n", i,
(unsigned long long)lmb->memory.region[i].base);
debug(" .size = 0x%llx\n",
(unsigned long long)lmb->memory.region[i].size);
}
debug("\n reserved.cnt = 0x%lx\n",
lmb->reserved.cnt);
debug(" reserved.size = 0x%llx\n",
(unsigned long long)lmb->reserved.size);
for (i = 0; i < lmb->reserved.cnt; i++) {
debug(" reserved.reg[0x%lx].base = 0x%llx\n", i,
(unsigned long long)lmb->reserved.region[i].base);
debug(" .size = 0x%llx\n",
(unsigned long long)lmb->reserved.region[i].size);
}
#endif /* DEBUG */
lmb_dump_all_force(lmb);
#endif
}
static long lmb_addrs_overlap(phys_addr_t base1, phys_size_t size1,