On 17/02/2019 14:00, Robin Murphy wrote:
Hi David,
On 2019-02-17 12:15 pm, David Summers wrote:
This patch makes some minor changes to how the sd card is
described in the device tree for the ASUS Tinker Board (S). In
particular on the Tinker Board S, when booted from the eMMC, and with
no card in the sd slot, and the log has endless messages about not
being able to detect the card.
Several methods to remove this error have been tried, the only one
that works is the broken-cd and so that is what is applied here.
I don't have a Tinker Board, but the symptom sounds instantly familiar
from hacking on another RK3288 box; have you tried adding
"regulator-always-on" to the vccio_sd regulator?
With the reference design (which I would assume the Tinker Board has
no reason to deviate from in this area), the CD pin is either wired
directly to the SoC with no external pull-up, or explicitly pulled up
to VCCIO_SD. Either way, when the dwmmc driver probes and discovers
there is no card present, it sets the currently-unnecessary
vqmmc-supply as inactive, and thus the regulator core turns off
VCCIO_SD entirely. Unfortunately, this removes the voltage from the
entire I/O domain including the internal pull-up, which ends up
leaving the CD pin floating and generating spurious events.
Robin.
Hi Robin,
An interesting suggestion - no it hasn't been tried to always set the
vccio_sd regulator on. Will give it a go on ArchLinux Arm.
I guess this would explain why the Tinker Board booting from sd doesn't
see the error, as its enabled probably in uboot and then keeps working.
IIRC though, if booting the TBS from eMMC, then inserting an sd card and
the errors stop. I guess this wouldn't happen if the power wasn't applied?
I guess also that "regulator-always-on" is a quick test - but that for
submission to kernel it would be better done via "mmc-pwrseq-simple"?
Anyway I set up a test - so we can confirm this.
David.