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.
工具/软件:Linux
我有一个基于 AM437X-SK EVM 的定制 AM4378板。 有一个 Micron eMMC 器件(MTFC4GACA)连接到 mmc0接口。
Linux 未检测到 eMMC。
我能够在 u-boot 中使用以下命令对 eMMC 进行分区。
=> setenv 分区"uuid_disk=65544ad7-9e53-4e64-b505-b303828e6493;name=rootfs、start=2MiB、size=-、uid=dfdee69d-f839-4f0b-90ec-334a70567623"
=> setenv uid_gpt_disk 65544ad7-9e53-4e64-b505-b303828e6493
=> setenv uuid_gpt_rootfs dfdee69d-f839-4f0b-90ec-334a70567623
=> GPT 写入 MMC 0 ${partitions}
u-boot 现在报告以下信息:
=> MMC 信息
器件:OMAP SD/MMC
制造商 ID:13.
OEM:14E
姓名:Q2J54
TRAN 速度:52000000
Rd 块 Len:512
MMC 版本5.0
高容量:是
容量:3.6GiB
总线宽度:4位
擦除组大小:512 KiB
HC WP 组大小:8 MiB
用户容量:3.6GiB WRREL
引导容量:16 MIB ENH
=> MMC 部件
MMC 设备0的分区映射--分区类型:EFI
零件开始 LBA 结束 LBA 名称
属性
键入 GUID
分区 GUID
1 0x00001000 0x0072bfde "rootfs"
attrs:0x0000000000000000
类型:ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
GUID:9de6eddedf-39f8-0b4f-90ec-334a70567623
RPMB 容量:512 KiB 增强型
从 http://processors.wiki.ti.com/index.php/Linux_Core_MMC/SD_User%27s_Guide 获取的 Linux SD/MMC 配置 、我已启用"MMC 调试"。
Linux 引导日志、/var/log/messages 的内容和原理图的 eMMC 部分如下所示。
e2e.ti.com/.../1401.LinuxBootMessages.txt
谢谢 Roger!
我的帖子中没有包含它、但在 am4372.dtsi 中配置了 DMA。 这看起来是正确的吗?
mmc1:MMC@48060000{
兼容="ti、omAP4-hsmmc";
REG =<0x48060000 0x1000>;
ti、hwmds ="mmc1";
/*ti,双电压;*/
TI,需要特殊重置;
DMA =<&EDMA 24 0>、
< EDMA 25 0>;
dma-names ="TX"、"Rx";
中断= ;
STATUS ="禁用";
};
您可以看到、我已经注释了双电压选项、我这么做是因为我正在运行 eMMC 的内核和 I/O、而不是主3.3V 电源、因此无法将 I/O 电压切换至1.8V。 我也在启用双电压的情况下对其进行了测试。
我已经在 VMMC-SUPPLY =<&dc4>;线路启用和禁用的情况下进行了测试。 在任一种情况下都未检测到 eMMC。
您能看到故障位置的任何指示吗?
我注意到 u-boot 报告 MMC 信息输出中的总线宽度为4位。 这很重要吗? 我已经在将器件树设置为4和8位总线宽度的情况下进行了测试、但两者都不起作用。