您尚未登录。

楼主 # 2022-07-21 09:25:49

zhongtao1701
会员
注册时间: 2022-02-05
已发帖子: 11
积分: 11

D1s的buildroot构建中如何调整引导程序(boot0, opensbi以及uboot)的串口终端

在D1s的buildroot构建中,例如 https://gitee.com/GloomyGhost/Buildroot-YuzukiSBC, 想要调整串口
  UART0 (PE2, PE3) - > UART3(PB6, PB7)

按下面的讨论主题进行调整

求助大佬。D1s如何修改默认的Debug串口节点为UART3,也就是PB6 PB7
https://debugdump.com/topic/1429/%E6%B1 … lang=zh-CN

1)uboot 修改  CONFIG_CONS_INDEX 为 4
2) 修改opensbi内的 UART基地址为UART3

管脚复用应该在sys_config.fex进行调整,但是在buildroot中只提供了二进制的
buildroot/board/allwinner-generic/sun20i-d1s/bin/boot0_sdcard.fex

请教各位大佬,这个应该如何进行调整? 谢谢

离线

楼主 #1 2022-07-21 15:43:37

zhongtao1701
会员
注册时间: 2022-02-05
已发帖子: 11
积分: 11

Re: D1s的buildroot构建中如何调整引导程序(boot0, opensbi以及uboot)的串口终端

或者哪位大侠手里有使用UART3(PB6, PB7)的boot0_sdcard.fex, 是否能提供一份,谢谢!

离线

楼主 #2 2022-07-23 12:50:54

zhongtao1701
会员
注册时间: 2022-02-05
已发帖子: 11
积分: 11

Re: D1s的buildroot构建中如何调整引导程序(boot0, opensbi以及uboot)的串口终端

由于无法重建boot0_sdcard.fex, 参见下面对fex文件的分析,直接修改二进制文件boot0_sdcard.fex

https://whycan.com/t_6638.html
https://linux-sunxi.org/Boot0

调整为UART3以及PB6, PB7的管脚复用定义,然后重新生成文件的checksum

boot0_sdcard.png

然后重新烧录,最终效果boot0和opensbi在UART0和UART3都无输出显示

uboot和kernel的显示成功转到UART3上
U-Boot 2018.05-config-dirty (Jul 22 2022 - 19:54:57 -0700) Allwinner Technology

[00.327]DRAM:  64 MiB
[00.329]Relocation Offset is: 01ee9000
[00.333]secure enable bit: 0
[00.336]CPU=720 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz  MBus=300Mhz
[00.343]flash init start
[00.345]workmode = 0,storage type = 1
[00.348][mmc]: mmc driver ver uboot2018:2021-11-19 15:38:00
[00.354][mmc]: get sdc_type fail and use default host:tm1.
[00.361][mmc]: can't find node "mmc0",will add new node
[00.365][mmc]: fdt err returned <no error>
[00.369][mmc]: Using default timing para
[00.373][mmc]: SUNXI SDMMC Controller Version:0x50310
[00.409][mmc]: card_caps:0x3000000a
[00.412][mmc]: host_caps:0x3000003f


不知道为什么boot0和opensbi的串口输出没有起效果,哪位大佬能指点一下? 谢谢

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn