On Sun, Nov 18, 2018 at 06:12:34PM +0000, Priit Laes wrote:
> On Sat, Nov 17, 2018 at 05:19:38PM +0100, Paul Kocialkowski wrote:
> > Hi,
> >
> > On Fri, 2018-11-16 at 15:07 +0000, Priit Laes wrote:
> > > On Fri, Nov 16, 2018 at 03:46:14PM +0100, Jens Thiele wrote:
> > > > Priit Laes <[email protected]> writes:
> > > >
> > > > > Heya!
> > > > >
> > > > > I've been running into intermittent u-boot hangs
> > > > > (latest u-boot and kernel mainline versions) on various
> > > > > Olimex A20 Lime2 boards. These hangs seem to happen always
> > > > > in the same spot after rebooting mainline kernel:
> > > > >
> > > > > [snip]
> > > > > U-Boot SPL 2018.11-rc2-00064-gada6bb81d9-dirty (Nov 16 2018 -
> > > > > 15:48:29 +0200)
> > > > > DR
> > > > > [/snip]
> > > > >
> > > > > Any ideas what to test?
> > > >
> > > > is your power supply unit strong enough? (especially if you have LCD
> > > > displays attached)
> > >
> > > Should be, 2A 5V brick via barrel connector.
> > >
> > > Other things connected:
> > > - serial (uart)
> > > - ethernet cable
> > > - hdmi cable
> > > - otg cable
> >
> > I have been experiencing the same issue on an A20-OLinuXino-Lime2 (non-
> > eMMC). It seems to happen when rebooting from the kernel, but not with
> > the "reset" command in U-Boot.
>
> Yes, confirming that reset command from u-boot works.
OK, I managed to track it down to enabling ALDO3 regulator.
Unfortunately adding delays did not help, and only thing
that seems to be working is to disable regulator in the
configuration (CONFIG_AXP_ALDO3_VOLT ):
[snip]
diff --git a/board/sunxi/board.c b/board/sunxi/board.c
index d1d7f9f400..70d8e7a0f7 100644
--- a/board/sunxi/board.c
+++ b/board/sunxi/board.c
@@ -552,14 +552,22 @@ void sunxi_board_init(void)
defined CONFIG_AXP818_POWER
power_failed |= axp_set_aldo1(CONFIG_AXP_ALDO1_VOLT);
#endif
+ puts("aldo2\n");
+ udelay(100000);
power_failed |= axp_set_aldo2(CONFIG_AXP_ALDO2_VOLT);
#if !defined(CONFIG_AXP152_POWER)
+ puts("aldo3\n");
+ udelay(100000);
power_failed |= axp_set_aldo3(CONFIG_AXP_ALDO3_VOLT);
#endif
#ifdef CONFIG_AXP209_POWER
+ puts("aldo4\n");
+ udelay(100000);
power_failed |= axp_set_aldo4(CONFIG_AXP_ALDO4_VOLT);
#endif
+ puts("OK?\n");
+
#if defined(CONFIG_AXP221_POWER) || defined(CONFIG_AXP809_POWER) || \
defined(CONFIG_AXP818_POWER)
power_failed |= axp_set_dldo(1, CONFIG_AXP_DLDO1_VOLT);
[/snip]
> >
> > Cheers,
> >
> > Paul
> >
> > --
> > Developer of free digital technology and hardware support.
> >
> > Website: https://www.paulk.fr/
> > Coding blog: https://code.paulk.fr/
> > Git repositories: https://git.paulk.fr/ https://git.code.paulk.fr/
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "linux-sunxi" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to [email protected].
> > For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "linux-sunxi" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.