diff -r ba5c38f0bb30 -r 6e3de145421a master/sdo_request.c --- a/master/sdo_request.c Tue Mar 04 11:20:48 2008 +0000 +++ b/master/sdo_request.c Tue Mar 04 11:37:51 2008 +0000 @@ -48,6 +48,18 @@ /*****************************************************************************/ +/** State type translation table. + */ +const ec_sdo_request_state_t state_table[] = { + EC_SDO_REQUEST_UNUSED, // EC_REQUEST_INIT, + EC_SDO_REQUEST_BUSY, // EC_REQUEST_QUEUED, + EC_SDO_REQUEST_BUSY, // EC_REQUEST_BUSY, + EC_SDO_REQUEST_SUCCESS, // EC_REQUEST_SUCCESS, + EC_SDO_REQUEST_ERROR // EC_REQUEST_FAILURE +}; + +/*****************************************************************************/ + /** Sdo request constructor. */ void ec_sdo_request_init( @@ -58,7 +70,7 @@ req->mem_size = 0; req->data_size = 0; req->dir = EC_DIR_OUTPUT; - req->state = EC_REQUEST_COMPLETE; + req->state = EC_REQUEST_INIT; } /*****************************************************************************/ @@ -166,16 +178,9 @@ /*****************************************************************************/ -ec_request_state_t ecrt_sdo_request_state(const ec_sdo_request_t *req) -{ - return req->state; -} - -/*****************************************************************************/ - -ec_sdo_request_error_t ecrt_sdo_request_error(const ec_sdo_request_t *req) -{ - return EC_SDO_REQUEST_SUCCESS; // FIXME +ec_sdo_request_state_t ecrt_sdo_request_state(const ec_sdo_request_t *req) +{ + return state_table[req->state]; } /*****************************************************************************/ @@ -199,7 +204,6 @@ EXPORT_SYMBOL(ecrt_sdo_request_timeout); EXPORT_SYMBOL(ecrt_sdo_request_data); EXPORT_SYMBOL(ecrt_sdo_request_state); -EXPORT_SYMBOL(ecrt_sdo_request_error); EXPORT_SYMBOL(ecrt_sdo_request_read); EXPORT_SYMBOL(ecrt_sdo_request_write);