diff --git a/master/fsm_master.c b/master/fsm_master.c index 5139725c35ca237e4b6bd8629e43b14d801f0a31..dfb58c9e3b69170eb70f0aa418b0a3c5b6000aee 100644 --- a/master/fsm_master.c +++ b/master/fsm_master.c @@ -285,14 +285,14 @@ int ec_fsm_master_action_process_eeprom( request = list_entry(master->eeprom_requests.next, ec_eeprom_write_request_t, list); list_del_init(&request->list); // dequeue - request->state = EC_EEPROM_REQ_BUSY; + request->state = EC_REQ_BUSY; up(&master->eeprom_sem); slave = request->slave; if (slave->online_state == EC_SLAVE_OFFLINE || slave->error_flag) { EC_ERR("Discarding EEPROM data, slave %i not ready.\n", slave->ring_position); - request->state = EC_EEPROM_REQ_ERROR; + request->state = EC_REQ_ERROR; wake_up(&master->eeprom_queue); continue; } @@ -751,7 +751,7 @@ void ec_fsm_master_state_write_eeprom( slave->error_flag = 1; EC_ERR("Failed to write EEPROM data to slave %i.\n", slave->ring_position); - request->state = EC_EEPROM_REQ_ERROR; + request->state = EC_REQ_ERROR; wake_up(&master->eeprom_queue); fsm->state = ec_fsm_master_state_error; return; @@ -771,7 +771,7 @@ void ec_fsm_master_state_write_eeprom( if (master->debug_level) EC_DBG("Finished writing EEPROM data to slave %i.\n", slave->ring_position); - request->state = EC_EEPROM_REQ_COMPLETED; + request->state = EC_REQ_COMPLETED; wake_up(&master->eeprom_queue); // TODO: Evaluate new EEPROM contents! diff --git a/master/fsm_master.h b/master/fsm_master.h index bdf505486f86c9275522386593f56ee5c1782e9c..51c21733a9f1c2443a9baf54e92e44eebfadfeea 100644 --- a/master/fsm_master.h +++ b/master/fsm_master.h @@ -51,21 +51,6 @@ /*****************************************************************************/ -/** - * EEPROM request state. - */ - -typedef enum -{ - EC_EEPROM_REQ_QUEUED, - EC_EEPROM_REQ_BUSY, - EC_EEPROM_REQ_COMPLETED, - EC_EEPROM_REQ_ERROR -} -ec_eeprom_request_state_t; - -/*****************************************************************************/ - /** * EEPROM write request. */ @@ -77,7 +62,7 @@ typedef struct off_t offset; size_t size; const uint16_t *words; - ec_eeprom_request_state_t state; + ec_request_state_t state; } ec_eeprom_write_request_t; diff --git a/master/globals.h b/master/globals.h index 515cd8520f771a0d43fb70eb0cda395af45f3638..1e2ebb3411a8343daa3090948d617da6e695bea6 100644 --- a/master/globals.h +++ b/master/globals.h @@ -177,4 +177,19 @@ ec_code_msg_t; /*****************************************************************************/ +/** + * Master request state. + */ + +typedef enum +{ + EC_REQ_QUEUED, + EC_REQ_BUSY, + EC_REQ_COMPLETED, + EC_REQ_ERROR +} +ec_request_state_t; + +/*****************************************************************************/ + #endif diff --git a/master/slave.c b/master/slave.c index ce5e287bec8d8f61b931e387d18504d41748fef7..8777aaa2700016a0e0cea484bc280f0f1d8a19ed 100644 --- a/master/slave.c +++ b/master/slave.c @@ -858,7 +858,7 @@ int ec_slave_schedule_eeprom_writing(ec_eeprom_write_request_t *request) { ec_master_t *master = request->slave->master; - request->state = EC_EEPROM_REQ_QUEUED; + request->state = EC_REQ_QUEUED; // schedule EEPROM write request. down(&master->eeprom_sem); @@ -867,10 +867,10 @@ int ec_slave_schedule_eeprom_writing(ec_eeprom_write_request_t *request) // wait for processing through FSM if (wait_event_interruptible(master->eeprom_queue, - request->state != EC_EEPROM_REQ_QUEUED)) { + request->state != EC_REQ_QUEUED)) { // interrupted by signal down(&master->eeprom_sem); - if (request->state == EC_EEPROM_REQ_QUEUED) { + if (request->state == EC_REQ_QUEUED) { list_del(&request->list); up(&master->eeprom_sem); return -EINTR; @@ -880,9 +880,9 @@ int ec_slave_schedule_eeprom_writing(ec_eeprom_write_request_t *request) } // wait until master FSM has finished processing - wait_event(master->eeprom_queue, request->state != EC_EEPROM_REQ_BUSY); + wait_event(master->eeprom_queue, request->state != EC_REQ_BUSY); - return request->state == EC_EEPROM_REQ_COMPLETED ? 0 : -EIO; + return request->state == EC_REQ_COMPLETED ? 0 : -EIO; } /*****************************************************************************/