This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: usb Host-side ethernet driver
The documentation says it was written for RedHat 6.2, but if you look at the
header file for
netdevice.h , you can see that this can't be the case. Looks a lot like the
2.4 kernel, but not 100%.
The Makefile that comes with eCos to compile ecos_usbeth.c does not work
at all, so I wrote one that works, and a one-line change to ecos_usbeth.c
is all I needed to do to get it to compile.
Looking at /var/log/messages:
Oct 26 12:43:58 rtp00183 kernel: eCos USB-ethernet device driver
Oct 26 12:43:58 rtp00183 kernel: usb.c: registered new driver ecos_usbeth
Oct 26 12:44:20 rtp00183 kernel: hub.c: USB new device connect on bus1/1,
assigned device number 8
Oct 26 12:44:20 rtp00183 kernel: usb-uhci.c: interrupt, status 2, frame# 879
Oct 26 12:44:20 rtp00183 kernel: usb.c: USB device not accepting new
address=8 (error=-110)
Oct 26 12:44:20 rtp00183 kernel: hub.c: USB new device connect on bus1/1,
assigned device number 9
Oct 26 12:44:20 rtp00183 kernel: usb-uhci.c: interrupt, status 2, frame# 1129
Oct 26 12:44:20 rtp00183 kernel: usb.c: USB device not accepting new
address=9 (error=-110)
Can someone tell me what this means?
Also, is there documentaion or an example of what I need to do on the eCos
side to get usb_ethernet to
work? I have a custom SA1110 board which looks a lot like the assabet
(functionally). Which packages
and settings should I use?
What I REALLY would like is to have RedBoot communicate to my host via
ethernet, but until my ethernet
card comes in, I would not mind trying a usb-ethernet connection if that is
possible.
Any detailed help (.ecc scripts etc.) would be appreciated.
Warren
Andrew Lunn wrote:
> > {warrenj@rtp00183.rtp.bops.com:163} make
> > make -C /usr/src/linux-2.4 SUBDIRS=/tmp/usb_eth modules
> > make[1]: Entering directory `/usr/src/linux-2.4.3'
> > make -C /tmp/usb_eth CFLAGS="-D__KERNEL__
> > -I/usr/src/linux-2.4.3/include -Wall -Wstrict-prototypes -O2
> > -fomit-frame-pointer -fno-strict-aliasing -fno-common -Wno-unused -pipe
> > -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include
> > /usr/src/linux-2.4.3/include/linux/modversions.h" MAKING_MODULES=1
> > modules
> > make[2]: Entering directory `/tmp/usb_eth'
> > gcc -D__KERNEL__ -I/usr/src/linux-2.4.3/include -Wall
> > -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing
> > -fno-common -Wno-unused -pipe -mpreferred-stack-boundary=2 -march=i686
> > -DMODULE -DMODVERSIONS -include
> > /usr/src/linux-2.4.3/include/linux/modversions.h -c -o ecos_usbeth.o
> > ecos_usbeth.c
> > In file included from /usr/src/linux-2.4.3/include/linux/spinlock.h:35,
> > from /usr/src/linux-2.4.3/include/linux/module.h:11,
> > from ecos_usbeth.c:42:
> > /usr/src/linux-2.4.3/include/asm/spinlock.h:9: nondigits in number and
> > not hexadecimal
> > /usr/src/linux-2.4.3/include/asm/spinlock.h:9: nondigits in number and
> > not hexadecimal
> > /usr/src/linux-2.4.3/include/asm/spinlock.h:9: parse error before
> > `1b7d4074'
>
> This errors are wierd...
>
> Line 9 of spinlock.h is an prototype definition of printk.
>
> The 2b7d4074 is whats wrong. You seem to have some junk in your source
> code. Try compiling it -E and have a look at the output from CPP. I
> suspect you have corrupted either your kernel sources or the usb_eth
> driver sources.
>
> As for using the driver in 2.4.3, we have not experiance with
> this. Wasn't the USB code re-written between kernels 2.2 and 2.4? I
> don't follow what goes on with the kernel so i don't really know.
>
> Andrew