RK3588 引脚组与外设复用
1. 数据来源
rk3588s-pinctrl.dtsi含400余个 rockchip,pins group,供 RK3588/RK3588S及板级DTS引用。它是候选功能集合,不表示所有功能同时启用。
2. 主要类别
- UART及 flow-control;
- I2C;
- SPI和 chip select;
- PWM/IR;
- I2S/TDM/PDM/SPDIF;
- SDMMC/eMMC;
- GMAC;
- CAN;
- PCIe reset/clkreq/wake;
- USB VBUS/OTG ID;
- HDMI/DP/eDP sideband;
- camera clock/control;
- MIPI/BT接口;
- JTAG;
- PMIC/clock/reset。
3. M0/M1/M2
名称如 uart2m0_xfer表示同一 controller的第0套路由。选择步骤:
1.查看原理图 ball连接;
2.在 pinctrl include找对应 group;
3.确认所有信号来自同一路由;
4.检查 pins是否被其它 enabled node引用;
5.确认选择的 M0/M1组和其 mux编码匹配板级走线;
6.检查 VCCIO。
4. Consumer例
1 | &uart2 { |
不要仅启用 controller而遗漏 pinctrl,也不要同时启用两套复用到相同 pins的 controller。
5. GPIO命名
GPIO3_B5:
1 | bank = 3 |
Linux GPIO character device以 chip+line为主,不保证传统全局 GPIO number稳定。
6. 存储
eMMC pins跨专用 IOC区域,时钟、命令、数据和 reset需成套。SDMMC还需 card detect/power GPIO及 voltage switching。错误 drive/pull常表现为高频 CRC错误。
7. UART调试
确认 bootargs console、chosen stdout-path、FIQ debugger和 UART node使用同一 controller/route。复用 debug UART pins会造成启动后日志突然消失。
8. PCIe
PERST#、CLKREQ#、WAKE#是 sideband,并不等于 PCIe PHY lane。Active-low和上电时序由 consumer driver/GPIO flags处理。
9. 板级覆盖
SoC .dtsi提供 definitions;板级 .dts/.dtsi选择 states。评审应从最终 enabled consumer反向追踪 pin group,而不是把 definitions当已占用资源。
正在加载留言…