Difference between revisions of "BELK-TN-011: Lock OTP Areas"

From DAVE Developer's Wiki
Jump to: navigation, search
(History)
(One intermediate revision by the same user not shown)
Line 19: Line 19:
  
 
== Introduction ==
 
== Introduction ==
As decribed on [[ConfigID_management_(BELK/BXELK)|ConfigID management]] page, these informations are stored inside a general purpouse OTP area of the SoC.
+
As decribed on [[ConfigID_management_(BELK/BXELK)|ConfigID management]] page, these informations are stored inside a general purpose OTP area of the SoC.
  
This page describes a fix to be done on BORA systems that runs BSP versions older than BELK/BXELK-4.1.2
+
This technical note shows how to fix lock this OTP area on BORA systems running BSP versions older than [[BELK/BXELK software components#BELK 4.1.2|BELK/BXELK-4.1.2]]
  
 
=== ConfigID programming ===
 
=== ConfigID programming ===
All the SoM are shipped with ConfgID and UniqueID already programmed and locked. The OTP lock ensure that nobody can change this data (unattempted code execution, etc).
+
All Bora SOMs are shipped with ConfgID and UniqueID programmed and locked. The OTP lock ensure that nobody can change this data (unattempted code execution, etc).
  
 
It is possibile to execute these operations only using the devel versions of u-boot with the following commands:
 
It is possibile to execute these operations only using the devel versions of u-boot with the following commands:
Line 38: Line 38:
 
Starting from the BELK/BXELK-4.1.2 release this issue have been solved.
 
Starting from the BELK/BXELK-4.1.2 release this issue have been solved.
  
== Fix lock of OTP areas ==
+
== Lock OTP area ==
It is suggested to update the systems that runs ''older BSP releases'' to the BELK 4.1.2 and perform the following fixing steps:
+
It is suggested to update the systems running ''BSP releases'' ''older then'' BELK 4.1.2 performing the following steps:
  
* program on boot from the uSD using the u-boot devel version - that can be found on our [https://cloud.dave.eu/ws-mirror/bora/belk-4.1.2 mirror server] - allowing the OTP lock command to be executed
+
* program on internal storage or alternatively boot from uSD using the u-boot devel version belk-4.1.2
* execute the command <code>configid som_lock 0</code>
+
** devel version, for SD, are: [[mirror:bora/belk-4.1.2/belk-4.1.2_borax_mmc_devel_boot.bin|belk-4.1.2_bora_mmc_devel_boot.bin]] and [[mirror:bora/belk-4.1.2/belk-4.1.2_borax_mmc_devel_u-boot.img|belk-4.1.2_bora_mmc_devel_u-boot.img]]
* program any u-boot release version to restore the normal operations (''this is not required if previous operations have been executed using an external boot from SD'')
+
** u-boot can be downloaded from our [https://cloud.dave.eu/ws-mirror/bora/belk-4.1.2 mirror server]  
 +
** u-boot 4.1.2 gives access to the OTP lock commands
 +
* run the command <code>configid som_lock 0</code>
 +
* program your u-boot release version to restore the normal operations (''this is not required if previous operations have been executed using an external boot from SD'')

Revision as of 15:45, 25 September 2020

Info Box
Bora5-small.jpg Applies to Bora
BORA Xpress.png Applies to BORA Xpress


Warning-icon.png This technical note was validated against specific versions of hardware and software. What is described here may not work with other versions. Warning-icon.png

History[edit | edit source]

Version Date Notes
1.0.0 Sep 2020 First release

Introduction[edit | edit source]

As decribed on ConfigID management page, these informations are stored inside a general purpose OTP area of the SoC.

This technical note shows how to fix lock this OTP area on BORA systems running BSP versions older than BELK/BXELK-4.1.2

ConfigID programming[edit | edit source]

All Bora SOMs are shipped with ConfgID and UniqueID programmed and locked. The OTP lock ensure that nobody can change this data (unattempted code execution, etc).

It is possibile to execute these operations only using the devel versions of u-boot with the following commands:

configid som_configid <16 byte code>
configid som_uniqueid <32 byte code>
configid som_lock 0

Older BSP issue[edit | edit source]

In older BSP, due to a u-boot limitation, this OTP area is not really locked and therefore it should be possible to overwrite its value, with possible identification errors during updates.

Starting from the BELK/BXELK-4.1.2 release this issue have been solved.

Lock OTP area[edit | edit source]

It is suggested to update the systems running BSP releases older then BELK 4.1.2 performing the following steps:

  • program on internal storage or alternatively boot from uSD using the u-boot devel version belk-4.1.2
  • run the command configid som_lock 0
  • program your u-boot release version to restore the normal operations (this is not required if previous operations have been executed using an external boot from SD)