[PATCH] firmware: dmi: Add info message for number of populated and total memory slots

From: Heiner Kallweit
Date: Tue Mar 05 2024 - 15:55:40 EST


As part of adding support for calling i2c_register_spd() on muxed SMBUS
segments the same message has been removed from i2c_register_spd().
However users may find it useful, therefore reintroduce it as part of
the DMI scan code.

Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
---
drivers/firmware/dmi_scan.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c
index 015c95a82..2c682b580 100644
--- a/drivers/firmware/dmi_scan.c
+++ b/drivers/firmware/dmi_scan.c
@@ -42,6 +42,7 @@ static struct dmi_memdev_info {
u8 type; /* DDR2, DDR3, DDR4 etc */
} *dmi_memdev;
static int dmi_memdev_nr;
+static int dmi_memdev_populated_nr;

static const char * __init dmi_string_nosave(const struct dmi_header *dm, u8 s)
{
@@ -448,6 +449,9 @@ static void __init save_mem_devices(const struct dmi_header *dm, void *v)
else
bytes = (u64)get_unaligned((u32 *)&d[0x1C]) << 20;

+ if (bytes)
+ dmi_memdev_populated_nr++;
+
dmi_memdev[nr].size = bytes;
nr++;
}
@@ -824,6 +828,8 @@ void __init dmi_setup(void)
return;

dmi_memdev_walk();
+ pr_info("DMI: Memory slots populated: %d/%d\n",
+ dmi_memdev_populated_nr, dmi_memdev_nr);
dump_stack_set_arch_desc("%s", dmi_ids_string);
}

--
2.44.0