Other Parts Discussed in Thread: TCA6424, UNIFLASH
Tool/software:
Hello,
Couple questions related to boot :
1. When manually test cold POR_RST by pressing SW7 switch while power is ON (not power ON reset), sometimes the boot generates this error :
DMSC Firmware Version 9.2.8--v09.02.08 (Kool Koala)
DMSC Firmware revision 0x9
DMSC ABI revision 3.1
Some tests have failed!!
So what may cause this problem ?
2. Setting condition : fixed OSPI boot (primary)/UART boot (backup) by way of resistors strap only and none of the toggle switches are used or installed.
The systems works fine when initial flashing the OSPI (via UART boot) when OSPI is empty. The power is cycled and system will do OSPI boot.
Use case : secure boot when changing to use the backup key. There are two steps : programming (or select) the backup key then followed with new software
certificate with backup key. What happens is during reprogramming the OSPI with new software the power is lost and therefore it renders the boot unsuccessfully.
In this case there is a need to FORCE UART boot so that the software can be programmed again. As stated above that physically the boot setting is OSPI/UART.
The thought of using the I/O expander device to serve this purpose but the current IO expander TCA6424ARGJR is the volatile device and at the power ON all the ports
are inputs and used to read the boot mode information. So is there a non-volatile IO expander from TI that serves the programming and retaining the boot mode
configuration outputs as UART boot ?
3. If no non-volatile IO expander is found, can we implement the following with TCA6424 device : hold TEST_GPIO3 low, program the IO expander as outputs for UART
boot then initiate the cold boot via TEST_PORZn signal or CONN_MCU_PORz signal ? If so then there will be a hook in SBL to allow software to do IO expander programming.
Is this scheme possible ?
Thanks,
Huynh