前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全志芯片Tina Linux 修改 UART 引脚、UART端口 (2)

全志芯片Tina Linux 修改 UART 引脚、UART端口 (2)

作者头像
阿志小管家
发布2024-02-02 16:50:16
1510
发布2024-02-02 16:50:16
举报
场景二:使用UART3,需要从UART0改为UART3(PB6,PB7)
  1. 修改sys_config.fex(BOOT0与Uboot的串口)

sys_config.fex 的路径是 device/config/chips/t113/configs/evb1/sys_config.fex 中的 uart_debug_port

修改前:

代码语言:javascript
复制
[uart_para]
uart_debug_port = 0
uart_debug_tx   = port:PF02<3><1><default><default>
uart_debug_rx   = port:PF04<3><1><default><default>

修改后

代码语言:javascript
复制
[uart_para]
uart_debug_port = 3
uart_debug_tx   = port:PB06<7><1><default><default>
uart_debug_rx   = port:PB07<7><1><default><default>
  1. 修改设备树(Linux使用的串口输出)

路径:device/config/chips/t113/configs/evb1/board.dts

修改前

代码语言:javascript
复制
uart3_pins_a: uart3_pins@0 {
	pins = "PC6", "PC7";
	function = "uart0";
	drive-strength = <10>;
	allwinner,muxsel = <4>;
	bias-pull-up;
};

uart3_pins_b: uart3_pins@1 {
	pins = "PC6", "PC7";
	function = "gpio_in";
};

&uart0 {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&uart0_pins_a>;
	pinctrl-1 = <&uart0_pins_b>; 
	status = "okay"; 
};

&uart3 {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&uart3_pins_a>;
	pinctrl-1 = <&uart3_pins_b>;
	status = "disabled"; 
};

修改后

代码语言:javascript
复制
uart3_pins_a: uart3_pins@0 {
	pins = "PB6", "PB7";
	function = "uart0";
	drive-strength = <10>;
	allwinner,muxsel = <7>;
	bias-pull-up;
};

uart3_pins_b: uart3_pins@1 {
	pins = "PB6", "PB7";
	function = "gpio_in";
};

&uart0 {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&uart0_pins_a>;
	pinctrl-1 = <&uart0_pins_b>; 
	status = "disabled";                               # 关闭UART0
};

&uart3 {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&uart3_pins_a>;
	pinctrl-1 = <&uart3_pins_b>;
	status = "okay";                                   # 开启UART3
};
  1. 修改UBOOT CONSOLE INDEX

路径:brandy/brandy-2.0/u-boot-2018/configs/sun8iw20p1_defconfig 增加下列内容

代码语言:javascript
复制
CONFIG_SPECIFY_CONSOLE_INDEX=y
CONFIG_CONS_INDEX=4                            # UART 3+1 = 4 
  1. 修改启动bootargs

路径:device/config/chips/t113/configs/evb1/env.cfg

修改前

代码语言:javascript
复制
earlyprintk=sunxi-uart,0x02500000
initcall_debug=0
console=ttyS0,115200

修改后 earlyprintk=sunxi-uart,0x02500000 需要修改为 UART3 的地址,查阅手册可知为 0x02500C00

代码语言:javascript
复制
earlyprintk=sunxi-uart,0x02500C00
initcall_debug=0
console=ttyS3,115200

注意 ARM 平台还需要设置Kernel,如下:

make kernel_menuconfig 找到 Kernel low-level debugging functions,修改寄存器地址

RISC-V 不需要此操作

原贴链接:https://bbs.aw-ol.com/topic/1673/

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-02-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 注意 ARM 平台还需要设置Kernel,如下:
    • RISC-V 不需要此操作
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档