hi.
i'm finding a 64bit device unique ID in imx6 board.
i found OCOTP_CFG0, OCOTP_CFG1. the chapter 46.5.10, 46.5.11 explain that they are each 32 bits unique IDs in IMX6DQRM doc.
1. can i read OCOTP_CFG0, OCOTP_CFG1 with physical address (Address: 21B_C000h base + 410h offset = 21B_C410h)?
2. it could be read only secure mode ? or non-secure mode?
Best regards.
Q1. can i read OCOTP_CFG0, OCOTP_CFG1 with physical address (Address: 21B_C000h base + 410h offset = 21B_C410h)?
A1. Yes, you can do it, for example, using the memtool utility.
Q2. it could be read only secure mode ? or non-secure mode?
A2. These registers can be read in both non-secure and secure mode while the corresponding fuse lock bits are not blown.
Have a great day,
Artur
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
hi Artur Petukhov
thanks for the reply.
i have one more question about Q1.
Can i read OCOTP_CFG0, OCOTP_CFG1 in the linux kernel or u-boot code with physical address without memtool utility?
Have a good day,
Myungjin Hwang
I have shown you already.
please check my previous reply.
copy here again.
root@imx6qdlsolo:~# cat /sys/fsl_otp/HW_OCOTP_CFG0
0xd81917c9
root@imx6qdlsolo:~# cat /sys/fsl_otp/HW_OCOTP_CFG1
0xd1b19d4
A1:
root@imx6qdlsolo:~# cat /sys/fsl_otp/HW_OCOTP_CFG0
0xd81917c9
root@imx6qdlsolo:~# cat /sys/fsl_otp/HW_OCOTP_CFG1
0xd1b19d4
root@imx6qdlsolo:~# /unit_tests/memtool OCOTP.CFG0
SOC: i.MX6Q
OCOTP Addr:0x21bc000
OCOTP.CFG0 Addr:0x021BC410 Value:0xD81917C9 - Copied from the OTP automatically after reset.
OCOTP.CFG0.BITS(0..31) :0xd81917c9
This register contains 32 bits of the Unique ID and SJC_CHALLENGE field.
root@imx6qdlsolo:~# /unit_tests/memtool OCOTP.CFG1
SOC: i.MX6Q
OCOTP Addr:0x21bc000
OCOTP.CFG1 Addr:0x021BC420 Value:0x0D1B19D4 - Copied from the OTP automatically after reset.
OCOTP.CFG1.BITS(0..31) :0xd1b19d4
This register contains 32 bits of the Unique ID and SJC_CHALLENGE field.
root@imx6qdlsolo:~# /unit_tests/memtool 0x021BC410 1
E
Reading 0x1 count starting at address 0x021BC410
0x021BC410: D81917C9
root@imx6qdlsolo:~# /unit_tests/memtool 0x021BC420 1
E
Reading 0x1 count starting at address 0x021BC420
0x021BC420: 0D1B19D4
A2:
It is read only by LOCK_TESTER. LOCK_TESTER only for manufacturing to lock.
It is said when this chip is shipped to the field, the ID is Unique.
Each one of single chip has its only Unique ID and read only.