Programming fuses

I have the ConnectCore i.MX6UL Starter Kit and I am trying to work with the OTP fuses. I would like to store some data in these registers and read it from Linux user space via the /sys/fsl_otp sysfs. Can you please elaborate on which set of registers are available to store custom data?

I assume that all of the GP* registers would be available for customization. However, when attempting to use the u-boot fuse override command, I found that Banks 8 and 9 were protected. Here is the result from u-boot:

=> fuse override 8 0 0x55aa55aa
Overriding bank 8 word 0x00000000 with 0x55aa55aa…
mxc_ocotp fuse_override(): Access protect error
ERROR
=> fuse override 9 0 0x55aa55aa
Overriding bank 9 word 0x00000000 with 0x55aa55aa…
mxc_ocotp fuse_override(): Access protect error
ERROR

Using the source for the fsl_otp driver (https://github.com/digi-embedded/linux/blob/v3.14/dey-2.0/maint/drivers/char/fsl_otp.c), I determined that banks 8 and 9 correspond to the 16 HW_OCOTP_GP3* registers. Please correct me if I am wrong. I am able to write to other banks, including banks 10 and 11 which hold the HW_OCOTP_GP4* registers.

Why are the GP3* registers locked and the GP4* registers open? is there a document describing these registers and indicating which are available for user customization?

Thanks.
-John G.

bump, bump

Can I please get an answer here? This question was posted nearly a month ago!