From 5f99d385f8450d1a567b9fb05f4f078cc6a71bb5 Mon Sep 17 00:00:00 2001 From: Mirko Lindner Date: Fri, 30 Jan 2004 15:11:03 -0500 Subject: [PATCH] [PATCH] sk98lin: Reset Xmac when stopping the port * Clear the Xmac fifo before stopping the port --- drivers/net/sk98lin/h/skversion.h | 10 +++++----- drivers/net/sk98lin/skge.c | 9 +++++++-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/net/sk98lin/h/skversion.h b/drivers/net/sk98lin/h/skversion.h index e9b11d64eff6e..c9be206fae601 100644 --- a/drivers/net/sk98lin/h/skversion.h +++ b/drivers/net/sk98lin/h/skversion.h @@ -61,14 +61,14 @@ #ifdef lint static const char SysKonnectFileId[] = "@(#) (C) SysKonnect GmbH."; static const char SysKonnectBuildNumber[] = - "@(#)SK-BUILD: 6.21 PL: 01"; + "@(#)SK-BUILD: 6.22 PL: 01"; #endif /* !defined(lint) */ -#define BOOT_STRING "sk98lin: Network Device Driver v6.21\n" \ - "(C)Copyright 1999-2003 Marvell(R)." +#define BOOT_STRING "sk98lin: Network Device Driver v6.22\n" \ + "(C)Copyright 1999-2004 Marvell(R)." -#define VER_STRING "6.21" +#define VER_STRING "6.22" #define DRIVER_FILE_NAME "sk98lin" -#define DRIVER_REL_DATE "Dec-15-2003" +#define DRIVER_REL_DATE "Jan-30-2004" diff --git a/drivers/net/sk98lin/skge.c b/drivers/net/sk98lin/skge.c index 32cf0c1be5fae..390c31b2ac9bf 100644 --- a/drivers/net/sk98lin/skge.c +++ b/drivers/net/sk98lin/skge.c @@ -2,8 +2,8 @@ * * Name: skge.c * Project: GEnesis, PCI Gigabit Ethernet Adapter - * Version: $Revision: 1.42 $ - * Date: $Date: 2003/12/12 10:05:43 $ + * Version: $Revision: 1.43 $ + * Date: $Date: 2004/01/29 15:47:07 $ * Purpose: The main driver source module * ******************************************************************************/ @@ -41,6 +41,9 @@ * History: * * $Log: skge.c,v $ + * Revision 1.43 2004/01/29 15:47:07 mlindner + * Fix: Reset Xmac when stopping the port + * * Revision 1.42 2003/12/12 10:05:43 mlindner * Fix: Format of error message corrected * @@ -2154,6 +2157,7 @@ struct SK_NET_DEVICE *dev) EvPara.Para32[0] = pNet->NetNr; EvPara.Para32[1] = -1; SkEventQueue(pAC, SKGE_RLMT, SK_RLMT_STOP, EvPara); + SkPnmiEvent(pAC, pAC->IoBase, SK_PNMI_EVT_XMAC_RESET, EvPara); SkEventDispatcher(pAC, pAC->IoBase); spin_unlock_irqrestore(&pAC->SlowPathLock, Flags); @@ -5002,6 +5006,7 @@ SK_BOOL DualNet; spin_lock_irqsave( &pAC->TxPort[FromPort][TX_PRIO_LOW].TxDesRingLock, Flags); + SkGeStopPort(pAC, IoC, FromPort, SK_STOP_ALL, SK_HARD_RST); pAC->dev[Param.Para32[0]]->flags &= ~IFF_RUNNING; spin_unlock_irqrestore( -- 2.53.0