本文主要是介绍[RK-Linux] 从主线U-Boot移植PCIe及其PHY驱动到RK3399 U-Boot,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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_LAYERSCAPEPCIe controllers. The PCIe may works in RC or EP mode according toRC
这篇关于[RK-Linux] 从主线U-Boot移植PCIe及其PHY驱动到RK3399 U-Boot的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!