u-boot-brain/arch
Utkarsh Gupta 55eab945da imx: HAB: Validate IVT before authenticating image
Calling csf_is_valid() with an un-signed image may lead to data abort
as the CSF pointer could be pointing to a garbage address when accessed
in HAB_HDR_LEN(*(const struct hab_hdr *)(ulong)ivt_initial->csf).

Authenticate image from DDR location 0x80800000...
Check CSF for Write Data command before authenticating image
data abort
pc : [<fff5494c>]          lr : [<fff54910>]
reloc pc : [<8780294c>]    lr : [<87802910>]
sp : fdf45dc8  ip : 00000214     fp : 00000000
r10: fffb6170  r9 : fdf4fec0     r8 : 00722020
r7 : 80f20000  r6 : 80800000     r5 : 80800000  r4 : 00720000
r3 : 17a5aca3  r2 : 00000000     r1 : 80f2201f  r0 : 00000019
Flags: NzcV  IRQs off  FIQs off  Mode SVC_32
Resetting CPU ...

resetting ...

To avoid such errors during authentication process, validate IVT structure
by calling validate_ivt function which checks the following values in an IVT:

IVT_HEADER = 0x4X2000D1
ENTRY != 0x0
RES1 = 0x0
DCD = 0x0       /* Recommended */
SELF != 0x0     /* Absoulute address of IVT */
CSF != 0x0
RES2 = 0x0

This commit also checks if Image's start address is 4 byte aligned.

commit "0088d127 MLK-14945 HAB: Check if IVT valid before authenticating image"
removed as this patch addresses the issue.

Signed-off-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2021-04-27 15:13:57 -03:00
..
arc common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
arm imx: HAB: Validate IVT before authenticating image 2021-04-27 15:13:57 -03:00
m68k Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
microblaze common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mips common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nds32 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nios2 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
powerpc powerpc: t2080rdb: Enable RTC support 2021-03-23 18:06:07 +05:30
riscv riscv: k210: Enable QSPI for spi3 2021-02-25 18:06:08 +08:00
sandbox - adds adc-keys button driver 2021-02-22 12:37:02 -05:00
sh Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
x86 x86: Select advanced Intel code only if allowed 2021-03-09 09:42:12 +08:00
xtensa common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
.gitignore .gitignore: drop include/asm/proc from ignore pattern 2014-06-19 11:18:54 -04:00
Kconfig linker_lists: Fix alignment issue 2020-12-18 20:32:21 -07:00
u-boot-elf.lds arch: Add explicit linker script for u-boot-elf 2020-04-03 11:52:55 -04:00