Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 293c8513 authored by Li Yang's avatar Li Yang Committed by Jeff Garzik
Browse files

gianfar: Fix regression caused by new napi interface



Protect all new napi function calls with CONFIG_GFAR_NAPI.  Otherwise
the driver will stop working when CONFIG_GFAR_NAPI disabled.

Signed-off-by: default avatarLi Yang <leoli@freescale.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 20ef2bb0
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -932,10 +932,14 @@ int startup_gfar(struct net_device *dev)
/* Returns 0 for success. */
static int gfar_enet_open(struct net_device *dev)
{
#ifdef CONFIG_GFAR_NAPI
	struct gfar_private *priv = netdev_priv(dev);
#endif
	int err;

#ifdef CONFIG_GFAR_NAPI
	napi_enable(&priv->napi);
#endif

	/* Initialize a bunch of registers */
	init_registers(dev);
@@ -945,13 +949,17 @@ static int gfar_enet_open(struct net_device *dev)
	err = init_phy(dev);

	if(err) {
#ifdef CONFIG_GFAR_NAPI
		napi_disable(&priv->napi);
#endif
		return err;
	}

	err = startup_gfar(dev);
	if (err)
#ifdef CONFIG_GFAR_NAPI
		napi_disable(&priv->napi);
#endif

	netif_start_queue(dev);

@@ -1105,7 +1113,9 @@ static int gfar_close(struct net_device *dev)
{
	struct gfar_private *priv = netdev_priv(dev);

#ifdef CONFIG_GFAR_NAPI
	napi_disable(&priv->napi);
#endif

	stop_gfar(dev);