This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VEN-Q1:从 OSPI 引导时、如何在 U-Boot 中启用 MMC2(SD 卡)

Guru**** 2926660 points

Other Parts Discussed in Thread: TCA6424

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1634253/tda4ven-q1-how-to-enable-mmc2-sd-card-in-u-boot-when-booting-from-ospi

器件型号: TDA4VEN-Q1
主题中讨论的其他器件: TCA6424

 

问题描述

我们使用基于 TDA4VEN 的定制电路板。
U-Boot 已编程到 OSPI NOR 闪存中、并且电路板在 OSPI 引导模式下成功引导。
Linux 根文件系统存储在 SD 卡上、我们希望 U-Boot 从 SD 卡加载文件系统。
但是、在我们的定制电路板上、SD 卡插槽物理连接到 MMC2。
目前、我们使用的 U-Boot 仅识别 MMC0 和 MMC1、并且未检测到 MMC2。
因此、U-Boot 无法访问 SD 卡、并且无法加载 Linux 文件系统。

问题

是否可以在 U-Boot 中将 MMC2 作为 SD 接口启用?
如果可能、请告知:

  • 需要修改哪些器件
    (例如器件树,Kconfig,板初始化代码等)
  • 应用这些更改的方式
  • 为了支持 MMC2、应构建哪个 U-Boot 源

环境详细信息

  • 提供参考设计

    • ti-processor-sdk-rtos-j722s-evm-11_01_00_04
    • ti-processor-sdk-linux-adas-j722s-evm-11_01_00_03
  • 当前使用的 U-Boot

    • 我们 按原样使用预构建的 U-Boot 二进制文件、该文件位于:
      ti-processor-sdk-rtos-j722s-evm-11_01_00_04/
        mcu_plus_sdk_j722s_11_01_00_15/
          tools/boot/hlos_prebuilt/j722s-evm/linux/
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨 Toshiki ,

    对延迟深表歉意。

    您能否将 ti-processor-sdk-linux-adas-j722s-evm-11_01_00_03/board-support/ti-u-boot-2025.01+build/A53 中的 u-boot.dtb 文件复制 到 rootfs 分区的/boot/dtb 目录中、并将其重命名为 k3-j722s-evm.dtb。理想情况下、这应该起作用。

    此外,我认为内核试图从 fa00000.mmc 而不是 fa20000.mmc 装载 rootfs。 因此、在执行步骤 1 后、您是否还可以在 uboot 处启动和浏览、然后输入以下命令。 这些命令可确保从  fa20000.mmc 获取 rootfs

    printenv
    setenv args_mmc "run finduuid;setenv bootargs console=ttyS2,115200n8 root=/dev/mmcblk2p2 rw rootfstype=ext4 rootwait"
    setenv bootdev 2
    setenv mmcdev 2
    setenv bootpart 2:2

    此致

    Gokul Praveen

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Gokul:

    通过从复制修改后的 k3-j722s-evm.dts、我能够引导 Linux

    /home/kozai/ti/ti-processor-sdk-linux-adas-j722s-evm-11_01_00_03/board-support/ti-u-boot-2025.01 + git/dts/上游/ src /ARM64/ti/

    最终目的

    /home/kozai/ti/ti-processor-sdk-linux-adas-j722s-evm-11_01_00_03/board-support/ti-linux-kernel-6.12.35 + git-ti/arch/arm64/boot/dts/ti/、

    将其编译到.dtb 中、并将结果放在 rootfs 分区上的/boot/dtb 中。

    非常感谢您在这么长的时间内提供的支持。

    感谢您的帮助、我成功解决了该问题。

    此致、

    Toshiki