crossystem: Add the ddr_type field on crossystem for querying DDR RAM type
Samsung want to know what memory type on the device. So this CL adds a
new field ddr_type to crossystem utility in order to query this info.
It is only available on ARM platform so far.
BUG=chrome-os-partner:10857
TEST=Built and boot on Snow successfuly. On userspace, query the field via:
localhost ~ # crossystem ddr_type
ddr3
Change-Id: I01d1dec412fe4052e1ea6cfe2e53830da97a710b
Signed-off-by: Tom Wai-Hong Tam <waihong@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/26411
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/host/arch/arm/lib/crossystem_arch.c b/host/arch/arm/lib/crossystem_arch.c
index a4d08af..7895bad 100644
--- a/host/arch/arm/lib/crossystem_arch.c
+++ b/host/arch/arm/lib/crossystem_arch.c
@@ -379,6 +379,8 @@
prop = "firmware-type";
else if (!strcasecmp(name, "ecfw_act"))
prop = "active-ec-firmware";
+ else if (!strcasecmp(name, "ddr_type"))
+ prop = "ddr-type";
if (prop)
str = ReadFdtString(prop);
diff --git a/host/lib/crossystem.c b/host/lib/crossystem.c
index 80a3d3c..1515ecf 100644
--- a/host/lib/crossystem.c
+++ b/host/lib/crossystem.c
@@ -404,6 +404,8 @@
const char* VbGetSystemPropertyString(const char* name, char* dest, int size) {
+ static const char unknown_string[] = "unknown";
+
/* Check architecture-dependent properties first */
if (VbGetArchPropertyString(name, dest, size))
return dest;
@@ -425,6 +427,8 @@
return GetVdatString(dest, size, VDAT_STRING_LOAD_FIRMWARE_DEBUG);
} else if (!strcasecmp(name, "vdat_lkdebug")) {
return GetVdatString(dest, size, VDAT_STRING_LOAD_KERNEL_DEBUG);
+ } else if (!strcasecmp(name, "ddr_type")) {
+ return unknown_string;
}
return NULL;
diff --git a/utility/crossystem_main.c b/utility/crossystem_main.c
index e7320c9..ecd1e4f 100644
--- a/utility/crossystem_main.c
+++ b/utility/crossystem_main.c
@@ -37,6 +37,7 @@
{"arch", IS_STRING, "Platform architecture"},
{"cros_debug", 0, "OS should allow debug features"},
{"dbg_reset", CAN_WRITE, "Debug reset mode request (writable)"},
+ {"ddr_type", IS_STRING, "Type of DDR RAM"},
{"disable_dev_request", CAN_WRITE, "Disable virtual dev-mode on next boot"},
{"dev_boot_usb", CAN_WRITE,
"Enable developer mode boot from USB/SD (writable)"},