reading from eMMC boot partions: timeout or ECC error?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I'm currently investigating problems during accessing /dev/mmcblk1boot0 and
/dev/mmcblk0 simultaneously. Currenty I'm running a 3.6.2 kernel and enter the
following command directly after bootup:
> # dd if=/dev/mmcblk1boot0 of=/dev/null bs=4096 (bs is chosen arbitrary)
and get the following output:
> 64+0 records in
> 64+0 records out
> 262144 bytes (256.0KB) copied, 0.022922 seconds, 10.9MB/s
If I redo this, i get
> # dd if=/dev/mmcblk1boot0 of=/dev/null bs=4096
> 64+0 records in
> 64+0 records out
> 262144 bytes (256.0KB) copied, 0.719781 seconds, 355.7KB/s

And the following 2 lines in dmesg:
> [   39.794510] mmcblk1boot0: error -110 transferring data, sector 0, nr 32, cmd response 0x900, card status 0xb00
> [   39.805648] mmcblk1boot0: retrying using single block read

It seems the first read was successful and pretty fast and the 2nd one
eventually finished but it seems it got a timeout. The above message are
printed when the request status is MMC_BLK_ECC_ERR which in turn is set
when the following conditions is met:
drivers/mmc/card/block.c 726-728
> if ((status & R1_CARD_ECC_FAILED) ||
>     (brq->stop.resp[0] & R1_CARD_ECC_FAILED) ||
>     (brq->cmd.resp[0] & R1_CARD_ECC_FAILED))

So is this an ECC error or a timeout? Why doesn't it happen the 1st time?
Any hints?

Best regards,
Alexander

PS: Is arbitrary switching bewteen mmcblk1boot0 and mmcblk1 supported/intended?
Once I acces mmcblk1boot0 readin from mmcblk1 results in different errors.

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux