Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG
器件型号: AM2434
Thread 中讨论的其他器件: UNIFLASH、 SYSCONFIG
uart_uniflash.py 允许将二进制文件刷写到 EVM 上的闪存。 UART 用作将文件发送到闪存到 EVM 的传输接口或接口。 执行 uart_uniflash.py 脚本时、会启动一个多级过程以通过 UART 对外部闪存进行编程。 以下过程从闪存和 OSPI 角度进行。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG
器件型号: AM2434
Thread 中讨论的其他器件: UNIFLASH、 SYSCONFIG
uart_uniflash.py 允许将二进制文件刷写到 EVM 上的闪存。 UART 用作将文件发送到闪存到 EVM 的传输接口或接口。 执行 uart_uniflash.py 脚本时、会启动一个多级过程以通过 UART 对外部闪存进行编程。 以下过程从闪存和 OSPI 角度进行。

1.初始 UART 引导加载程序传输
在 PC 上执行以下命令后、
python uart_uniflash.py -p COM3 --cfg=sbl_prebuilt/am243x-evm/sbl_uart_uniflash.cfg
2.由 SBL 完成 OSPI 控制器初始化
在目标上运行 SBL_UART_UNIFLASH 后:

3、闪存准备
通常执行以下两个过程:
OSPI_writeCmd(0x66); // Reset Enable
OSPI_writeCmd(0x99); // Reset Memory
4.闪存编程操作
对于.cfg 中的每个文件:
--file=../path/to/app.release.appimage --operation=flash --flash-offset=0x80000
会发生以下情况:
5.闪存控制器状态
编程期间、OSPI 控制器以以下方式运行:
刷写后闪存的角色
对闪存进行编程并且器件复位后、会发生以下情况:
引导流程概述
加电→ROM Boot→Flash Detection→Load SBL→SBL Execution→Load Application
ROM 引导加载程序初始化
2.通过 ROM 检测闪存设备
3.引导加载程序映像标头读取
ROM 从闪存(通常为 0x0)中的固定偏移量读取、闪存为引导映像标头、其中包含魔法编号、映像大小、加载地址、入口点。
4. SBL 加载
5. SBL 现在控制闪存
SBL 通过配置以下内容来重新初始化 OSPI 以获得出色性能:
6.从闪存加载应用程序
SBL 从闪存中从--flash-offset 参数中指定的偏移处读取应用程序映像:
现在、每个应用程序都可以: