[U-Boot] MMC - Error detected in status(0x208100)!
Rommel Custodio
sessyargc+uboot at gmail.com
Thu Jan 31 03:44:41 CET 2013
Dear Jagannadha,
>Jagannadha Sutradharudu Teki <jagannadha.sutradharudu-teki <at> xilinx.com>
writes:
>
> Hi Andy,
>
> The latest patch "mmc: Properly determine maximum supported bus width"
> (sha1: 7798f6dbd5e1a3030ed81a81da5dfb57c3307cac) is causing some error status
issue on
> zynq platform with MMC Plus cards.
>
> Here the out what I get with inclusion of this patch on u-boot tree.
> zynq-uboot> mmcinfo
> Error detected in status(0x208100)!
> Device: zynq_sdhci
> Manufacturer ID: 1e
> OEM: ffff
> Name: MMC
> Tran Speed: 52000000
> Rd Block Len: 512
> MMC version 4.0
> High Capacity: No
> Capacity: 1.9 GiB
> Bus Width: 4-bit
>
> When I revert this path, I am unable to see the status error.
> zynq-uboot> mmcinfo
> Device: zynq_sdhci
> Manufacturer ID: 1e
> OEM: ffff
> Name: MMC
> Tran Speed: 52000000
> Rd Block Len: 512
> MMC version 4.0
> High Capacity: No
> Capacity: 1.9 GiB
> Bus Width: 12-bit
>
> I think the above one is also a buggy as my controller is unable to support
12-bit bus width.?
>
I've been using the latest u-boot (v2013.01) on ML507 with a custom SDHCI IP. No
problems detected with this patch.
The output of both patched and unpatched u-boot seems to be correct. Except for
the Data CRC Error (bit 21) in the patched version.
Several things to check:
1) Verify the controller settings on both patched and unpatched u-boot. The
printf()s are just prints some IPs (like the one I'm using) don't allow changing
the register value on some conditions (ie during CMD_INHIBIT and/or
DAT_INHIBIT). This would make the printf()s look correct but the actual register
value is incorrect.
2) Try lowering your SDCLK (ie 25Mhz High-speed mode).
3) Try disabling High-speed mode (which limits you to 25MHz Legacy mode).
All the best,
Rommel
More information about the U-Boot
mailing list