Part Number: TDA4VEN-Q1
Other Parts Discussed in Thread: UNIFLASH
We are using a custom board based on TDA4VEN (J722S SoC) and programming software into OSPI flash.
Environment
- SoC: TDA4VEN
- SDKs:
ti-processor-sdk-linux-adas-j722s-evm-11_01_00_03ti-processor-sdk-rtos-j722s-evm-11_01_00_04
Programming procedure
We program OSPI using UART boot mode with Uniflash.
- Boot mode (UART):
- SW3:
11011100 - SW4:
00000000
- SW3:
- Used image:
sbl_uart_uniflash.release.hs_fs.tiimage
The following components are written to OSPI:
flash-phy-tuning-datahsm-demo-firmware-j722s-hs-fs.binlinux.appimage.hs_fsu-boot.imgsbl_ospi_hlos.release.hs_fs.tiimage
Observed behavior
-
When booting in OSPI boot mode only:
- SW3:
11001110 - SW4:
01000000
→ System boots successfully and SBL from OSPI runs normally.
- SW3:
-
When booting in Primary = OSPI, Backup = UART:
- SW3:
11010000 - SW4:
00110000
→ The device does not boot from OSPI, and instead always falls back to UART boot mode.
- SW3:
This behavior is reproducible not only on our custom board, but also on the J722S EVM.
Question
On our production board, boot-mode switches will not be populated.
Our expected flow is:
- Use backup UART boot to program OSPI
- On the next power-up, the device should automatically boot from primary OSPI
However, with the current behavior, OSPI is not selected when Primary=OSPI & Backup=UART.
- Is this expected behavior for J722S/TDA4VEN?
- Are there any known limitations, configuration requirements, or recommended solutions?
- Do we need any additional OSPI header/signature configuration for the ROM/SBL to accept OSPI as a valid primary boot source in this mode?
Any guidance would be appreciated.

