[U-Boot] [bug report] sunxi: booting from eMMC

Jaehoon Chung jh80.chung at samsung.com
Wed Oct 12 15:30:56 CEST 2016


On 10/12/2016 10:11 PM, Alexandr Bochkarev wrote:
> Now i boot marsboard from sd card with new config

Good.

> 
> => mmc list
> SUNXI SD/MMC: 0 (SD)
> SUNXI SD/MMC: 1
> 
> => mmc info
> Device: SUNXI SD/MMC
> Manufacturer ID: 2
> OEM: 544d
> Name: SA04G 
> Tran Speed: 50000000
> Rd Block Len: 512
> SD version 3.0
> High Capacity: Yes
> Capacity: 3.6 GiB
> Bus Width: 4-bit
> Erase Group Size: 512 Bytes
> 
> => mmc part
> 
> Partition Map for MMC device 0  --   Partition Type: DOS
> 
> Part.Start Sector.Num Sectors.UUID..Type
>   1.2048      .12288     .da1dcf13-01.83
>   2.14336     .204800    .da1dcf13-02.83
>   3.219136    .204800    .da1dcf13-03.83
>   4.423936    .409600    .da1dcf13-04.05 Extd
>   5.425984    .204800    .da1dcf13-05.83
>   6.632832    .200704    .da1dcf13-06.83
> 
> => mmc dev 1
> CMD_SEND:0
> ..ARG... 0x00000000
> ..MMC_RSP_NONE
> CMD_SEND:8
> ..ARG... 0x000001AA
> ..RET... -110
> CMD_SEND:55
> ..ARG... 0x00000000
> ..RET... -110
> CMD_SEND:0
> ..ARG... 0x00000000
> ..MMC_RSP_NONE
> CMD_SEND:1
> ..ARG... 0x00000000
> ..MMC_RSP_R3,4.. 0x00FF8080 
> CMD_SEND:1
> ..ARG... 0x40300000
> ..MMC_RSP_R3,4.. 0x00FF8080 
> CMD_SEND:0
> ..ARG... 0x00000000
> ..MMC_RSP_NONE
> CMD_SEND:1
> ..ARG... 0x40300000
> ..MMC_RSP_R3,4.. 0x00FF8080 
> CMD_SEND:1
> ..ARG... 0x40300000
> ..MMC_RSP_R3,4.. 0xC0FF8080 
> CMD_SEND:2
> ..ARG... 0x00000000
> ..MMC_RSP_R2.. 0x1501004D 
> ..          .. 0x34473146 
> ..          .. 0x42030B01 
> ..          .. 0x7585C009 
> 
> .....DUMPING DATA
> .....000 - 15 01 00 4D 
> .....004 - 34 47 31 46 
> .....008 - 42 03 0B 01 
> .....012 - 75 85 C0 09 
> CMD_SEND:3
> ..ARG... 0x00010000
> ..MMC_RSP_R1,5,6,7 . 0x00000500 
> CMD_SEND:9
> ..ARG... 0x00010000
> ..MMC_RSP_R2.. 0xD0270132 
> ..          .. 0x0F5903FF 
> ..          .. 0xF6DBFFE7 
> ..          .. 0x8A404057 
> 
> .....DUMPING DATA
> .....000 - D0 27 01 32 
> .....004 - 0F 59 03 FF 
> .....008 - F6 DB FF E7 
> .....012 - 8A 40 40 57 
> CMD_SEND:13
> ..ARG... 0x00010000
> ..MMC_RSP_R1,5,6,7 . 0x00000700 
> CURR STATE:3
> CMD_SEND:7
> ..ARG... 0x00010000
> ..MMC_RSP_R1,5,6,7 . 0x00000700 
> CMD_SEND:8
> ..ARG... 0x00000000
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:8
> ..ARG... 0x00000000
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:6
> ..ARG... 0x03B90100
> ..MMC_RSP_R1b.. 0x00000900 
> CMD_SEND:13
> ..ARG... 0x00010000
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CURR STATE:4
> CMD_SEND:8
> ..ARG... 0x00000000
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:6
> ..ARG... 0x03B70100
> ..RET... -110

Maybe at here..switch to buswidth..but failed.
define debug() in your mmc driver..or enable CONFIG_DEBUG..then you can see all debug message.

> CMD_SEND:16
> ..ARG... 0x00000200
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:17
> ..ARG... 0x00000000
> ..RET... -110
> mmc_bread: Failed to read blocks
> CMD_SEND:16
> ..ARG... 0x00000200
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:17
> ..ARG... 0x00000000
> ..RET... -110
> mmc_bread: Failed to read blocks
> CMD_SEND:16
> ..ARG... 0x00000200
> ..MMC_RSP_R1,5,6,7 . 0x00000900 
> CMD_SEND:18
> ..ARG... 0x00000040
> ..RET... -110
> mmc_bread: Failed to read blocks
> switch to partitions #0, OK
> mmc1(part 0) is current device
> 
> 
> => mmc info
> Device: SUNXI SD/MMC
> Manufacturer ID: 15
> OEM: 100
> Name: M4G1F 
> Tran Speed: 52000000
> Rd Block Len: 512
> MMC version 4.4.1
> High Capacity: Yes
> Capacity: 3.6 GiB
> Bus Width: 1-bit
> Erase Group Size: 512 KiB
> HC WP Group Size: 4 MiB
> User Capacity: 3.6 GiB WRREL
> Boot Capacity: 1 MiB ENH
> RPMB Capacity: 128 KiB ENH
> 
> => mmc part
> ## Unknown partition table type 0
> 
> 
> 
> 
> eMMC burned same image as SD. And seems like it doesnt switched to 4-bit bus width

If you're setting MMC_MODE_8BIT..try to remove it..

> 
> 



More information about the U-Boot mailing list