PCIe
概述
产品版本
芯片名称 | 内核版本 |
---|
RK1808 | 4.4,4.19 |
RK3528 | 4.19,5.10,6.1 |
RK3562 | 5.10,6.1 |
RK3566/RK3568 | 4.19,5.10,6.1 |
RK3576 | 6.1 |
RK3588 | 5.4,5.10,6.1 |
说明:RK3399使用不同的PCIe控制器IP,不在本文档覆盖范围,请参考《Rockchip_RK3399_Developer_Guide_PCIe_CN》。
读者对象
本文档(本指南)主要适用于以下工程师:
1. 芯片资源介绍
1.1 RK1808
资源 | 模式 | 支持lane | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 | RC | x2 lane | 否 | 否 | L0s/L1 | 内部时钟 |
1.2 RK3528
资源 | 模式 | 支持lane拆分 | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 x1 | RC | 否 | 否 | 否 | ALL | 内部时钟 |
1.3 RK3562
资源 | 模式 | 支持lane拆分 | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 x1 | RC | 否 | 否 | 否 | ALL | 内部时钟 |
1.4 RK3566
资源 | 模式 | 支持lane拆分 | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 x1 | RC | 否 | 否 | 否 | L0s/L1 | 内部时钟 |
1.5 RK3568
1.5.1 控制器
资源 | 模式 | lane拆分 | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 | RC | 1 lane only | 否 | 否 | L0s/L1 | 内部时钟 |
PCIe Gen3 | RC/EP | 1 lane RC + 1 lane RC | 2个读Channel + 2个写Channel | 否 | ALL | 支持pcie30phy |
PCIe Gen3 | RC | 1 lane | 否 | 否 | ALL | 支持pcie30phy |
1.5.2 PHY
资源 | dts节点 | 参考时钟 | 拆分 | 是否combo |
---|
pcie30phy | phy@fe8c0000 | 外部 | 2Lane:默认 | PCIe专用 |
combphy2_psq | phy@fe840000 | 内部/外部 | 1Lane + 1Lane:rockchip,bifurcation | combo |
说明:pcie30phy 2Lane默认配置为PCIe Gen3 x 2 lane,拆分后“PCIe Gen3 x 2 lane”和“PCIe Gen3 x 1 lane”控制器各1Lane。
1.6 RK3576
资源 | 模式 | 支持lane拆分 | 支持DMA | 支持MMU | 支持ASPM | 备注 |
---|
PCIe Gen2 x1 | RC | 否 | 否 | 是 | ALL | 内部时钟 |
1.7 RK3588
说明:
RK3588共有5个PCIe控制器,硬件IP一致,配置不同。其中一个4Lane DM模式可支持作为EP使用,另外2Lane和3个1Lane控制器仅能作为RC使用。
RK3588有两种PCIe PHY,一种为pcie3.0PHY,含2个Port共4个Lane;另一种是pcie2.0 PHY,每个为2.0 1Lane,与SATA和USB combo使用。
pcie3.0 PHY的4Lane可根据需求拆分使用,拆分后需合理配置对应的控制器,所有配置在DTS中完成,无需修改驱动。
使用限制:
- pcie30phy拆分后,pcie30x4控制器,工作于2Lane模式时只能固定配合pcie30phy的port0,工作
于1Lane模式时,只能固定配合pcie30phy的port0lane0;
- pcie30phy拆分后,pcie30x2控制器,工作于2Lane模式时只能固定配合pcie30phy的port1,工作
于1Lane模式时,只能固定配合pcie30phy的port1lane0;
- pcie30phy拆分为4个1Lane,pcie3phy的port0lane1只能固定配合pcie2x1l0控制器,pcie3phy的
port1lane1只能固定配合pcie2x1l1控制器;
- pcie30x4控制器工作于EP模式,可以使用4Lane模式,或者2Lane模式使用pcie30phy的port0,
pcie30phy的port1中2lane可以作为RC配合其他控制器使用。默认使用common clock作为
reference clock时,无法实现pcie30phy port0的lane0工作于EP模式,lane1工作于RC模式配合其
他控制器使用,因为Port0的两个lane是共用一个输入的reference clock,RC和EP同时使用clock可
能会有冲突。
- RK3588 pcie30phy 如果只使用其中一个port,另一个port也需要供电,refclk等其他信号可接地。

1.7.1 控制器
资源 | 模式 | dts节点 | 可用phy | 内部DMA | 支持ASPM | 支持MMU |
---|
PCIe Gen3 x4 | RC/EP | pcie3x4: pcie@fe150000 | pcie30phy | 2个读Channel + 2个写Channel | ALL | 是 |
PCIe Gen3 x2 | RC | pcie3x2: pcie@fe160000 | pcie30phy | 否 | ALL | 是 |
PCIe Gen3 x1 | RC | pcie2x1l0: pcie@fe170000 | pcie30phy, combphy1_ps | 否 | ALL | 是 |
PCIe Gen3 x1 | RC | pcie2x1l1: pcie@fe180000 | pcie30phy, combphy2_psu | 否 | ALL | 是 |
PCIe Gen3 x1 | RC | pcie2x1l2: pcie@fe190000 | combphy0_ps | 否 | ALL | 是 |
1.7.2 PHY
资源 | dts节点 | 参考时钟 | 拆分 | 是否combo |
---|
pcie30phy | phy@fee80000 | 外部 | 4Lane:PHY_MODE_PCIE_AGGREGATION 2Lane+2Lane:PHY_MODE_PCIE_NANBNB 2Lane+1Lane+1Lane:PHY_MODE_PCIE_NANBBI 1Lane4:PHY_MODE_PCIE_NABIBI | PCIe专用 |
combphy0_ps | phy@fee00000 | 内部/外部 | - | 与SATA combo |
combphy1_ps | phy@fee10000 | 内部/外部 | - | 与SATA combo |
combphy2_psu | phy@fee20000 | 内部/外部 | - | 与SATA/USB3 combo |
1.8 RK3588S
说明:RK3588S的PCIe较为简单,有2个1Lane控制器和2个可用于pcie 2.0的1Lane comboPHY,是一一对应关系。
1.8.1 控制器