On 09:42-20240820, Bjorn Andersson wrote:
On Mon, Aug 19, 2024 at 03:43:52PM -0500, Judith Mendez wrote:
SK-AM62A-LP is a device targeting automotive front-camera applications
among other use-cases. It utilizes the TPS6593x PMIC (interfaced over I2C)
to power the SoC and various other peripherals on the board [1].
MMCSD requires the PMIC to be setup correctly before setting the bus
pins to 1.8V using the TPS6594 driver interfaced over i2c.
Currently, the following could be seen when booting the am62ax platform:
"platform fa00000.mmc: deferred probe pending: platform: supplier regulator-5 not ready"
"vdd_mmc1: disabling"
Is this the regulator framework disabling the "unused" vdd_mmc1 while
you still have a probe deferred client?
That's not right.
I think context of the full log might be missing, hence misleading - but
if this is correct, regulator framework might have a problem as well -
it does not change the fact that we will need regulator driver to
support switch from 3.3v to 1.8v to enable UHS (which is another
topic as well - do not trust the bootloader either for the default
voltage enabled in the system).
Judith: This is why providing links to previous versions of patches AND
providing links to the full before and after logs in the diffstat
section helps reviewers - please do that in the next revision.
and a failure to boot the SK-AM62A-LP.
One solution is to use initramfs [2], but using initramfs increases the
boot time for this automotive solution which requires faster boot time
parameters.
Another solution is to change MFD_TPS6594_I2C to built-in, that way the
PMIC is setup and the regulators are ready before MMCSD switches to UHS
mode, this is the preferred solution since it does not increase boot time
like the initramfs solution does.
What is the adder in cost? bloat-o-meter report summary should have
been part of commits that increase vmlinux
[1] https://www.ti.com/lit/zip/sprr459
[2] https://lore.kernel.org/linux-devicetree/5f03207b-c29b-4d16-92b0-d14eef77bf17@xxxxxxxxxx/
Fixes: f9010eb938be ("arm64: defconfig: Enable TPS6593 PMIC for SK-AM62A")
Signed-off-by: Judith Mendez <jm@xxxxxx>
---
arch/arm64/configs/defconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 7d32fca649965..61f767246d3a5 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -756,7 +756,7 @@ CONFIG_RZ_MTU3=y
CONFIG_MFD_TI_AM335X_TSCADC=m
CONFIG_MFD_TI_LP873X=m
CONFIG_MFD_TPS65219=y
-CONFIG_MFD_TPS6594_I2C=m
+CONFIG_MFD_TPS6594_I2C=y
These things should work with =m, and then you can make them =y in your
product config to avoid the probe deferral.
I think this is inline with the discussion with Krystoff on the topic as
well
Judith: you just need the regulator, for sd/mmc to work. Why is there
half a dozen unrelated stuff coming with it [1] report from
bloat-o-meter? Please fix the driver dependencies before adding
un-necessary stuff to the kernel Image file.
[1] https://gist.github.com/nmenon/0caff032a430bbf649ad1107e6f12f9a