Firefly开源社区

打印 上一主题 下一主题

[技术讨论] AIO-3568J 修改波特率115200后,Uboot乱码,Kernel打印正常

31

积分

0

威望

0

贡献

技术小白

积分
31

AIO-3568J 修改波特率115200后,Uboot乱码,Kernel打印正常

发表于 2023-1-12 11:30:31      浏览:2637 | 回复:3        打印      只看该作者   [复制链接] 楼主
AIO-3568J 修改波特率115200

Ubuntu18.04系统

修改Uboot:
~\u-boot\configs\firefly-rk3568_defconfig   

-CONFIG_BAUDRATE=1500000
+CONFIG_BAUDRATE=115200


保存修改后,重新编译
./build.sh uboot

修改Kernel:  
~\kernel\arch\arm64\boot\dts\rockchip\rk3568_linux.dtsi
fiq-debugger {
                compatible = "rockchip,fiq-debugger";
                rockchip,serial-id = <2>;
                rockchip,wake-irq = <0>;
                /* If enable uart uses irq instead of fiq */
                rockchip,irq-mode-enable = <1>;
                rockchip,baudrate = <115200>;//<1500000>;  /* Only 115200 and 1500000 */
                interrupts = <GIC_SPI 252 IRQ_TYPE_LEVEL_LOW>;
                pinctrl-names = "default";
                pinctrl-0 = <&uart2m0_xfer>;
                status = "okay";
        };


修改完成后,重新编译
sudo ./build.sh extboot

更新链接
sudo ./mkfirmware.sh

打包固件
sudo ./build.sh updateimg

------------------------------------------------------

重新烧录后,SecureCRT调试软件中,波特率按照115200打开串口: Uboot显示乱码,Kernel打印正常

鼢哌鼢鼢鼢骺鼢鼢圻亏鼢鼢鼢鼢鼢亏鼢鼢鼢哌哌哌哌哌哌哌圻哌哌骺鼢鼢鼢鼢哌哌哌哌亏哌哌鼢鬟哌鼢亏哌哌骺鼢哌哌鼢骰鼢鼢骺鼢鼢圻鼢鼢哌哌哌哌鼢鼢圻哌哌哌哌哌哌哌哌圻鼢鼢鼢镞鼢哌哌哌哌哌哌鼢鼢圻哌哌鼢鼢圻哌哌哌哌哌鼢鼢鼢哌鼢鼢哌鼢鼢哌亏鼢哌哌鼢哌哌鼢哌哌鼢鼢亏鼢鼢>唼e缁珑飛~燐铫餆|骺|oo~黯堰縸飛伉繑C肯q黠_窟傹z谗消锎坑挚亲浻:瑶訚帄抻瑶跟淄肟鼢繌钧鲲键珩脔鼢棘蛲萧顼偤鳜~x莛唿帢䦟笨瘙橚荥婵巷_掶?征飚楒縒快_?屈佧/茳髑牺傀泅嗃z洒忐齸唪~矜_蕊轫鼽峻桷忂o呖棹析啉~[[    0.165301] console [ttyFIQ0] enabled
    0.165301] console [ttyFIQ0] enabled
[    0.173011] bootconsole [uart8250] disabled
[    0.173011] bootconsole [uart8250] disabled
[    0.177898] Registered fiq debugger ttyFIQ0
[    0.179013] vcc3v3_sys: supplied by dc_12v
[    0.179526] vcc5v0_sys: supplied by dc_12v




回复

使用道具 举报

2077

积分

10

威望

12

贡献

中级创客

Rank: 4

积分
2077
发表于 2023-1-12 14:17:54        只看该作者  沙发
因为uboot没有修改成功,还需要去rkbin仓库修改
查看rkbin/tools/ddrbin_tool_user_guide.txt中的功能1,学习使用工具修改ddrbin中的波特率参数
查看rkbin/RKBOOT/RK3568MINIALL.ini看看当前rk3568使用的是哪个ddrbin,这个跟你的sdk版本有关,假设是rk3568_ddr_1560MHz_v1.13.bin
在你填写好ddrbin_param.txt后执行
./ddrbin_tool ddrbin_param.txt rk3568_ddr_1560MHz_v1.13.bin
然后把修改后的ddrbin放回原位,重新编译uboot,烧录uboot和loader
回复

使用道具 举报

31

积分

0

威望

0

贡献

技术小白

积分
31
发表于 2023-1-28 00:04:03        只看该作者  板凳
Liuth 发表于 2023-1-12 14:17
因为uboot没有修改成功,还需要去rkbin仓库修改
查看rkbin/tools/ddrbin_tool_user_guide.txt中的功能1, ...

你好,修改uboot过程如下,同时有两个疑惑

===================================================

1、rkbin/tools/ddrbin_tool_user_guide.txt
---------------
function 1: modify ddr.bin file from ddrbin_param.txt.
        1) modify 'ddrbin_param.txt', set ddr frequency, uart info etc what you want.
           If want to keep items default, please keep these items blank.
        2) run 'ddrbin_tool' with argument 1: ddrbin_param.txt, argument 2: ddr bin file.
           like: ./ddrbin_tool ddrbin_param.txt px30_ddr_333MHz_v1.13.bin
------------------

2、rkbin/tools/ddrbin_param.txt
修改如下参数
-------------
uart baudrate=115200
-------------

3、rkbin/RKROOT/RK3568MINIALL.ini
-------------
[CHIP_NAME]
NAME=RK3568
[VERSION]
MAJOR=1
MINOR=1
[CODE471_OPTION]
NUM=1
Path1=bin/rk35/rk3568_ddr_1560MHz_v1.13.bin
Sleep=1
[CODE472_OPTION]
NUM=1
Path1=bin/rk35/rk356x_usbplug_v1.14.bin
[LOADER_OPTION]
NUM=2
LOADER1=FlashData
LOADER2=FlashBoot
FlashData=bin/rk35/rk3568_ddr_1560MHz_v1.13.bin
FlashBoot=bin/rk35/rk356x_spl_v1.12.bin
[OUTPUT]
PATH=rk356x_spl_loader_v1.13.112.bin
[SYSTEM]
NEWIDB=true
[FLAG]
471_RC4_OFF=true
RC4_OFF=true
-------------

ini文件中: FlashData: bin/rk35/rk3568_ddr_1560MHz_v1.13.bin
rk35目录下还有一个:rk3568_ddr_1560MHz_v1.05-firefly.bin

4、OUTPUT文件为:rk356x_spl_loader_v1.13.112.bin
在目录 u-boot 下

更新各部分镜像链接到 rockdev/ 目录 : ./mkfirmware.sh

有打印:
------------
Linking uboot.img from /home/think/proj/rk356x_linux_release_20211019/u-boot/uboot.img...
Done linking uboot.img
Linking MiniLoaderAll.bin from /home/think/proj/rk356x_linux_release_20211019/u-boot/rk356x_spl_loader_v1.13.112.bin...
Done linking MiniLoaderAll.bin
------------

5、./ddrbin_tool ddrbin_param.txt rk3568_ddr_1560MHz_v1.13.bin
所以现有疑惑:
1)此命令中第二个参数: rk3568_ddr_1560MHz_v1.13.bin
                            还是选rk3568_ddr_1560MHz_v1.05-firefly.bin
2)此命令更新的文件是rk356x_spl_loader_v1.13.112.bin 还是命令中的第二参数文件?

执行此命令之前,需要备份哪个文件

6、执行过上述命令后,执行: ./build.sh uboot
重新编译uboot

可以同时更新uboot和loader?
回复

使用道具 举报

2077

积分

10

威望

12

贡献

中级创客

Rank: 4

积分
2077
发表于 2023-1-29 10:20:10        只看该作者  地板
langtuteng312 发表于 2023-1-28 00:04
你好,修改uboot过程如下,同时有两个疑惑

===================================================

是哪个bin文件以ini文件为准
更新的文件是命令中第二参数的bin文件
用不着备份,用git管理就行,能还原回来
编译uboot之后,uboot.img和新生成的spl_loader都会在u-boot文件夹下
在loader模式下先执行
upgrade_tool di -u uboot.img
再执行
upgrade_tool ul rk356x_spl_loader_vxxxx.bin
如果是windows就先单独勾选uboot,下载完成后再单独勾选loader
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表