|
@@ -36,6 +36,32 @@ static gpmc_csx_t *gpmc_cs_base = (gpmc_csx_t *)GPMC_CONFIG_CS0_BASE;
|
|
static sdrc_t *sdrc_base = (sdrc_t *)OMAP34XX_SDRC_BASE;
|
|
static sdrc_t *sdrc_base = (sdrc_t *)OMAP34XX_SDRC_BASE;
|
|
static ctrl_t *ctrl_base = (ctrl_t *)OMAP34XX_CTRL_BASE;
|
|
static ctrl_t *ctrl_base = (ctrl_t *)OMAP34XX_CTRL_BASE;
|
|
|
|
|
|
|
|
+/*****************************************************************
|
|
|
|
+ * dieid_num_r(void) - read and set die ID
|
|
|
|
+ *****************************************************************/
|
|
|
|
+void dieid_num_r(void)
|
|
|
|
+{
|
|
|
|
+ ctrl_id_t *id_base = (ctrl_id_t *)OMAP34XX_ID_L4_IO_BASE;
|
|
|
|
+ char *uid_s, die_id[34];
|
|
|
|
+ u32 id[4];
|
|
|
|
+
|
|
|
|
+ memset(die_id, 0, sizeof(die_id));
|
|
|
|
+
|
|
|
|
+ uid_s = getenv("dieid#");
|
|
|
|
+
|
|
|
|
+ if (uid_s == NULL) {
|
|
|
|
+ id[3] = readl(&id_base->die_id_0);
|
|
|
|
+ id[2] = readl(&id_base->die_id_1);
|
|
|
|
+ id[1] = readl(&id_base->die_id_2);
|
|
|
|
+ id[0] = readl(&id_base->die_id_3);
|
|
|
|
+ sprintf(die_id, "%08x%08x%08x%08x", id[0], id[1], id[2], id[3]);
|
|
|
|
+ setenv("dieid#", die_id);
|
|
|
|
+ uid_s = die_id;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ printf("Die ID #%s\n", uid_s);
|
|
|
|
+}
|
|
|
|
+
|
|
/******************************************
|
|
/******************************************
|
|
* get_cpu_type(void) - extract cpu info
|
|
* get_cpu_type(void) - extract cpu info
|
|
******************************************/
|
|
******************************************/
|