FreeBSD-10-STABLE hangs when booting from BeagleBone Black eMMC
Patrick Kelsey
kelsey at ieee.org
Mon Apr 28 02:35:33 UTC 2014
On Sun, Apr 27, 2014 at 9:28 PM, Ian Lepore <ian at freebsd.org> wrote:
> On Sun, 2014-04-27 at 21:10 -0400, Winston Smith wrote:
> > On Sun, Apr 27, 2014 at 2:52 PM, Ian Lepore <ian at freebsd.org> wrote:
> > > When it comes to the eMMC timeouts that happen after you've booted,
> > > that's something in my arena, but hard for me to debug without eMMC
> > > hardware. We've recently had a few changes to both the core sdhci
> > > driver and to the ti_sdhci code that glues sdhci to the hardware.
> > >
> > > Do the timeouts happen often, or is this something you can do to
> trigger
> > > them? If so, it might be interesting to try to revert r264099 and see
> > > if the problems go away. Those changes were related to configuring the
> > > sd clock. I'm pretty sure the old code was wrong, but the replacement
> > > code could have errors too. :)
> >
> > At this point:
> >
> > 1) Timeouts (11-CURRENT)
> > - I have seen them twice under heavy eMMC write load, but they
> > haven't seemed to cause a problem for me
> > - Fabio did report the timeouts followed by a panic
> > 2) I can't boot from eMMC with 10-STABLE (but I can with 11-CURRENT)
> > (both using the *same* u-boot)
> >
> > So:
> >
> > A) Should I go back to 11-CURRENT? (although I need 10-something for
> Golang)
> > B) How can I/we help debug this further?
> >
> > Thanks!
> >
>
> If you need 10 we should probably figure out what the problem is there.
> If the same u-boot works on 11 and fails on 10, then the difference must
> be in ubldr, and there certainly have been changes there in 11.
>
> The quickest way to test that theory would be to build the image for 10
> and then hand-copy the ubldr from an 11 build onto that sdcard and see
> if it works. If so, we can see about merging some ubldr stuff to 10.
> It may need to go into the msdos partition (I net-boot all my boards).
>
The issue with booting from eMMC on 10-STABLE is in ubldr. On 10-STABLE,
ubldr is hardwired to boot from the first disk device, which will always be
the SD card when using a u-boot that has my mmc device enumeration patches
(or an equivalent). The changes that Ian and I made to ubldr would have to
be MFC'd to 10-STABLE to get the behavior you want without resorting to
copying ubldr built from an 11-CURRENT tree to your device.
-Patrick
More information about the freebsd-arm
mailing list