
On Mon, Jan 21, 2019 at 11:38 PM Vasily Khoruzhick anarsoul@gmail.com wrote:
On Mon, Jan 21, 2019 at 2:32 AM Jagan Teki jagan@amarulasolutions.com wrote:
Environment and fastboot MMC devices are configured based number of mmc slots defined on particular board in sunxi platform.
If number of slots are not more than 1, it assigns 0 which usually mmc device on SD slot. With DM_MMC it is detected as 0 since mmc0 node always be an mmc device.
If number of slots are more than 1, it assigns 1 which assumes 0 is mmc device and 1 is emmc device. But with DM_MMC there is chance of detecting emmc as device 2 since mmc1 is SDIO as per devicetree definition.
So override mmc2 to mmc1 in sunxi dtsi, this will eventually detect mmc2 as mmc 1 device even if the board dts has mmc0, mmc1, mmc2.
It doesn't work on Pinebook - where we have mmc0 (SD card), mmc1 (SDIO), mmc2 (eMMC). It still enumerates mmc2 as mmc2.
Try doing a clean build (i.e., do make distclean beforehand)?
It worked for me once I did that.
ChenYu
Some platforms like A20 has mmc0...mmc3, but there is no usecases now for enabling all mmc controllers in any of A20 board dts files.
Signed-off-by: Jagan Teki jagan@amarulasolutions.com
arch/arm/dts/sunxi-u-boot.dtsi | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/arch/arm/dts/sunxi-u-boot.dtsi b/arch/arm/dts/sunxi-u-boot.dtsi index 8a9f2a6417..fdd4c80aa4 100644 --- a/arch/arm/dts/sunxi-u-boot.dtsi +++ b/arch/arm/dts/sunxi-u-boot.dtsi @@ -1,6 +1,10 @@ #include <config.h>
/ {
aliases {
mmc1 = &mmc2;
};
binman { filename = "u-boot-sunxi-with-spl.bin"; pad-byte = <0xff>;
-- 2.18.0.321.gffc6fa0e3