[RK-Linux] RK3399 NVMe启动(一)| 从主线U-Boot移植PCIe及其PHY驱动到RK U-Boot

2023-12-20 23:40:51

rk3399 u-boot 并没有支持 pcie 及其 phy 驱动,但是上游代码有支持。这里通过从上游 v2024.01-rc3 分支移植这部分驱动到 rk u-boot。

通过 rk3399.dtsi 知道 pci 匹配项为 rockchip,rk3399-pcie

pcie0: pcie@f8000000 {
    compatible = "rockchip,rk3399-pcie";
    ...
}

准备好主线 u-boot v2024.01-rc3,拷贝驱动文件到对应目录:

cp drivers/pci/pcie_rockchip.c /rk-linux/rk3399/u-boot/drivers/pci/         
cp drivers/phy/rockchip/phy-rockchip-pcie.c /rk-linux/rk3399/u-boot/drivers/phy/

注意是否包含相关头文件。

参考上游代码,添加 pcie_rockchip Makefile 与 Kconfig:

diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index a076e48189..b9401ceb47 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -79,6 +79,15 @@ config PCIE_LAYERSCAPE
          PCIe controllers. The PCIe may works in RC or EP mode according to
          RC

文章来源:https://blog.csdn.net/Neutionwei/article/details/135117755
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。