On 9/26/20 1:49 PM, Sam Ravnborg wrote:
Hi Alexandru
On Thu, Sep 24, 2020 at 03:05:05PM -0500, Alexandru Gagniuc wrote:
On the SII9022, the IOVCC and CVCC12 supplies must reach the correct voltage before the reset sequence is initiated. On most boards, this assumption is true at boot-up, so initialization succeeds.
However, when we try to initialize the chip with incorrect supply voltages, it will not respond to I2C requests. sii902x_probe() fails with -ENXIO.
To resolve this, look for the "iovcc" and "cvcc12" regulators, and make sure they are enabled before starting the reset sequence. If these supplies are not available in devicetree, then they will default to dummy-regulator. In that case everything will work like before.
This was observed on a STM32MP157C-DK2 booting in u-boot falcon mode. On this board, the supplies would be set by the second stage bootloader, which does not run in falcon mode.
Signed-off-by: Alexandru Gagniuc mr.nuke.me@gmail.com
One nitpick here. The binding should be present in the tree before you start using it. So this patch should be applied after the binding.
It is :) * arch/arm/boot/dts/stm32mp15xx-dkx.dtsi
Alex
One detail below - I think others have already commented on the rest.
[snip]