Skip to main content
Qualcomm Linux 平台支持四种主要存储类型。
请将设备配置为仅从一个存储源启动。同时使用两个源存放可启动文件可能导致系统崩溃或不可预测的行为。

UFS 存储

特性

内核配置

电源管理状态

Auto-Hibern8 (AH8) — 空闲 150 毫秒(可调)后将 PHY 链路切换到休眠(Hibernate)状态。
时钟门控(Clock Gating) — 空闲 50 毫秒(最大频率)或 10 毫秒(降频后)后进行门控。默认启用。
时钟调频(Clock Scaling) — 根据负载阈值升频/降频。默认启用;禁用会增加功耗。
运行时挂起/恢复(Runtime Suspend/Resume) — 在 3 秒无活动后进入挂起状态。始终启用,不可配置。 系统挂起/恢复(System Suspend/Resume) — 跟随系统挂起/恢复事件。始终启用,不可配置。

设备参数

UFS 配置(Provisioning)

UFS 配置(provisioning)会在新的 UFS 设备上创建逻辑单元号(LUN)。 设备描述符参数:
在开发期间请设置 bConfigDescrLock="0"。定型后设置为 "1",以防止重新配置。
LUN 参数: 默认分区布局:
  • LUN0 — Linux 数据和文件系统镜像
  • LUN1 和 LUN2 — Boot WLUN (0xB0) 交替用于故障安全的 XBL 备份
  • LUN4 — 启动链的其余部分
  • LUN6 和 LUN7 — 默认未使用

架构图

eMMC 存储

特性

设备树配置

在特定 SoC 的 DTSI 文件中的 &sdhc_1 节点添加以下内容:

电源管理

  • 运行时挂起 — 在 50 毫秒无活动后;始终启用
  • 系统挂起 — 跟随系统挂起/恢复事件;始终启用

SD 卡存储

特性

内核配置

电源管理

  • 运行时挂起 — 在 50 毫秒无活动后;始终启用
  • 系统挂起 — 跟随系统挂起/恢复事件;始终启用

NVMe 存储

配置指南

挂载文件系统

电源管理控制

故障排除

症状:
解决方法: 联系 UFS 设备供应商;检查设备兼容性和供电稳定性。
症状:
解决方法: 检查物理连接,验证电源轨,检查 PHY 初始化。
症状:
诊断:
解决方法: 表明信号质量较差。检查 PCB 布局、信号完整性和 PHY 设置。联系 Qualcomm 支持进行 PHY 调优。
诊断:
解决方法: 如果时钟调频已禁用,请启用;如果不需要 WriteBooster,请禁用。
诊断:
解决方法: 调整 PM 级别;如果 HPB/WriteBooster 引发问题,请禁用;验证 VCC/VCCQ/VCCQ2 时序。
症状:
解决方法: 在 SoC DTSI 文件的 ufshc_mem 节点中,将:
更改为:

命令参考

UFS 命令

SD 卡命令

NVMe 命令

eMMC 命令

对于 eMMC 命令,请将地址替换为特定 SoC 的值:IQ-615 和 IQ-9075 使用 7c4000;IQ-8275 使用 87c4000

参考资料