* [PATCH] skge: restore device multicast membership after link down/up
@ 2006-11-30 16:35 Andy Gospodarek
2006-12-01 19:41 ` [PATCH] skge: don't clear MC state on link down Stephen Hemminger
0 siblings, 1 reply; 3+ messages in thread
From: Andy Gospodarek @ 2006-11-30 16:35 UTC (permalink / raw)
To: netdev, shemminger
Yukon hardware will lose multicast membership data and promiscuous mode
information if a link is disconnected and reconnected without taking the
interface down. A call to yukon_reset in yukon_link_down will clear the
hardware's multicast list, so it needs to be added back on link_up.
It does not appear that Genesis hardware needs a similar patch is needed
since it does not seem to clear multicast membership when taking the
link down.
Signed-off-by: Andy Gospodarek <andy@greyhouse.net>
---
skge.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index 3f1b72e..c02e1f1 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -1922,6 +1922,10 @@ static void yukon_link_up(struct skge_po
gma_write16(hw, port, GM_GP_CTRL, reg);
gm_phy_write(hw, port, PHY_MARV_INT_MASK, PHY_M_IS_DEF_MSK);
+
+ /* reset multicast list */
+ yukon_set_multicast(skge->netdev);
+
skge_link_up(skge);
}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH] skge: don't clear MC state on link down
2006-11-30 16:35 [PATCH] skge: restore device multicast membership after link down/up Andy Gospodarek
@ 2006-12-01 19:41 ` Stephen Hemminger
2006-12-01 21:03 ` Andy Gospodarek
0 siblings, 1 reply; 3+ messages in thread
From: Stephen Hemminger @ 2006-12-01 19:41 UTC (permalink / raw)
To: Andy Gospodarek, Jeff Garzik; +Cc: netdev
I would rather fix Andy's problem by not clearing
multicast information on link down.
Also, add code to restore multicast state after ethtool phy reset.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
---
drivers/net/skge.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index b294903..010fc65 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -2154,8 +2154,6 @@ static void yukon_link_down(struct skge_
int port = skge->port;
u16 ctrl;
- gm_phy_write(hw, port, PHY_MARV_INT_MASK, 0);
-
ctrl = gma_read16(hw, port, GM_GP_CTRL);
ctrl &= ~(GM_GPCR_RX_ENA | GM_GPCR_TX_ENA);
gma_write16(hw, port, GM_GP_CTRL, ctrl);
@@ -2167,7 +2165,6 @@ static void yukon_link_down(struct skge_
gm_phy_write(hw, port, PHY_MARV_AUNE_ADV, ctrl);
}
- yukon_reset(hw, port);
skge_link_down(skge);
yukon_init(hw, port);
@@ -2268,6 +2265,8 @@ static void skge_phy_reset(struct skge_p
yukon_init(hw, port);
}
mutex_unlock(&hw->phy_mutex);
+
+ dev->set_multicast_list(dev);
}
/* Basic MII support */
--
1.4.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] skge: don't clear MC state on link down
2006-12-01 19:41 ` [PATCH] skge: don't clear MC state on link down Stephen Hemminger
@ 2006-12-01 21:03 ` Andy Gospodarek
0 siblings, 0 replies; 3+ messages in thread
From: Andy Gospodarek @ 2006-12-01 21:03 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: Jeff Garzik, netdev
On 12/1/06, Stephen Hemminger <shemminger@osdl.org> wrote:
> I would rather fix Andy's problem by not clearing
> multicast information on link down.
>
> Also, add code to restore multicast state after ethtool phy reset.
>
Stephen,
I'll ACK that change instead as long as we can be sure that this isn't
needed for hardware reasons.
-andy
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2006-12-01 21:03 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-30 16:35 [PATCH] skge: restore device multicast membership after link down/up Andy Gospodarek
2006-12-01 19:41 ` [PATCH] skge: don't clear MC state on link down Stephen Hemminger
2006-12-01 21:03 ` Andy Gospodarek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).