From 94866f4bca35b62bddda98db7b472e05a258d296 Mon Sep 17 00:00:00 2001 From: Florian Pose 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;