I want to share some measurements that we did in the office for the initial boot steps, from POR until user code is executed from DDR. Measurements were made with no HAB and don't include Power time, which is device dependent. They cover the following two steps:
Platform used: i.MX6Q / Sabre AI
|Image Size||SD Class 4 on CPU CARD||NAND** on CPU CARD||Parallel NOR on CPU CARD|
|2KB||32 ms + 79* ms||25 ms||23 ms|
|166KB||40 ms + 79* ms||61 ms||56 ms|
|1MB||77 ms + 79* ms||247 ms||213 ms|
* Constant value, measured only once (after SD card insert/platform power up), does not appear for subsequent s/w resets.
** Samsung K9G4G08U0M
Thanks to Andreas S. for help.
When using HAB, RSA and SHA run in parallel. Here is an approximation based on measurements - add the following for HAB:
If authenticated image < 1MB, a constant of 25ms. For i.MX6SoloX, that time could potentially be reduced to half.
If authenticated image > 1MB, (Image_Size_MB / 1MB) * 25ms.