sniper: Serial number support, obtained from die ID
The OMAP3 has some die-specific ID bits that we can use to give the device a
(more or less) unique serial number. This is particularly useful for e.g. USB.
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
diff --git a/board/lge/sniper/sniper.c b/board/lge/sniper/sniper.c
index 44d422d..f26855d 100644
--- a/board/lge/sniper/sniper.c
+++ b/board/lge/sniper/sniper.c
@@ -70,7 +70,9 @@
int misc_init_r(void)
{
+ char serial_string[17] = { 0 };
char reboot_mode[2] = { 0 };
+ u32 dieid[4] = { 0 };
/* Reboot mode */
@@ -82,6 +84,17 @@
omap_reboot_mode_clear();
}
+ /* Serial number */
+
+ get_dieid((u32 *)&dieid);
+
+ if (!getenv("serial#")) {
+ snprintf(serial_string, sizeof(serial_string),
+ "%08x%08x", dieid[0], dieid[3]);
+
+ setenv("serial#", serial_string);
+ }
+
return 0;
}