[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <773DB8A82AB6A046AE0195C68612A319014B7309@sbs2003.acksys.local>
Date: Mon, 21 Jan 2013 17:24:43 +0100
From: "Cedric VONCKEN" <cedric.voncken@...sys.fr>
To: "Claudiu Manoil" <claudiu.manoil@...escale.com>,
<netdev@...r.kernel.org>
Subject: [patch] Gianfar : Enable promiscous mode after queue time out
Hi all,
When the Netdev tx queue timeout occurred, the function
gfar_timeout(..) is called. This function calls indirectly the
gfar_init_mac(..) function.
In this function, the rctrl register is set to a default value.
If the Promiscuous is enable on the net dev ( flag IFF_PROMISC
is set), the gfar_init_function does not reactivate it.
The Promiscuous mode is used for example when the netdev is
bridged.
I apply this patch on the kernel 3.8-rc4 to fix it.
Signed-off-by : Voncken C Acksys <cedric.voncken@...sys.fr>
--- a/drivers/net/ethernet/freescale/gianfar.c
+++ b/drivers/net/ethernet/freescale/gianfar.c
@@ -349,6 +349,11 @@ static void gfar_init_mac(struct net_dev
/* Configure the coalescing support */
gfar_configure_coalescing(priv, 0xFF, 0xFF);
+ if (ndev->flags & IFF_PROMISC) {
+ /* Set RCTRL to PROM */
+ rctrl |= RCTRL_PROM;
+ }
+
if (priv->rx_filer_enable) {
rctrl |= RCTRL_FILREN;
/* Program the RIR0 reg with the required distribution
*/
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists