rk3588 buildroot 下使用uart8,测试时发现uart8 rx可以,tx 不行 ,示波器量tx在发送时无波形,dts使用的是uart8m1_xfer,用io查看rx(gpio3_A2)、tx(gpio3_A3) pin对应的寄存器0xfec40000 + 0x0060,只是0x00000000,为gpio模式而非uart相关模式,dts中uart8的rx、tx没有复用
查看寄存器错误,uart8m1_xfer是设置为uart相关模式
- dts设置
- 开机已注册
- 测试
- 与pc通讯,可接收,不能发送
- 自收发 无法通过,量波形,发送时无波形
- RK ts_uart 工具(测试文件)
内部 loop back 模式自发自收失败,其他串口ttyS9测试成功
- 排查
- dts无复用如附件.rk3588-evb7-lp4-v10-linux.dtb.dts.tmp,io命令查看功能为uart rx、tx
- 根据 uart_debug.txt (配置文件)配置成gpio 做一下导通测试,或者直接在软件中配置成gpio,看看上下拉是否正常
- lsof | grep ttyS8 看下有没有占用
ttyS8被bt占用,bt_init.sh里写的是 一个变量BT_TTY_DEV,修改为其他即可