sniper: Serial number support, obtained from die ID
authorPaul Kocialkowski <contact@paulk.fr>
Mon, 20 Jul 2015 13:17:13 +0000 (15:17 +0200)
committerLothar Waßmann <LW@KARO-electronics.de>
Thu, 10 Sep 2015 06:24:13 +0000 (08:24 +0200)
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>
board/lge/sniper/sniper.c

index 44d422d..f26855d 100644 (file)
@@ -70,7 +70,9 @@ int board_init(void)
 
 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 @@ int misc_init_r(void)
                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;
 }