Question about "regulator: core: Only count load for enabled consumers" in -next
From: Brian Masney
Date: Sun Nov 25 2018 - 04:38:14 EST
Hi all,
I see errors like the following in linux next-20181123 when trying to
boot a mainline kernel on a LG Nexus 5 phone:
[ 14.495056] mmc1: Card stuck in wrong state! mmcblk1 card_busy_detect status: 0xe00
[ 14.495185] mmc1: cache flush error -110
[ 14.601547] mmc1: Reset 0x1 never completed.
[ 14.601572] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 14.604882] mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00003802
[ 14.611240] mmc1: sdhci: Blk size: 0x00004000 | Blk cnt: 0x00000000
[ 14.617664] mmc1: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
[ 14.624064] mmc1: sdhci: Present: 0x01e80000 | Host ctl: 0x00000000
[ 14.630508] mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000000
[ 14.636930] mmc1: sdhci: Wake-up: 0x00000000 | Clock: 0x00000003
[ 14.643335] mmc1: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
[ 14.649778] mmc1: sdhci: Int enab: 0x00000000 | Sig enab: 0x00000000
[ 14.656200] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[ 14.662606] mmc1: sdhci: Caps: 0x642dc8b2 | Caps_1: 0x00008007
[ 14.669051] mmc1: sdhci: Cmd: 0x00000000 | Max curr: 0x00000000
[ 14.675469] mmc1: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
[ 14.681877] mmc1: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[ 14.688320] mmc1: sdhci: Host ctl2: 0x00000000
[ 14.694720] mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x70042330
[ 14.699080] mmc1: sdhci: ============================================
I bisected the issue to the following commit:
5451781dadf8 ("regulator: core: Only count load for enabled consumers")
We have to increase the load for the sdhci in device tree in order for
the phone to boot properly. This change was made with the commit:
03864e57770a ("ARM: dts: qcom: msm8974-hammerhead: increase load on l20
for sdhci")
Is there a change that I should make in device tree to get the SD card
working again on the phone?
Thanks,
Brian