Other Parts Discussed in Thread: SYSCONFIG
拆分了 e2e.ti.com/.../am6442-remoteproc-linux-debugging-questions
嗨、Nick、
感谢所有链接、我现在一切都正常。
我有几个稍微无关的问题。
为了提供一些背景信息、我正在为 am263px 创建一个超小 SBL。 SBL 的目标是初始化 FSI、通过 FSI 流式传输 mcelf 映像、然后引导 R5 内核。 我们使用 UART 引导模式、并从连接的 am64 通过 UART 进行 SBL 流式传输。 由于 UART 速度太慢而无法流式传输 mcelf 图像、因此必须使用此方法。 我目前正在尝试尽可能减小 SBL 的大小、以缩短 UART 流媒体时间。 我看到您发布的关于 缩短 UART 引导流时间的文章很有帮助、但我对 SBL 大小优化有一些疑问。
- 这篇文章 说:“如果器件是 HS-HSMRt 器件、则会加载 FS 固件(TIFS-MCU 固件) 可选 “。 但是、如果没有出现链接错误、我无法在 SysConfig 中完全删除 HSMCLIENT 依赖项(请参阅下文)。 bootloader_soc.c 代码不断投诉、因为它缺少引用;但我认为我可以去除所有投诉代码、因为我们正在跳过引导加载程序的验证。 我是否认为可以删除这段代码正确?如果可以、我是否可以通过任何方式更改 SysConfig 来完成此操作?
symbol in file --------- ---------------- HsmClient_procAuthBootFinish /home/jweyer/aec-toolchain/sysroots/x86_64-aecsdk-linux/usr/share/ti/mcu_plus_sdk_am263px_11.00.00.19/source/drivers/lib/drivers.am263px.r5f.ti-arm-clang.nortos.debug.lib<bootloader_soc.obj> HsmClient_procAuthBootStart /home/jweyer/aec-toolchain/sysroots/x86_64-aecsdk-linux/usr/share/ti/mcu_plus_sdk_am263px_11.00.00.19/source/drivers/lib/drivers.am263px.r5f.ti-arm-clang.nortos.debug.lib<bootloader_soc.obj> HsmClient_procAuthBootUpdate /home/jweyer/aec-toolchain/sysroots/x86_64-aecsdk-linux/usr/share/ti/mcu_plus_sdk_am263px_11.00.00.19/source/drivers/lib/drivers.am263px.r5f.ti-arm-clang.nortos.debug.lib<bootloader_soc.obj> gHSMClient /home/jweyer/aec-toolchain/sysroots/x86_64-aecsdk-linux/usr/share/ti/mcu_plus_sdk_am263px_11.00.00.19/source/drivers/lib/drivers.am263px.r5f.ti-arm-clang.nortos.debug.lib<bootloader_soc.obj> error: unresolved symbols remain error: errors encountered during linking; "/home/jweyer/source/repos/ApcGen5/src/dsp/boot/sbl_uart_mcelf.out" not built
- 是否有任何方法可以完全删除所有调试逻辑? 在 sysconfig->Debug Log 中、我可以取消选中所有调试选项、这肯定会减小 SBL 的大小;但是、我似乎无法完全删除它、因为 sysconfig->bootloader 和 sysconfig->int xbar 对它有依赖性。 是否有方法可以完全删除所有调试逻辑?
- 我们使用自定义 makefile 来构建映像(不使用 CCS)、我已经看到 SysConfig CLI 提供`--dependentScript`选项。 我希望使用此选项或其他技术来包含其他 SysConfig 脚本。 例如、我要有一个基本的 SysConfig 脚本“foo.syscfg",“,并、并视需要添加调试逻辑和另一个调试 SysConfig 脚本“debug.syscfg"。“。 这是可能的吗? 下面是有关如何完成此操作的最佳猜测(请参阅 cmd_syscfg):
quiet_cmd_syscfg = SYSCFG $< cmd_syscfg = $(SYSCFG_NODE) $(SYSCFG_CLI_PATH)/dist/cli.js $(SYSCFG_V) --script $< --dependentScript $(*** DEBUG SCRIPT HERE? ***) --product $(SYSCFG_SDKPRODUCT) --context $(R5_CORE_CONTEXT_$(R5_CORE_ID)) --device AM263Px --part AM263P4 --package ZCZ_S --output $(obj)/generated/ $(QUIET_REDIRECT_INFO_AND_WARNING) define do_syscfg @echo " $(quiet_cmd_syscfg)" $(Q)$(cmd_syscfg) endef - 对于如何减小 SBL 的大小或加快通过 UART 进行 SBL 流式传输、您是否有任何其他建议?
感谢您的帮助、
- Jared