From 7e4ae3e5a24ec272c5c5486818c73f31bdea7105 Mon Sep 17 00:00:00 2001
From: Florian Pose <fp@igh-essen.com>
Date: Fri, 2 Mar 2007 14:47:09 +0000
Subject: [PATCH] Minor changes in EEPROM write code.

---
 master/slave.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/master/slave.c b/master/slave.c
index 07db78a7..44fbfb90 100644
--- a/master/slave.c
+++ b/master/slave.c
@@ -839,12 +839,13 @@ ssize_t ec_slave_write_eeprom(ec_slave_t *slave, /**< EtherCAT slave */
         if (request.state == EC_EEPROM_REQ_QUEUED) {
             list_del(&request.list);
             up(&master->eeprom_sem);
-            return -EPERM;
+            return -EINTR;
         }
-        // request processing: interrupt not possible.
+        // request already processing: interrupt not possible.
         up(&master->eeprom_sem);
     }
 
+    // wait until master FSM has finished processing
     wait_event(master->eeprom_queue, request.state != EC_EEPROM_REQ_BUSY);
 
     return request.state == EC_EEPROM_REQ_COMPLETED ? size : -EIO;
-- 
GitLab