当前位置:   article > 正文

Linux 内核 eMMC 驱动移植_linux emmc 驱动

linux emmc 驱动
  1. 实验原理

参考原理图可知 eMMC 使用的是 sdmmc2 总线,当前所使用的设备树文件中没有sdmmc2 的支持,所以需要增加相关内容才能正常驱动 eMMC。

由于在使 STM32MP1 芯片很多管脚为多功能复用管脚,且很多管脚具备同样的功能,所以移植eMMC时需要确认硬件设计是使用的是那些管脚,根据原理图确认后管脚对应关系为:

1) eMMC 设备树节点

参考文档:

  1. Documentation/devicetree/bindings/mmc/mmc-controller.yaml
  2. Documentation/devicetree/bindings/mmc/mmci.txt

内核中 ST 对 STM32MP15x 系列芯片的设备树资源了做了定义,可参见:

arch/arm/boot/dts/stm32mp151.dtsi

stm32mp151 中 sdmmc2 定义如下:

  1. sdmmc2: sdmmc@58007000 {
  2.     compatible = "arm,pl18x", "arm,primecell";
  3.     arm,primecell-periphid = <0x00253180>;
  4.     reg = <0x58007000 0x1000>, <0x58008000 0x1000>;
  5.     interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
  6.     interrupt-names = "cmd_irq";
  7.     cloc
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号