Device tree bug in armada-8040-mcbin.dts

Russell King - ARM Linux linux at
Tue Feb 6 17:15:44 PST 2018

On Tue, Feb 06, 2018 at 04:59:22PM -0500, Mikulas Patocka wrote:
> Hi
> When the MacchiatoBIN kernel is compiled with CONFIG_PM=y, it is 
> frequently reporing this error (the error happens every time some I/O on 
> built-in eMMC happens):
> "mmc0: Switching to 3.3V signalling voltage failed"

Yep, it's annoying.

> The problem is that the "&ap_sdhci0" device tree node asserts that the 
> controller doesn't support 1.8v, but it attaches it to the fixed voltage 
> regulator "v_vddo_h" that only supplies 1.8V.
> Should it be attached to the 3.3V regulator instead? Or should the 
> "vqmmc-supply" statemet be deleted? Or should the statement "no-1-8-v" be 
> deleted?

Removing the "no-1-8-v" statement breaks it, and the reality is that the
signalling voltage is fixed at 1.8V, so the "vqmmc-supply" is correct.
The problem here is that the MMC layer doesn't understand that, and
always wants to do the initial probe at vqmmc=3.3V.  Hence the above

It would be nice if MMC understood the concept of a bus operating at a
fixed voltage, then the "no-1-8-v" hack could be removed.

Which-ever way is chosen, the result is that we end up _not_ describing
the hardware, but we end up describing something suitable for the
implementation, which is not how DT is supposed to work.  MMC really
needs to be fixed.

RMK's Patch system:
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to 8.21Mbps down 510kbps up

More information about the linux-arm-kernel mailing list