ZHCAF17 February   2025 TDA4VM , TDA4VM-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2优化方法
    1. 2.1 引导加载程序从 OSPI 引导介质切换到 SBL
    2. 2.2 Linux 器件树优化
    3. 2.3 文件系统切换到超小型 rootfs
    4. 2.4 Vision_apps 框架优化
    5. 2.5 成像框架优化
    6. 2.6 Vision_apps SRV 应用重新设计
  6. 3详细设计过程
    1. 3.1 Linux 集成 (PSDKLA)
    2. 3.2 成像集成 (PSDKRA)
    3. 3.3 Vision_apps 集成 (PSDKRA)
    4. 3.4 PDK 实现 (PSDKRA)
      1. 3.4.1 针对 OSPI 引导模式构建 R5 SBL
      2. 3.4.2 构建 combined_appImage
      3. 3.4.3 复制 TIFS 和 phy 调优参数
    5. 3.5 将二进制文件刷写到 OSPI
    6. 3.6 在 SD 卡上使用超小型 rootfs 安装 vision_apps 的步骤
    7. 3.7 将测试数据复制到 SD 卡(仅限一次)
    8. 3.8 init 脚本
    9. 3.9 将文件系统从 SD 移动到 eMMC
  7. 4日志
  8. 5总结
  9. 6参考资料

日志

MCU UART Logs
===============

[2025-02-17 18:04:19.893] SBL Revision: 01.00.10.01 (Feb 14 2025 - 17:25:21)
[2025-02-17 18:04:19.973] TIFS  ver: 8.6.3--v08.06.03 (Chill Capybar

MAIN UART Logs
=================

[2025-02-17 18:04:20.282] NOTICE:  BL31: Built : 11:48:17, Oct 29 2024
[2025-02-17 18:04:20.282] ERROR:   GTC_CNTFID0 is 0! Assuming 200000000 Hz. Fix Bootloader
[2025-02-17 18:04:20.298] [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd080]
[2025-02-17 18:04:20.299] [    0.000000] Linux version 5.10.162-g76b3e88d56 (oe-user@oe-host) (aarch3
[2025-02-17 18:04:20.331] [    0.000000] Machine model: Texas Instruments K3 J721E SoC
[2025-02-17 18:04:20.346] [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options ')
[2025-02-17 18:04:20.346] [    0.000000] printk: bootconsole [ns16550a0] enabled
[2025-02-17 18:04:20.474] ERROR:   GTC_CNTFID0 is 0! Assuming 200000000 Hz. Fix Bootloader
[2025-02-17 18:04:22.308] APP: Init ... !!!
[2025-02-17 18:04:22.308] MEM: Init ... !!!
[2025-02-17 18:04:22.308] MEM: Initialized DMA HEAP (fd=4) !!!
[2025-02-17 18:04:22.308] MEM: Init ... Done !!!
[2025-02-17 18:04:22.308] IPC: Init ... !!!
[2025-02-17 18:04:22.324] IPC: Init ... Done !!!
[2025-02-17 18:04:22.324] REMOTE_SERVICE: Init ... !!!
[2025-02-17 18:04:22.340] REMOTE_SERVICE: Init ... Done !!!
[2025-02-17 18:04:22.340]      0.000000 s: GTC Frequency = 0 MHz
[2025-02-17 18:04:22.340] APP: Init ... Done !!!
[2025-02-17 18:04:22.340]      0.000000 s:  VX_ZONE_INIT:Enabled
[2025-02-17 18:04:22.340]      0.000000 s:  VX_ZONE_ERROR:Enabled
[2025-02-17 18:04:22.340]      0.000000 s:  VX_ZONE_WARNING:Enabled
[2025-02-17 18:04:22.356]      0.000000 s:  VX_ZONE_INIT:[tivxInitLocal:130] Initialization Done !!!
[2025-02-17 18:04:22.356]      0.000000 s:  VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done !
[2025-02-17 18:04:22.372] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.372] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.388]      0.000000 s: ISS: Enumerating sensors ... !!!
[2025-02-17 18:04:22.388]      0.000000 s: ISS: Enumerating sensors ... found 0 : IMX390-UB953_D3
[2025-02-17 18:04:22.404]      0.000000 s: ISS: Enumerating sensors ... found 1 : AR0233-UB953_MARS
[2025-02-17 18:04:22.404]      0.000000 s: ISS: Enumerating sensors ... found 2 : AR0820-UB953_LI
[2025-02-17 18:04:22.404]      0.000000 s: ISS: Enumerating sensors ... found 3 : UB9xxx_RAW12_TESTPN
[2025-02-17 18:04:22.420]      0.000000 s: ISS: Enumerating sensors ... found 4 : UB96x_UYVY_TESTPATN
[2025-02-17 18:04:22.420]      0.000000 s: ISS: Enumerating sensors ... found 5 : GW_AR0233_UYVY
[2025-02-17 18:04:22.436] Sensor selected : IMX390-UB953_D3
[2025-02-17 18:04:22.436]      0.000000 s: ISS: Querying sensor [IMX390-UB953_D3] ... !!!
[2025-02-17 18:04:22.436]      0.000000 s: ISS: Querying sensor [IMX390-UB953_D3] ... Done !!!
[2025-02-17 18:04:22.436] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.452] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.452] Reading calmat file 
[2025-02-17 18:04:22.452] file read completed 
[2025-02-17 18:04:22.516] EGL: version 1.5
[2025-02-17 18:04:22.532] EGL: GL Version = (null)
[2025-02-17 18:04:22.548] EGL: GL Vendor = (null)
[2025-02-17 18:04:22.548] EGL: GL Renderer = (null)
[2025-02-17 18:04:22.548] EGL: GL Extensions = (null)
[2025-02-17 18:04:22.660] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.660] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.660] 
[2025-02-17 18:04:22.661] 
[2025-02-17 18:04:22.676]  ==========================
[2025-02-17 18:04:22.676]  Demo : Integrated SRV
[2025-02-17 18:04:22.676]  ==========================
[2025-02-17 18:04:22.676] 
[2025-02-17 18:04:22.676]  p: Print performance statistics
[2025-02-17 18:04:22.676] 
[2025-02-17 18:04:22.676]  e: Export performance statistics
[2025-02-17 18:04:22.676] 
[2025-02-17 18:04:22.676]  x: Exit
[2025-02-17 18:04:22.676] 
[2025-02-17 18:04:22.676]  Enter Choice: REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU D
[2025-02-17 18:04:22.692] REMOTE_SERVICE: ERROR: CPU 4 is not enabled or invalid CPU ID
[2025-02-17 18:04:22.692]      0.000000 s: ISS: Starting sensor [IMX390-UB953_D3] ... !!!
[2025-02-17 18:04:22.708]      0.000000 s: ISS: Starting sensor [IMX390-UB953_D3] ... !!!