summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorYe.Li <B37916@freescale.com>2014-07-04 16:05:24 +0800
committerPeng Fan <Peng.Fan@freescale.com>2015-04-29 14:42:37 +0800
commit26af9318b5bdcde14e88c6d3d12e5a3c37d62143 (patch)
tree27cbfa43ee0b937072f35fab8bb00f62da7a6ebd /arch
parentcd71ea40cd2756db8c8a50209df468fb600024db (diff)
downloadu-boot-imx-26af9318b5bdcde14e88c6d3d12e5a3c37d62143.zip
u-boot-imx-26af9318b5bdcde14e88c6d3d12e5a3c37d62143.tar.gz
u-boot-imx-26af9318b5bdcde14e88c6d3d12e5a3c37d62143.tar.bz2
ENGR00321260-1 iMX6: Add support to get CPU serial number
The android boot needs get_board_serial function to get the CPU uid as the serial number. Implement this function to read the uid from fuse for all iMX6 platforms. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 8d355a9d6f138e1c1cd04dbadb7b5b3e2d692701) Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/cpu/armv7/mx6/soc.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/mx6/soc.c b/arch/arm/cpu/armv7/mx6/soc.c
index 51631ce..39d1b4e 100644
--- a/arch/arm/cpu/armv7/mx6/soc.c
+++ b/arch/arm/cpu/armv7/mx6/soc.c
@@ -453,6 +453,19 @@ int board_postclk_init(void)
return 0;
}
+#ifdef CONFIG_SERIAL_TAG
+void get_board_serial(struct tag_serialnr *serialnr)
+{
+ struct ocotp_regs *ocotp = (struct ocotp_regs *)OCOTP_BASE_ADDR;
+ struct fuse_bank *bank = &ocotp->bank[0];
+ struct fuse_bank0_regs *fuse =
+ (struct fuse_bank0_regs *)bank->fuse_regs;
+
+ serialnr->low = fuse->uid_low;
+ serialnr->high = fuse->uid_high;
+}
+#endif
+
#ifndef CONFIG_SYS_DCACHE_OFF
void enable_caches(void)
{