[Avila] IXP 400 Access Libary and Ethernet Drivers

Joel Lindsay joel at waveteq.com
Thu Dec 7 17:22:24 EST 2006


I must say this is the biggest pain ever.

I am trying to get the ethernet port to work on the avila board, I am just 
using the little 2347 board, so no hardware encryption.  Should be simple 
simple simple.

After struggling through the documentation to try to figure out what I 
needed, and then realising that some of the files the document asks for are 
not even there I think I managed to find them all.

BSD_ixp400AccessLibrary-2_3.zip - Access Library Source
BSD_ixp400AccessLibrary-2_3_1.zip - Access Library Source Patch
GPL_ixp400LinuxEthernetDriverPatch-1_6.zip - Ethernet Driver Source
IPL_ixp400NpeLibrary-2_3.zip - Microcode
GPL_kernel-2.6.19-bugfix-1_1.patch - Made this myself from some old file 
from sourceforge that doesnt exist anymore
ixp400LinuxKernel-BE-1_3.patch - I think this patch is supposed to patch 
kernel so I can select to build the ethernet modules

Of couse after having these files, I followed the documentation word for 
word and ended up with lots of errors that look like

When I try to make modules from the linux directory:

/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/src/include/IxQueueAssignments.h:90:5: 
warning: "IX_UTOPIAMODE" is not defined
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/src/include/IxQueueAssignments.h:93:5: 
warning: "IX_MPHYSINGLEPORT" is not defined
drivers/net/ixp400_eth.c:189: error: parse error before string constant
drivers/net/ixp400_eth.c:189: warning: type defaults to `int' in declaration 
of `MODULE_PARM'
drivers/net/ixp400_eth.c:189: warning: function declaration isn't a 
prototype
drivers/net/ixp400_eth.c:189: warning: data definition has no type or 
storage class
drivers/net/ixp400_eth.c:192: error: parse error before string constant
drivers/net/ixp400_eth.c:192: warning: type defaults to `int' in declaration 
of `MODULE_PARM'
drivers/net/ixp400_eth.c:192: warning: function declaration isn't a 
prototype
drivers/net/ixp400_eth.c:192: warning: data definition has no type or 
storage class
drivers/net/ixp400_eth.c:194: error: parse error before string constant
drivers/net/ixp400_eth.c:194: warning: type defaults to `int' in declaration 
of `MODULE_PARM'

When I try a make ixp400 from the ixp400_xscale_sw directory:

In file included from 
/home/joel/dev/buildroot/linux-2.6.19/include/linux/bitops.h:9,
                 from 
/home/joel/dev/buildroot/linux-2.6.19/include/linux/thread_info.h:20,
                 from 
/home/joel/dev/buildroot/linux-2.6.19/include/linux/preempt.h:9,
                 from 
/home/joel/dev/buildroot/linux-2.6.19/include/linux/spinlock.h:49,
                 from 
/home/joel/dev/buildroot/linux-2.6.19/include/asm/semaphore.h:8,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/os/linux/include/core/IxOsalOsTypes.h:52,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/include/IxOsalTypes.h:57,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/include/IxOsal.h:52,
                 from src/atmdAcc/IxAtmdDescMgmt.c:64:
/home/joel/dev/buildroot/linux-2.6.19/include/asm/bitops.h: In function 
`____atomic_set_bit':
/home/joel/dev/buildroot/linux-2.6.19/include/asm/bitops.h:40: warning: 
implicit declaration of function `local_irq_save'
/home/joel/dev/buildroot/linux-2.6.19/include/asm/bitops.h:42: warning: 
implicit declaration of function `local_irq_restore'
In file included from 
/home/joel/dev/buildroot/linux-2.6.19/include/asm/semaphore.h:10,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/os/linux/include/core/IxOsalOsTypes.h:52,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/include/IxOsalTypes.h:57,
                 from 
/home/joel/dev/buildroot/package/ixp400/ixp400_xscale_sw/../ixp_osal/include/IxOsal.h:52,
                 from src/atmdAcc/IxAtmdDescMgmt.c:64:
/home/joel/dev/buildroot/linux-2.6.19/include/linux/rwsem.h:24:65: 
asm/rwsem.h: No such file or directory

I have included the full compile outputs.  I am using the buildroot 
environment with 2.6.19 kernel.  I have also tried a 2.6.18 kernel with 
exact same results.  I managed to get a 2.6.12 kernel running about 6 months 
ago with probably the exact same problems but it took me 2 weeks and I don't 
remember how I did it.

Do I actually need to have all this microcode and access library if I just 
want a basic ethernet port without encryption?  Can somebody point me in a 
direction that make this a little easier?

Thanks.

Joel Lindsay, B.Eng
Project Engineer
Waveteq Communications
(250) 766-9229
> 





More information about the Avila mailing list