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.

[参考译文] DRA76P:DRA76P 未从 eMMC 5.1引导

Guru**** 2553700 points
Other Parts Discussed in Thread: DRA76P

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/840822/dra76p-dra76p-no-booting-from-emmc-5-1

器件型号:DRA76P

尊敬的先生/女士:

我们正在开发一个定制电路板、其中包含 DRA76P 以及 QSPI 和 eMMC 闪存器件。 QSPI P/N 为 S25FL256ASGMFV001、eMMC 为 MTFC8GAMALNA-AAT。

QSPI 工作正常。 而不是 eMMC 存储器。 它们的连接方式如下所示:

我们能够使用 fastboot.sh (包含在预编译中)进行刷写、而不会出现错误。

在 u-boot 中、我们将获取下一个信息:

从 mmcinfo 中:

器件:OMAP SD/MMC
制造商 ID:13
OEM:14E
名称:S0J35
Tran 速度:200000000
Rd 块 Len:512
MMC 版本4.0
高容量:是
容量:7.3 GiB
总线宽度:8位
擦除组大小:512 Kib 

在 EVM MMC 版本中检测到4.5...

来自 ext2ls MMC 1:11

4096。
4096
4096基准测试
4096丢失+发现
4096个否定

我们将引导 Android。 如果我们没有错,这是数据分区内容,在第一次引导之前,系统、供应商等... 将被创建。

我们已将 env 配置为从 dev 1引导

mmcboot=if MMC dev ${mmcdev};然后 setenv devtype MMC;如果 MMC 重新扫描;然后回显在器件${mmcdev}上找到的 SD/MMC;如果运行 loadimage;然后运行 loadfdt;从 mmc${mmcdev}回显引导...;运行 args_MMC;bootz ${addr}-${faddr};mmdfi
= load1;mmcdf

但没有引导...

这是我们正在使用的 DTS 配置:

&mmc2{
status ="oke";
VMMC-supply =<&VIO_1v8>;
总线宽度=<8>;
最大频率=<192000000>;
ti、不可拆卸;
TI、双电压;
CAP-MMC-highspeed;
pinctrl-names ="default"、"hs"、"DDR_1_8v"、 "hs200_1_8v";
pinctrl-0 =<&mmc2_PINS_DEFAULT>;
pinctrl-1 =<&mmc2_PINS_h>;
pinctrl-2 =<&mmc2_PINS_DDR>;
pinctrl-3 =<&mmc2_PINS_HS200 &mmc2_PIN_dre延 时
;} 
mmc2_PIN_DEFAULT:mmc2_PIN_DEFAULT{
pinctrl-single、PIN=<
DRA7XX_CORE_IOPAD (0x349c、PIN_INPULL_PULLUP | MUX_MODE1)/* GPMC_A23.mmc2_CLK */
DRA7XX_CORE_INPULLUX (0x34b0_MODE2)


*/DRA7XX_MODE_IN_MOUX24_IN_MOUX24_IN_MOUX_IN_MODE1 */RM_INUX24_MODE_IN_IN_MOUX24_MOUX24_IN_MOUX_IN_IN_MOUX24_IN_MODE_MOUX24_IN_MODE_IN_MOUX24_IN_IN_MOUX24_IN_MOUX_IN_IN_MOUX24_MODE_IN_MOUX24_IN_IN_MODE_INPUOUX_IN_MOUX_IN_IN_MOUV/ 0x7XX_

PIN_INPULLUP | MUX_MODE1)/* GPMC_A19.mmc2_DAT4 */
DRA7XX_CORE_IOPAD (0x3490、PIN_INPUT_PULLUP | MUX_MODE1)/* GPMC_A20.mmc2_DMUX_RAPULL_OPAGEL (0x342*、
0xMC_IN_INPUT_MODE2*

= 0xMC_INUX_INPLUM24_MODE2*、0xMC_INU_INPULLUM_LM_PULLUP)





*| 0xMC_IN_INU_MODE2*= 0x94_MODE2_IN_MODE_IN_MODE2* 0xMC_INPULCC_MODE2*| 0xMC_MODE2_PULLUM24_IN_IN_IN_MODE_MODE_INPULLUP **、0xMC_IN_IN_IN_MODE2*= 0xMC_MODE_INPULLUP *、0xMC_IN_IN_IN_IN_IN_
PIN_INPULLUP | MUX_MODE1)/* GPMC_A24.mmc2_DAT0 */
DRA7XX_CORE_IOPAD (0x34a4、PIN_INPUT_PULLUP | MUX_MODE1)/* GPMC_A25.mmc2_DIOPT_INPUT (0x3420_MMC_MODE2
)

*/0x3420_IN_MODE_IN_MOUX_INPUT (0x27_MOUX_DMUX_DAC_MODE4)*/RM42_IN_MODE_INPULLUC24_AD_MODE_AD_IN_MOUX_RAPULLUP *
**/0x27_MODE_MODE_MODE_IN_MODEV (0x27_MODE_IN_MODE_IN_MODE_MODEV */0x27_IN_IN_MODE_MODE_IN_MOUX_INPUT)* 0x27_MOUX_INPUT (0x27_MODE_IN_MODE_MODE_MODEV *
0x
PIN_INPULLUP | MUX_MODE1)/* GPMC_A22.mmc2_DAT7 *
/>;
};

mmc2_PIN_DDR:mmc2_PIN_DDR{
pinctrl-single、引脚=<
DRA7XX_CORE_IOPAD (0x349c、PIN_INPUT_PULLUP | MMC_IN_MOUX_1*
0xMC_MOUCC_1*/0x24_MODE_IN_MOUX_1* 0x24_MOUCC_IN_MODE_INPUMPUDIO2*/0x24_MODE_MODE_MODE_DON_MOUX_1*
0x24_MODE_MOUX_1*/DRA7XX_MODE_INPULLUPULLUPULLUPULLUP
**/0x24_MODE_MODE_MODE_IN_MODE_IN_MODE_IN_MODE_AD_IN_MODE_MOUX_1* 0x27_IN_MODE_AD_AD_IN_MODE_INPUV/ 0xMC_

PIN_INPULLUP | MUX_MODE1)/* GPMC_A27.mmc2_DAT3 */
DRA7XX_CORE_IOPAD (0x348c、PIN_INPUT_PULLUP | MUX_MODE1)/* GPMC_A19.mmc2_datpullup *
* DRA7XX_INCORE_IN_INPUT


(0x3420_MMC_IN_INUX_INPULLUP)
*= 0x29_MO2*、0xMC_IN_IN_INUX_INUCC_INPULLUM24_IN_IN_IN_MODE2*= 0x24_IN_IN_IN_IN_IN_IN_IN_INUX_INPULLUP (0x20_MODE2*、0xMC_IN_IN_IN_INUX_INUX_INPULLUPULLUP)*、0x200_MODE2*、0xMC_IN_IN_IN_IN_IN_IN_MODE2*= 0xMC_IN_IN_IN_MODE2*= 0xMC_IN_



/* GPMC_A23.mmc2_clk */
DRA7XX_CORE_IOPAD (0x34b0、PIN_INPUT_PULLUP | MODE1)/* GPMC_CS1.mmc2_cmd *
DRA7XX_CORE_POLUP (0x34a0、PIN_INPUT_MODE1)* 0xMC_MODE2_MODE2_MODE_MOUX_MODE2


***/0x24_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MOUX_1****/ 0x24_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE2 (0x24_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MOUX_1********/ 0x24_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE
PIN_INPUT_PULLUP | MODE1)/* GPMC_A19.mmc2_DAT4 */
DRA7XX_CORE_IOPAD (0x3490、PIN_INPUT_PULLUP | MODE1 | MUX_MODE1)/* GPMC_A20.mmCORE_DIO5 **(0x3490、PIN_IN_PULLUM2_MOUDIO21


)| MODE2_MODE_MODIO2*| GPMC_MODIO2_MOU_MODE_MOU_MODIO2*| IN_PULLUX
| IN_MODIO2_MOU_MODE_MODE_MODE_MOU_MOU_MODE41 *| GPMC_MODIO2_MOU_MODE_MODE_MODE_MODE_MODE_MODE_MODE_MODE
/*对应于 datamanual 中的 MMC2_HS200_MANUAL1 */
mmc2_iodelay_HS200_conf:mmc2_iodelay_HS200_conf{
pinctrl-single、pins =<
0x190 (A_delay (384)| G_delay (0))) /* CFG_GPMC_A19_oen */
0x194 (A_DELAY (0)| G_DELAY (174)) /* CFG_GPMC_A19_OUT */
0x1a8 (A_DELAY (410)| G_DELAY (0)) /* CFG_GPMC_A20_oen */
0x1ac (A_DELAY (85)| G_DELAY (0)) /* CFG_GPMC_A20_OUT */
0x1b4 (A_DELAY (468)| G_DELAY (0)) /* CFG_GPMC_A21_oen */
0x1b8 (A_DELAY (139)| G_DELAY (0)) /* CFG_GPMC_A21_OUT */
0x1c0 (A_DELAY (676)| G_DELAY (0)) /* CFG_GPMC_A22_oen */
0x1c4 (A_DELAY (69)| G_DELAY (0)) /* CFG_GPMC_A22_OUT */
0x1d0 (A_DELAY (1062)| G_DELAY (154))/* CFG_GPMC_A23_OUT */
0x1d8 (A_DELAY (640)| G_DELAY (0)) /* CFG_GPMC_A24_oen */
0x1dc (A_delay (0)| G_delay (0)) /* CFG_GPMC_A24_OUT */
0x1e4 (A_DELAY (356)| G_DELAY (0)) /* CFG_GPMC_A25_oen */
0x1e8 (A_DELAY (0)| G_DELAY (0)) /* CFG_GPMC_A25_OUT */
0x1f0 (A_DELAY (579)| G_DELAY (0)) /* CFG_GPMC_A26_oen */
0x1F4 (A_DELAY (0)| G_DELAY (0)) /* CFG_GPMC_A26_OUT */
0x1fc (A_DELAY (435)| G_DELAY (0)) /* CFG_GPMC_A27_oen */
0x200 (A_DELAY (36)| G_DELAY (0)) /* CFG_GPMC_A27_OUT */
0x364 (A_DELAY (759)| G_DELAY (0)) /* CFG_GPMC_CS1_OEn */
0x368 (A_DELAY (72)| G_DELAY (0)) /* CFG_GPMC_CS1_OUT */
>;
};

是否对正在发生的情况有任何想法?

非常感谢!

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

    您好!

    以开始的 UserData 分区为空(刷新 userdata.img 后首次启动)、当 Android 首次启动时、userdata 分区将填充内容。 默认情况下、在 Android 中、UserData 是唯一的 r/w 分区。

    如果 eMMC 器件为5.1、我不确定为什么 mmcinfo 会将版本显示为4.0。 您确定使用的器件是 eMMC 5.1吗?

    当您说不启动时、这意味着什么? 引导加载程序本身不是来自 eMMC?

    此致、
    Vishal

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

    此外、是否更新了 SYSBOOT 设置以从 eMMC 引导?

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

    您好、Vishal、

    感谢您的首个 Aanalisys。 是 SYSBOOT 配置良好、可首先从 SD 卡(未连接卡)引导、然后从 eMMC 引导。

    我放置了一些轨迹、以便让您更好地了解它发生了什么。 内核尝试引导、但在无法识别 eMMC 分区时被占用(由于内核无法安装器件、因此无法引导)。 在这里、您有来自定制板和 EMV 板的 mmc0迹线:

    EVM

    [2.550066] mmc0:1.8V!!
    [2.771326] mmc0:MMC_RESRESAND_TRY_FREQ:尝试以400000Hz 的频率初始化卡
    [2.779454] mmc0:MMC_HW_RESET_for_init:Salida return
    [2.789362] mmc0:dentro MMC_ATE_SDIO
    [2.794827] mmc0:dentro MMC_ATTc
    !mmc120:mmc120] mmcSD!
    [2.803748] mmc0:MMC_SEND_OP_COND!!!
    [2.807510] mmc0:MMC_SEND_OP_COND!!!
    [2.811288] aquí LLAMOS A WAIT_for_CMD100
    [2.815905]错误2
    [2.817838] mmc0:MMC_ATE_BUS DONE!!![2.821887]
    [2.821887] MMC_INIT_CARD
    [2.849688] mmc0:MMC_SEND_OP_COND!!!
    [2.853467] mmc0:MMC_SEND_OP_COND!!!
    [2.857228]调用 WAIT_for_CMD 迭代:100
    [2.971520]调用 WAIT_for_CMD 迭代:99
    [2.976052] MMC_All_SEND_CID
    [2.980695] mmc0:读取扩展 CSD
    [2.996982] mmc0:不是_ERR EXT_CSD 版本2
    [3.001284] mmc0:读
    扩展 CSD [2.996982] mmc0:REV MAN_BKOPS_EN 位未设置
    [3.009598] mmc0:不是_ERR EXT_CSD eMMC v4.5或更高
    版本[3.024177] mmc0:初始化卡。 0!!!
    [3.027770] mmc0:>> MMC_ADD_CARD:0001
    [3.031950] mmc0:地址0001
    [3.037391] mmcblk0:mmc0:0001 MMC08G 7.25 GiB
    [ 3.037391] mmcblk0:mmc0:0001 MMC08G 7.25 GiB
    [ 3.037391] MMc0481] MMcble0:mmc0488MMC0248G [3.0248M0M0M0M0M0M0M0M08:mc1 mc1 mc248M0M0M0M0M0M0M0M0M
    mmc0:0001 MMC08G 分区2 8.00 mib
    [3.175593] mmcblk0:P1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 

    定制

    [2.854788] mmc0:1.8V!!
    [3.099249] mmc0:MMC_RESAND_Try _freq:尝试以400000Hz 的频率初始化卡
    [3.120293] mmc0:MMC_HW_RESET_for_init:Salida return
    [3.388423] mmc0:dentro MMC_ATE_SDIO
    [3.389893] mmc0:dentro MMC_ATTMC_ATE_3.341
    ![3.3981] mmc8![3.3981] mmc8!
    [3.391389] mmc0:MMC_SEND_OP_COND!!!
    [3.391391] mmc0:MMC_SEND_OP_COND!!!
    [3.391397]调用 WAIT_for_CMD
    [3.391769]错误1、iteration=100 err=-110
    [3.391772] mmc0:PM MMC_SEND_OP_COND。 -110!!!
    [3.391779] mmc0:MMC_POWER_OFF!!!
    
    然后内核继续运行、直到它卡在最后一行:
    
    [3.893424] init:bool android:::init::FirstStageMount::InitRequiredDevices():在/sys 中找不到分区、等待它们的 uevent:system、vendor
    


    调用 WAIT_for_CMD 是放置在* MMC_SEND_OP_COND *(MMC_OPS.c)中的跟踪。 迭代是循环中 I 的值。

    错误 X 位于同一函数中

    MMC_INIT_CARD 是放置在 MM_INIT_CARD 函数中的轨迹。

    在我们看来、似乎存在计时问题(错误-110似乎是这样)、但为什么? 在哪里? 它是否与在 uboot 中也未能很好地检测到版本这一事实有关?

    此致。

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

    因此、u-boot 能够从 eMMC 加载内核、但内核无法初始化 eMMC?
    错误代码-110为超时。

    您能否检查数据线路是否正确路由?  

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

    此外、请查看下面的 e2e 链接。 建议为数据线使用上拉电阻器。
    https://e2e.ti.com/support/processors/f/791/t/839278

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

    您好、Vishal、

    是的、PU 电阻器位于数据线路和 cmd 线路中(请检查此线程的第一个帖子)、但不在 clk 线路中。  

    我刚刚测量了 CLK 线路、我看到400kHz 时钟、这是可以的吗?

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

    我们已按照以下主题、根据 Pinmux 设置的输出编辑 mux_data:

    Pinmux 配置:MMC2模式 HS200和所有具有内部 PU 的线路(正如我之前告诉过的、PU 电阻器位于数据线路和 cmd 线路中)

    是否有任何工具可以配置 iodelay 以考虑路由长度?

    此致、

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

    您好!

    IODELAY 值不依赖于路由长度。 它取决于使用的速度模式。

    在转至内核之前、我们能否了解 u-boot 为什么显示错误的 MMC 版本?

    此致、
    Vishal

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

    您好、Vishal、

    我们刚刚解决了 uboot 问题。 这是因为 u-boot 未准备好检测5.0以上的 eMMC 存储器。 我们已修补(以+开头的行由我们添加):

    drivers/MMC/MMC.c

    switch (ext_CSD[EXT_CSD_REV]){
    案例1:
    MMC->version = MMC_version_4_1;
    break;
    案例2:
    MMC->version = MMC_version_4_2;
    break;
    案例3:
    MMC->version = MMC_version_4_3;
    break;
    案例5:
    MMC_version=MMC_4_4_4
    
    
    
    
    
    
    
    
    ;版本=MMMCMMC_4_break;
    
    版本=MMMC_4>MMC_version;版本4_4_mmc = mmc = mmc;版本4_break;版本4_v_4>mmc = mmc = mmc;版本4_v_4_4_0_mmc = mmc;版本4_break_0_mmc = mmc
    +MMMC->version = MMC_VERSION_newer
    ;+break;
    }
    

    和 include/mmc.h

    #define MMC_VERSION_UNKNOWNmake_MMC_VERSION (0、0、0)
    #define MMC_VERSION_1_2make_MMC_VERSION (1、2、0)
    #define MMC_VERSION_1_4make_MMC_VERSION (1、4、0)
    #define MMC_VERSION_2_2make_MMC_VERSION (2、2、0)
    #define MMC_VERSION_3make_MMC_VERSION (3、0、0)
    #define MMC_VERSION_4make_MMC_VERSION (4、0、0)
    #define MMC_VERSION_4_1make_MMC_VERSION (4、1、0)
    #define MMC_VERSION_4_2make_MMC_VERSION (4、2、0)
    #define MMC_VERSION_4_3make_MMC_VERSION (4、3、0)
    #define MMC_VERSION_4_41make_mmc_version (4、4、1)
    #define MMC_VERSION_4_5make_MMC_VERSION (4、5、0)
    #define MMC_VERSION_5_0make_MMC_VERSION (5、0、0)
    +#define MMC_VERSION_5_1make_MMC_VERSION (5、1、0)
    +#define MMC_VERSION_newermake_mmc_version (X、X、0) 

    使用此代码、我们可以获得正确的 mmcinfo 答案:

    器件:OMAP SD/MMC
    制造商 ID:13
    OEM:14E
    名称:S0J35
    Tran 速度:200000000
    Rd 块 Len:512
    MMC 版本4.5
    高容量:是
    容量:7.3 GiB
    总线宽度:8位
    擦除组大小:512 KiB
    HC WP 组大小:8 MIB
    用户容量:7.3 GiB WRREL
    引导容量: 31.5 MIB 增强
    版 RPMB 容量:4 MIB 增强版
    

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

    很抱歉、捕获"MMC 版本4.5"是另一个捕获。 这是一个很好的方法:

    器件:OMAP SD/MMC
    制造商 ID:13
    OEM:14E
    名称:S0J35
    Tran 速度:200000000
    Rd 块 Len:512
    MMC 版本5.1
    高容量:是
    容量:7.3 GiB
    总线宽度:8位
    擦除组大小:512 KIB
    HC WP 组大小:8 MIB
    用户容量:7.3 GiB WRREL
    引导容量: 31.5 MIB 增强
    版 RPMB 容量:4 MIB 增强版
    

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

    您使用的是哪种 TI SDK 版本? 我们的代码库涵盖了最新版5.0。

    能否在内核 defconfig 中启用 MMC_DEBUG 的情况下生成内核日志? 您可能还必须在内核中将日志级别更改为9 (在内核 bootargs 中附加日志级别=9)

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

    我们使用的是 SDK 3.02。 我将添加跟踪支持并将其发送给您。

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

    我们在内核中添加了一些跟踪、并到达-110错误源。 它来自 MMC/core/core.c 中的"mmc_wait_for_req_done"函数

    它从"WAIT_for_Completion"调用获取此错误。 我们调用函数与获取误差作为响应之间没有延迟。 我们尝试使用"wait_for_completion_timeout"、超时为5000ms (wait_for_completion_timeout (&MRQ->Completion、mss_TO_jiffies (5000)));但也会得到相同的错误。

    但更奇怪的是、当您调用"MMC_GO_IDLE" funcion (当您发送命令0时)时、不会发生此错误。 使用此命令不会出现错误、但使用任何其他命令、您会得到-110

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

    MMC_DEBUG 日志将提供有关将什么 CMD 发送到 eMMC 卡以及哪个 CMD 导致超时错误(-110)的信息。

    在 DTS 中需要检查的另一件事是 MMC 电源参数。
    VMMC-SUPPLY 属性应设置为卡的 Vdd 电压电源
    -对于 I/O 线路、VMMC_aux-supply 属性应设置为 Vio 电压电源


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

    您好、Vishal、

    我们已尝试更新您建议的 DTS 更改(尽管 EVM 不是这样做)、我们得到相同的结果。

    正在发送的 CMD 为:0x00、0x05、0x08、0x05、0x55、 0x55、0x55 0x55。 除0x00以外的所有寄存器返回-110 (超时错误)。 0x00似乎没有出现超时错误、因为它是使用 MMC_RSP_NONE 标志选项调用的...

    我们已经绘制了 IO 结构值、所有这些值都是相似的、但对于"ios.VDD"、EVM 为15、而对于我们的为7。

    此致。

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

    您好、是否有任何脚本可使用 XDS 探测器读取 eMMC? 我所说的内容如下: http://git.ti.com/sitara-dss-files/am57xx-dss-files/blobs/raw/master/am57xx-ddr.dss

    此致、

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

    您好、Roxu、

    VDD 值0x15表示 3.3V、 我认为0x7的电压范围是1.65至1.95伏。

    此致、
    Vishal

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

    您能否共享启用了 CONFIG_MMC 的完整内核日志?

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

    尊敬的 Vishal:

    我们遵循了您关于 DTS 文件定义的建议、但仍然不起作用。 但我们意识到、可能未能很好地检测到稳压器。 按照这一线索、我们找到了根本原因。

    我们已定义了电路板"vsys_VBAT"的主输入电源线、所有其他电源轨都从此处挂起、这将由驱动器"稳压器固定"进行控制。 然后、我们定义了输入电压裕度"reguler-min-microvolt=12000000"和"reguler-max-microvolt=30000000"。 这不能正常工作... 内核未检测到良好的电源链、并且无法使 eMMC 正常工作。

    我们将这两个参数都更改为"reguler-min-microvolv=24000000"和"reguler-max-microvolv=24000000"、现在工作正常。 检测到稳压器、并且它还能够从 eMMC 引导。

    非常感谢您的友好支持。

    此致。

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

    感谢您的更新。 很高兴它解决了。