主题中讨论的其他器件:TS3A27518E、
尊敬的专家
我们在 定制电路板(DRA746)上存在 eMMC 安装问题。 客户使用多路复用器(TS3A27518E)通过 eMMC1选择其中一个存储器、方框图如下所示。
默认连接为 MTFC8GACA (Micron)
当系统尝试安装 MTFC8GACA 时,我们发现如下两条主要错误消息
(1) mmc0:切换到总线宽度1失败
(2) mmcblk0:错误-84传输数据,扇区?,nr 8,cmd 响应0x900,卡状态0xb00
2.610700] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 2.617392] [drm] No driver support for vblank timestamp query. [ 2.634855] [drm] Enabling DMM ywrap scrolling [ 2.639816] mmc0: MAN_BKOPS_EN bit is not set [ 2.641501] mmc0: switch to bus width 1 failed [ 2.641812] mmc0: new high speed MMC card at address 0001 [ 2.642285] mmcblk0: mmc0:0001 R1J55A 7.28 GiB [ 2.652516] mmcblk0boot0: mmc0:0001 R1J55A partition 1 8.00 MiB [ 2.662751] mmcblk0boot1: mmc0:0001 R1J55A partition 2 8.00 MiB [ 2.663495] omap_hsmmc 4809c000.mmc: ADMA err: ST_TFR, desc at 0xfd441008 follows the erroneous one [ 2.663557] mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0xb00 [ 2.663562] mmcblk0: retrying using single block read [ 2.663786] mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0x0 [ 2.663793] blk_update_request: I/O error, dev mmcblk0, sector 0 [ 2.663975] mmcblk0: error -84 transferring data, sector 1, nr 7, cmd response 0x900, card status 0x0 [ 2.663980] blk_update_request: I/O error, dev mmcblk0, sector 1 [ 2.664159] mmcblk0: error -84 transferring data, sector 2, nr 6, cmd response 0x900, card status 0x0 [ 2.664164] blk_update_request: I/O error, dev mmcblk0, sector 2 [ 2.664345] mmcblk0: error -84 transferring data, sector 3, nr 5, cmd response 0x900, card status 0x0 [ 2.664350] blk_update_request: I/O error, dev mmcblk0, sector 3 [ 2.664684] mmcblk0: error -84 transferring data, sector 5, nr 3, cmd response 0x900, card status 0x0 [ 2.664689] blk_update_request: I/O error, dev mmcblk0, sector 5 [ 2.665022] mmcblk0: error -84 transferring data, sector 7, nr 1, cmd response 0x900, card status 0x0 [ 2.665027] blk_update_request: I/O error, dev mmcblk0, sector 7 [ 2.665032] Buffer I/O error on dev mmcblk0, logical block 0, async page read [ 2.665256] omap_hsmmc 4809c000.mmc: ADMA err: ST_TFR, desc at 0xfd441008 follows the erroneous one [ 2.665310] mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0xb00 [ 2.665313] mmcblk0: retrying using single block read [ 2.665544] mmcblk0: error -84 transferring data, sector 0, nr 8, cmd response 0x900, card status 0x0 [ 2.665549] blk_update_request: I/O error, dev mmcblk0, sector 0 [ 2.665728] mmcblk0: error -84 transferring data, sector 1, nr 7, cmd response 0x900, card status 0x0 [ 2.665732] blk_update_request: I/O error, dev mmcblk0, sector 1 [ 2.665910] mmcblk0: error -84 transferring data, sector 2, nr 6, cmd response 0x900, card status 0x0 [ 2.665914] blk_update_request: I/O error, dev mmcblk0, sector 2 [ 2.666393] mmcblk0: error -84 transferring data, sector 5, nr 3, cmd response 0x900, card status 0x0 [ 2.666398] blk_update_request: I/O error, dev mmcblk0, sector 5 [ 2.666728] mmcblk0: error -84 transferring data, sector 7, nr 1, cmd response 0x900, card status 0x0
因此、我们尝试检查 eMMC0信息、看起来 DRA746可以检测 MTFC8GACA
root@wnc-j6:~# cat /sys/kernel/debug/mmc*/ios clock: 52000000 Hz vdd: 21 (3.3 ~ 3.4 V) bus mode: 2 (push-pull) chip select: 0 (don't care) power mode: 2 (on) bus width: 2 (4 bits) timing spec: 1 (mmc high-speed) signal voltage: 0 (3.30 V) driver type: 0 (driver type B)
器件树如下所示:
&mmc1 { status = "okay"; vmmc-supply = <&evm_3v3_sd>; vmmc_aux-supply = <&ldo1_reg>; bus-width = <4>; //cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; max-frequency = <192000000>; pinctrl-names = "default", "hs"; pinctrl-0 = <&mmc1_pins_default>; pinctrl-1 = <&mmc1_pins_hs>; };
我们以如下方式引用 E2E:
我认为(猜)数据线(D0~D3)可能会有一些问题、因为系统尝试切换总线宽度时会发生错误。
能否有人给我们提供一些调试方向? (包括软件和硬件)
非常感谢
吉布斯