IMX6UL OTP General Purpose Registers - Access Protected

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX6UL OTP General Purpose Registers - Access Protected

1,935 Views
logman
Contributor II

Hello,

I have a problem accessing the fuse OTP memory in the IMX6UL device. After starting uboot, I am accessing the fuse memory using the fuse read and override commands.
I can successfully read all of the General Purpose registers (GP30, 31, etc.) in banks 8 to 15, using the fuse read command.
And I can successfully override the shadow registers from banks 12 to 15.
However, uboot will not allow me to override the GP registers in banks 8 to 11.
Is there any explanation for this access problem? I don't think the registers have been previously programmed by any of my colleagues, although that is how it appears.
Is there something special about banks 8 to 11?
I've copied a typical set of uboot commads below.

Thanks for reading this post

=> fuse override 12 0 12121212
Overriding bank 12 word 0x00000000 with 0x12121212...
=> fuse read 12 0
Reading bank 12:

Word 0x00000000: 12121212
=> fuse override 15 0 15151515
Overriding bank 15 word 0x00000000 with 0x15151515...
=> fuse read 15 0
Reading bank 15:

Word 0x00000000: 15151515
=> fuse read 8 0
Reading bank 8:

Word 0x00000000: 00000000
=> fuse read 11 0
Reading bank 11:

Word 0x00000000: 00000000
=> fuse override 8 0 08080808
Overriding bank 8 word 0x00000000 with 0x08080808...
mxc_ocotp fuse_override(): Access protect error
ERROR
=> fuse override 11 0 11111111
Overriding bank 11 word 0x00000000 with 0x11111111...
mxc_ocotp fuse_override(): Access protect error
ERROR
=> fuse prog -y 8 0 08080808
Programming bank 8 word 0x00000000 to 0x08080808...
mxc_ocotp fuse_prog(): Access protect error
ERROR
=> fuse prog -y 11 0 11111111
Programming bank 11 word 0x00000000 to 0x11111111...
mxc_ocotp fuse_prog(): Access protect error
ERROR
=> fuse read 8 0
Reading bank 8:

Word 0x00000000: 00000000
=> fuse sense 8 0
Sensing bank 8:

Word 0x00000000: 00000000
=>

@Dhruvit do you have any advice please?

0 Kudos
Reply
3 Replies

1,902 Views
Dhruvit
NXP TechSupport
NXP TechSupport

Hi @logman,

I hope you are doing well.

Could you please share the output of the below command in u-boot?

=>  fuse read 0 0

Thanks & Regards,
Dhruvit Vasavada

0 Kudos
Reply

1,897 Views
logman
Contributor II

Hi,

output log below.

Thanks, Tom.

=> fuse read 0 0
Reading bank 0:

Word 0x00000000: 00b28003

0 Kudos
Reply

1,892 Views
Dhruvit
NXP TechSupport
NXP TechSupport

Hi @logman,

I hope you are doing well.

From the output, It looks bit 15[GP3_LOCK] & 23[GP4_LOCK] are set.

So, GP3 and GP4 fuses are write & override-protected. so it cannot be programmed.

Please refer to 5.2 Lock Fusemap and 35.5.11 Value of OTP Bank0 Word0 (Lock controls)
(OCOTP_LOCK) in i.MX 6UltraLite Applications Processor Reference Manual.

Thanks & Regards,
Dhruvit Vasavada

0 Kudos
Reply