Towards an ARM system-building script

Ian Lepore freebsd at damnhippie.dyndns.org
Thu Oct 11 14:55:59 UTC 2012


On Thu, 2012-10-11 at 00:16 -0700, Tim Kientzle wrote:
> On Oct 10, 2012, at 3:08 PM, Giovanni Trematerra wrote:
> 
> > On Wed, Oct 10, 2012 at 3:42 PM, Ian Lepore
> > <freebsd at damnhippie.dyndns.org> wrote:
> >> On Tue, 2012-10-09 at 23:42 +0200, Giovanni Trematerra wrote:
> >>> I booted a kernel with your suggestion but I get a panic during
> >>> initialization of ue0 I think
> >> 
> >> It looks like bootpc_init() is getting called before USB has found the
> >> ethernet adapter.  It might be fixable with a simple patch such as the
> >> following, but I really don't know whether this will work, and even if
> >> it does, whether it's a good idea (hopefully someone more knowledgable
> >> will offer an opinion).  But if nothing else it's an interesting
> >> experiment to try.
> > 
> > I think the patch is wrong at least in my case.
> > I had to run the "usb start" command from U-boot to have
> > ethernet card of PandaBoard working.
> 
> What happens if you disable BOOTP in the kernel?
> 
> That might help clarify whether the Ethernet isn't
> working at all or whether the Ethernet isn't getting
> started early enough for BOOTP.
> 
> Tim
> 

It's very clear from the panic message and the dmesg output that the usb
stack hasn't finished enumerating the bus and thus hasn't instantiated
the ue0 device before bootpc_init() is called.  The only part I'm unsure
about is whether it's safe to call root_mount_wait() from within
boopc_init().  I don't know if there are any rules about calling
root_mount_wait() (locking, which thread(s) can call it, etc).  

I'm also a bit unsure about the whole concept of using root_mount_wait()
as a proxy for "all usb devices have been enumerated."  That seems,
conceptually, like relying on an undocumented side effect of a routine.
I'm also not sure it actually works... on freebsd 8.2 at least, I've
seen usb devices appear after root is mounted (hard-wired onto the
motherboard devices, not removables).

-- Ian




More information about the freebsd-arm mailing list