Hello I tried to compile this under debian and got a compilation error
tom@dezemba:/usr/src/et131x-1.2.3$ make
#@make -C /lib/modules/2.6.22-1-amd64/build M=/usr/src/et131x-1.2.3 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.22-1-amd64'
CC [M] /usr/src/et131x-1.2.3/et131x_netdev.o
In file included from /usr/src/et131x-1.2.3/et131x_adapter.h:85,
from /usr/src/et131x-1.2.3/et131x_netdev.c:123:
/usr/src/et131x-1.2.3/ET1310_rx.h:441: warning: ‘kmem_cache_t’ is deprecated
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_open’:
/usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: ‘deprecated_irq_flag’ is deprecated (declared at include/linux/interrupt.h:66)
/usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_set_mac_addr’:
/usr/src/et131x-1.2.3/et131x_netdev.c:1336: warning: ISO C90 forbids mixed declarations and code
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_vlan_rx_kill_vid’:
/usr/src/et131x-1.2.3/et131x_netdev.c:1605: error: ‘struct vlan_group’ has no member named ‘vlan_devices’
make[2]: *** [/usr/src/et131x-1.2.3/et131x_netdev.o] Error 1
make[1]: *** [_module_/usr/src/et131x-1.2.3] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-1-amd64'
make: *** [modules] Error 2
I "solved" this by commenting out the troublesome line of code:
/**************************************************************************
This is where any interfacing with the hardware to deregister VLAN IDs
would take place. Since the ET1310 doesn't handle this in hardware,
nothing else needs to be done here.
*************************************************************************/
DBG_LEAVE( et131x_dbginfo );
return;
}
This got me through the compilation and the module installed fine.
Is there a better way to do this?
Thanks Thomas
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In short, the name of the array changed. You shouldn't have to remove the call, there's a replacement call you can use instead. Works fine for me on Fedora 7 with the same kernel as yours.
Nils
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello I tried to compile this under debian and got a compilation error
tom@dezemba:/usr/src/et131x-1.2.3$ make
#@make -C /lib/modules/2.6.22-1-amd64/build M=/usr/src/et131x-1.2.3 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.22-1-amd64'
CC [M] /usr/src/et131x-1.2.3/et131x_netdev.o
In file included from /usr/src/et131x-1.2.3/et131x_adapter.h:85,
from /usr/src/et131x-1.2.3/et131x_netdev.c:123:
/usr/src/et131x-1.2.3/ET1310_rx.h:441: warning: ‘kmem_cache_t’ is deprecated
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_open’:
/usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: ‘deprecated_irq_flag’ is deprecated (declared at include/linux/interrupt.h:66)
/usr/src/et131x-1.2.3/et131x_netdev.c:461: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_set_mac_addr’:
/usr/src/et131x-1.2.3/et131x_netdev.c:1336: warning: ISO C90 forbids mixed declarations and code
/usr/src/et131x-1.2.3/et131x_netdev.c: In function ‘et131x_vlan_rx_kill_vid’:
/usr/src/et131x-1.2.3/et131x_netdev.c:1605: error: ‘struct vlan_group’ has no member named ‘vlan_devices’
make[2]: *** [/usr/src/et131x-1.2.3/et131x_netdev.o] Error 1
make[1]: *** [_module_/usr/src/et131x-1.2.3] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-1-amd64'
make: *** [modules] Error 2
I "solved" this by commenting out the troublesome line of code:
void et131x_vlan_rx_kill_vid( struct net_device *netdev, UINT16 vid )
{
ET131X_ADAPTER *pAdapter = netdev_priv( netdev );
/*-----------------------------------------------------------------------*/
DBG_FUNC( "et131x_vlan_rx_kill_vid" );
DBG_ENTER( et131x_dbginfo );
DBG_VERBOSE( et131x_dbginfo, "VLAN, Remove VID: %d\n", vid );
if( pAdapter->vlgrp )
{
#if 0
pAdapter->vlgrp->vlan_devices[vid] = NULL;
#endif
}
/**************************************************************************
This is where any interfacing with the hardware to deregister VLAN IDs
would take place. Since the ET1310 doesn't handle this in hardware,
nothing else needs to be done here.
*************************************************************************/
DBG_LEAVE( et131x_dbginfo );
return;
}
This got me through the compilation and the module installed fine.
Is there a better way to do this?
Thanks Thomas
This patch should do it:
https://sourceforge.net/tracker/index.php?func=detail&aid=1709009&group_id=179406&atid=889025
In short, the name of the array changed. You shouldn't have to remove the call, there's a replacement call you can use instead. Works fine for me on Fedora 7 with the same kernel as yours.
Nils