[yocto] USB Ethernet problems

Gary Thomas gary at mlbassoc.com
Fri Apr 5 05:48:35 PDT 2013


On 2013-04-05 06:38, Hans Beckérus wrote:
>
>
> On Fri, Apr 5, 2013 at 12:16 PM, Gary Thomas <gary at mlbassoc.com <mailto:gary at mlbassoc.com>> wrote:
>
>     On 2013-04-05 03:08, Hans Beckérus wrote:
>
>         Hi. In our configuration we do not have an on-board Ethernet device. It connected to the USB-host adapter.
>         It seems that probing of such devices are done very late in the kernel boot-up which means it gets out of sync with the network init script(s)
>         and the NIC thus has to be brought up manually after boot.
>
>         ...
>         usb 1-1: new high-speed USB device number 2 using xusbps-ehci
>         hub 1-1:1.0: USB hub found
>         hub 1-1:1.0: 4 ports detected
>         VFS: Mounted root (ext2 filesystem) on device 1:0.
>         devtmpfs: mounted
>         Freeing init memory: 152K
>         INIT: version 2.88 booting
>         usb 1-1.4: new high-speed USB device number 3 using xusbps-ehci
>         Starting Bootlog daemon: bootlogd: cannot allocate pseudo tty: No such file or directory
>         bootlogd.
>         Configuring network interfaces... ifconfig: SIOCGIFFLAGS: No such device
>         INIT: Entering runlevel: 5
>         Starting Dropbear SSH server: NET: Registered protocol family 10
>         dropbear.
>         Starting syslogd/klogd: done
>         Stopping Bootlog daemon: bootlogd.
>         asix 1-1.4:1.0: eth0: register 'asix' at usb-xusbps-ehci.0-1.4, ASIX AX88772 USB 2.0 Ethernet, fc:75:16:cf:6a:86
>         ...
>
>         Is there some way to configure a system through Yocto to handle this scenario?
>
>
>     I run exactly this setup on many different platforms with no issues
>     so it can definitely be done with Poky/Yocto.
>
>     What system (target) are you using?
>     What version of the metadata (Poky/Yocto) are you using?  master?  danny?  etc
>     How is your network device configured?
>
> I am on branch master.
> My network device is *not* configured. That is the whole point/?problem?. The kernel knowns nothing about the NIC at boot.
> It is not detected until it first detects the USB 2.0 host adapter. Then after a few moments the NIC is probed and eth0 becomes available through the ASIX driver. But its too late,
> the /etc/init.d/networking is already done trying ifup :(
> Is there some configuration on network level I can do to fix this? Right now I have an ugly patch in /etc/init.d/networking that spins until eth0 comes up. It solves the sync
> issue, but also requires some sort of timeout to not get stuck forever if the device is never inserted :(

Is your ethernet driver compiled in or a kernel module?

I'm using a compiled in driver (the same one BTW) and it works fine.

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the yocto mailing list