[23/26] arch: mach-imx: imx8m: fix unique_id read error for imx8mp

Message ID 20210319075718.14181-24-peng.fan@oss.nxp.com
State New
Headers show
Series
  • imx: update for i.MX8M
Related show

Commit Message

Peng Fan (OSS) March 19, 2021, 7:57 a.m.
From: Peng Fan <peng.fan@nxp.com>


The value of Unique ID in uboot and kernel is different for iMX8MP:

serial#=02e1444a0002aaff
root@imx8mpevk:/sys/devices/soc0# cat soc_uid
D699300002E1444A

The reason is that Fuse Addresses of Unique ID of iMX8MP are 0x420 and
0x430.

Reviewed-by: Ye Li <ye.li@nxp.com>

Signed-off-by: Alice Guo <alice.guo@nxp.com>

Signed-off-by: Peng Fan <peng.fan@nxp.com>

---
 arch/arm/include/asm/arch-imx8m/imx-regs.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

-- 
2.30.0

Patch

diff --git a/arch/arm/include/asm/arch-imx8m/imx-regs.h b/arch/arm/include/asm/arch-imx8m/imx-regs.h
index 3f50014618..49bac8c1fa 100644
--- a/arch/arm/include/asm/arch-imx8m/imx-regs.h
+++ b/arch/arm/include/asm/arch-imx8m/imx-regs.h
@@ -120,6 +120,16 @@  struct ocotp_regs {
 	} bank[0];
 };
 
+#ifdef CONFIG_IMX8MP
+struct fuse_bank0_regs {
+	u32 lock;
+	u32 rsvd0[7];
+	u32 uid_low;
+	u32 rsvd1[3];
+	u32 uid_high;
+	u32 rsvd2[3];
+};
+#else
 struct fuse_bank0_regs {
 	u32 lock;
 	u32 rsvd0[3];
@@ -128,6 +138,7 @@  struct fuse_bank0_regs {
 	u32 uid_high;
 	u32 rsvd2[7];
 };
+#endif
 
 struct fuse_bank1_regs {
 	u32 tester3;