lantiq: fix netdev setup in ltq-ptm-vdsl
The initial fix for 3.18 in r44346 wrongly treated the newly added parameter of alloc_netdev to be another function pointer, causing ether_config to be skipped during ptm netdev init. Fix this by partially reverting r44346 and properly setting the newly added macro parameter. (Tested on VRX200 board) A similar change might be needed for ltq-ptm-adsl as well. Signed-off-by: Daniel Golle <daniel@makrotopia.org> SVN-Revision: 44607
This commit is contained in:
parent
700a53f8e2
commit
0d414e1c78
1 changed files with 4 additions and 4 deletions
|
@ -66,7 +66,7 @@ unsigned long cgu_get_pp32_clock(void)
|
||||||
return rate;
|
return rate;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ptm_setup(struct net_device *);
|
static void ptm_setup(struct net_device *, int);
|
||||||
static struct net_device_stats *ptm_get_stats(struct net_device *);
|
static struct net_device_stats *ptm_get_stats(struct net_device *);
|
||||||
static int ptm_open(struct net_device *);
|
static int ptm_open(struct net_device *);
|
||||||
static int ptm_stop(struct net_device *);
|
static int ptm_stop(struct net_device *);
|
||||||
|
@ -134,9 +134,8 @@ unsigned int ifx_ptm_dbg_enable = DBG_ENABLE_MASK_ERR;
|
||||||
* ####################################
|
* ####################################
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void ptm_setup(struct net_device *dev)
|
static void ptm_setup(struct net_device *dev, int ndev)
|
||||||
{
|
{
|
||||||
int ndev = 0;
|
|
||||||
dev->netdev_ops = &g_ptm_netdev_ops;
|
dev->netdev_ops = &g_ptm_netdev_ops;
|
||||||
netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 16);
|
netif_napi_add(dev, &g_ptm_priv_data.itf[ndev].napi, ptm_napi_poll, 16);
|
||||||
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT;
|
dev->watchdog_timeo = ETH_WATCHDOG_TIMEOUT;
|
||||||
|
@ -952,9 +951,10 @@ static int ifx_ptm_init(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
for ( i = 0; i < ARRAY_SIZE(g_net_dev); i++ ) {
|
for ( i = 0; i < ARRAY_SIZE(g_net_dev); i++ ) {
|
||||||
g_net_dev[i] = alloc_netdev(0, g_net_dev_name[i], ether_setup, ptm_setup);
|
g_net_dev[i] = alloc_netdev(0, g_net_dev_name[i], NET_NAME_UNKNOWN, ether_setup);
|
||||||
if ( g_net_dev[i] == NULL )
|
if ( g_net_dev[i] == NULL )
|
||||||
goto ALLOC_NETDEV_FAIL;
|
goto ALLOC_NETDEV_FAIL;
|
||||||
|
ptm_setup(g_net_dev[i], i);
|
||||||
}
|
}
|
||||||
|
|
||||||
for ( i = 0; i < ARRAY_SIZE(g_net_dev); i++ ) {
|
for ( i = 0; i < ARRAY_SIZE(g_net_dev); i++ ) {
|
||||||
|
|
Loading…
Reference in a new issue