[ECOS] __NETDEVTAB__ length is zero

Andrew Lunn andrew.lunn@ascom.ch
Thu Nov 1 13:29:00 GMT 2001


> > You'll need to provide a network driver structure for your controller.
> > Look at the driver provided for the Cirrus Logic EDB7xxx family of
> > processors for an example.
> >   .../devs/eth/arm/edb7xxx/
> 
> Hi,
> 
>     The controller we are using is cs8900.  We are directly using the driver
> code of ..../dev/eth/arm/edb7xx/, after putting in a proper directory
> structure and a few modifications to the addresses.  All the related cdl
> files are also identical.  Still the problem persists.


NETDEVTAB_ENTRY(edb7xxx_netdev, 
                "edb7xxx", 
                edb7xxx_cs8900_init, 
                &edb7xxx_sc);
 
This should be putting an entry into the table. 

Make sure this is being compiled. You can also look at the symbols in
the object produced from this source. I use the ebsa driver with two
ethernet devices.....

arm-elf-objdump --syms devs_eth_arm_ebsa285_if_ebsa285.o | grep netdev
00000000 l    d  .ecos.table.netdev.data.ebsa285_netdev0        00000000 
00000000 l    d  .ecos.table.netdev.data.ebsa285_netdev1        00000000 
00000000 g     O .ecos.table.netdev.data.ebsa285_netdev0        00000010 ebsa285_netdev0
00000000 g     O .ecos.table.netdev.data.ebsa285_netdev1        00000010 ebsa285_netdev1

and the same for install/lib/extra.o

arm-elf-objdump --syms extras.o | grep netdev
000000f4 l    d  .ecos.table.netdev.data.ebsa285_netdev0        00000000 
000001f8 l    d  .ecos.table.netdev.data.ebsa285_netdev1        00000000 
000000f4 g     O .ecos.table.netdev.data.ebsa285_netdev0        00000010 ebsa285_netdev0
000001f8 g     O .ecos.table.netdev.data.ebsa285_netdev1        00000010 ebsa285_netdev1


    Andrew



More information about the Ecos-discuss mailing list