Page 1 of 1

按文档方式修改设备树,串口无法使用

Posted: 2025-08-11 2:27
by wjh
Lyra Plus开发板

一开始直接复制文档里的格式:
&uart1 {
pinctrl-0 = <&rm_io12_uart1_tx &rm_io13_uart1_rx>;
status = "okay";
};
可以生成ttyS1,但是shell和C操作都没有办法收发。

后面参考了一下别人的格式,改成:
&uart1 {
dma-names = "tx", "rx";
pinctrl-names = "default";
pinctrl-0 = <&rm_io12_uart1_tx &rm_io13_uart1_rx>;
status = "okay";
};
就可以正常使用串口了,其他操作都是一样的,我都是仅修改了设备树,编译镜像,给板子更新update.img

Re: 按文档方式修改设备树,串口无法使用

Posted: 2025-08-13 1:19
by Crocodile
您好,这应该是我们文档错误,默认uart1 是没有pinctrl-names的额,只有pinctrl-0不会生效引脚复用设置只会注册uart1 控制器,我们会在验证后更新文档

Re: 按文档方式修改设备树,串口无法使用

Posted: 2025-08-18 15:08
by zhanghl
开发板型号:Luckfox Lyra Ultra
修改了设备树配置: Lyra-sdk/kernel-6.1/arch/arm/boot/dts/rk3506b-luckfox-lyra-ultra.dts
&uart1 {
pinctrl-0 = <&rm_io20_uart1_tx &rm_io18_uart1_rx>;
status = "okay";
};
&uart2 {
pinctrl-0 = <&rm_io31_uart2_tx &rm_io30_uart2_rx>;
status = "okay";
};
可以生成ttyS1,也是同样的问题,shell和C操作都没有办法收发,文档是否有更新呢?如何解决?

Re: 按文档方式修改设备树,串口无法使用

Posted: 2025-08-21 9:37
by Crocodile
我们之前给的方案是iomux设置复用,在wiki中有说明,也可以添加 pinctrl-names = "default";来解决

Re: 按文档方式修改设备树,串口无法使用

Posted: 2025-09-04 6:13
by wjh
zhanghl wrote: 2025-08-18 15:08 开发板型号:Luckfox Lyra Ultra
修改了设备树配置: Lyra-sdk/kernel-6.1/arch/arm/boot/dts/rk3506b-luckfox-lyra-ultra.dts
&uart1 {
pinctrl-0 = <&rm_io20_uart1_tx &rm_io18_uart1_rx>;
status = "okay";
};
&uart2 {
pinctrl-0 = <&rm_io31_uart2_tx &rm_io30_uart2_rx>;
status = "okay";
};
可以生成ttyS1,也是同样的问题,shell和C操作都没有办法收发,文档是否有更新呢?如何解决?
照着RK官方的开发文档去配置设备树,或者按我最开始贴的那个配置,加上dma-names = "tx", "rx";
pinctrl-names = "default";应该就可以,很简单的问题
瑞芯微官方的开发文档相对更多更详细,有些甚至还有教你排查方法,建议去看那个,不过瑞芯微的官网好像找不到啥文档资料,我是在正点原子网站上下载的。

Re: 按文档方式修改设备树,串口无法使用

Posted: 2025-09-05 1:17
by Crocodile
Rockchip文档资料主要附带在SDK中吗,在 $SDK/doc 目录下有各个功能使用的文档,我们的wiki主要是提炼出核心内容,需要进一步了解可以参考 SDK 中 Rockchip 的文档