master/cdev.c
changeset 1489 f77a1182b6f4
parent 1485 5ddc3a455059
child 1500 ed1a733efbc5
--- a/master/cdev.c	Mon Jun 29 14:27:06 2009 +0000
+++ b/master/cdev.c	Tue Jun 30 11:11:56 2009 +0000
@@ -1645,9 +1645,9 @@
 	if (unlikely(!priv->requested))
 		return -EPERM;
 
-    spin_lock_bh(&master->internal_lock);
+    down(&master->io_sem);
     ecrt_master_send(master);
-    spin_unlock_bh(&master->internal_lock);
+    up(&master->io_sem);
     return 0;
 }
 
@@ -1664,9 +1664,9 @@
 	if (unlikely(!priv->requested))
 		return -EPERM;
 
-    spin_lock_bh(&master->internal_lock);
+    down(&master->io_sem);
     ecrt_master_receive(master);
-    spin_unlock_bh(&master->internal_lock);
+    up(&master->io_sem);
     return 0;
 }
 
@@ -1729,9 +1729,9 @@
 	if (unlikely(!priv->requested))
 		return -EPERM;
 
-    spin_lock_bh(&master->internal_lock);
+    down(&master->io_sem);
     ecrt_master_sync_reference_clock(master);
-    spin_unlock_bh(&master->internal_lock);
+    up(&master->io_sem);
     return 0;
 }
 
@@ -1748,9 +1748,9 @@
 	if (unlikely(!priv->requested))
 		return -EPERM;
 
-    spin_lock_bh(&master->internal_lock);
+    down(&master->io_sem);
     ecrt_master_sync_slave_clocks(master);
-    spin_unlock_bh(&master->internal_lock);
+    up(&master->io_sem);
     return 0;
 }