summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-10-25 17:40:57 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-10-25 17:42:33 +0200
commit2ece571e9d007739f73d0d6a77f2d6417179d85b (patch)
tree0178ab5fbeb235914c6ae5f551f3938425ea817c /c
parentbsp/mpc55xx: Add custom work area init (diff)
downloadrtems-2ece571e9d007739f73d0d6a77f2d6417179d85b.tar.bz2
bsp/mpc55xx: Stop tasks for SMSC9218i during off
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c
index 460ffce8ff..b9939ffc89 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c
@@ -1908,6 +1908,12 @@ static void smsc9218i_interface_off(struct ifnet *ifp)
smsc9218i_driver_entry *e = (smsc9218i_driver_entry *) ifp->if_softc;
rtems_status_code sc = RTEMS_SUCCESSFUL;
+ sc = rtems_task_suspend(e->receive_task);
+ ASSERT_SC(sc);
+
+ sc = rtems_task_suspend(e->transmit_task);
+ ASSERT_SC(sc);
+
/* remove interrupt handler */
sc = rtems_interrupt_handler_remove(
MPC55XX_IRQ_SIU_EXTERNAL_0,