S32G just support serial download a M7 image to run by internal rom codes, our S32G DS IDE have a flash tools to use this feature to burn the image to external device. So current image burn method will divide into 2 step:
1: burn a uboot into the external device by S32G DS flash tools.
2: reboot the codes with uboot and run with network to burn the linux image into external device.
which need two working place on manufacture line, and customer wish to have a one time on-line tools, which means we need use serial port to boot uboot directly but S32G rom codes do not support it.
We have a reference tools of S32V but which IP difference is big between on S32V and S32G, So we can not reuse it and have to develop a new one.
The development working include:
|
序号
|
开发工作
|
说明
|
开发者
|
|
1
|
开发
|
根据S32G的serial boot协议要求,开发PC端的串口工具来下载M7镜像
|
John.Li
|
|
2
|
开发
|
根据自定义协议要求,开发PC端的串口工具来下载A核Bootloader到SRAM中
|
John.Li
|
|
3
|
开发
|
根据自定义协议要求,开发M7镜像的串口接收与Checksum逻辑
|
John.Li
|
|
4
|
开发
|
修改M7镜像支持串口0
|
John.Li
|
|
5
|
开发
|
开发实现M7镜像的串口单字节同步收发函数
|
John.Li
|
|
6
|
开发
|
开发实现A53启动功能
|
John.Li
|
|
7
|
调试与Debug
|
调试解决串口接收乱码问题(Serial boot rom codes仍然在回送消息串口)
|
John.Li
|
|
8
|
调试与Debug
|
提供 解决A核启动串口halt思路(Serial boot rom codes仍然占用串口)
|
John.Li
|
|
9
|
调试与Debug
|
优化M7镜像,缩小大小
|
Tony.Zhang
|
|
10
|
调试与Debug
|
根据M7镜像和A核 Uboot在SRAM中的内存分配要求,重排M7镜像位置,避免冲突
|
Tony.Zhang
|
|
11
|
调试与Debug
|
在M7中初始化SRAM空间
|
Tony.Zhang
|
|
12
|
调试与Debug
|
在M7中设置SRAM可执行空间
|
Tony.Zhang
|
|
13
|
调试与Debug
|
调试解决由于cache没有及时回写导致的下载镜像错误的问题
|
Tony.Zhang
|
|
14
|
调试与Debug
|
集成,调优与文档
|
John.Li
|
Pls check the attachment for the doc/codes/binary release which include:
Release
|->M7: Linflexd_Uart_Ip_Example_S32G274A_M7: S32DS M7工程。
|->PC: s32gSerialBoot_Csharp: PC端的Visual Studio的C#的串口工具工程。
|->Test:
| |-> 115200_bootloader.bin: S32DS M7工程编译出来的bin文件,波特率为115200
| |-> 921600_bootloader.bin: S32DS M7工程编译出来的bin文件,波特率为921600
| |->load_uboot.bat: 运行工具的批处理文件,运行成功后打开串口可以看到Uboot执行,默认使用的波特率是115299
| |->readme.txt:其它测试命令
| |->s32gSerialBoot.exe:编译出来的PC端串口工具
| |->u-boot.bin: BSP29默认编译出来的u-boot.bin.