193 ec_pdo_t *pdo, *next_pdo; |
193 ec_pdo_t *pdo, *next_pdo; |
194 |
194 |
195 // abort all pending requests |
195 // abort all pending requests |
196 |
196 |
197 while (!list_empty(&slave->sdo_requests)) { |
197 while (!list_empty(&slave->sdo_requests)) { |
198 ec_master_sdo_request_t *request = |
198 ec_sdo_request_t *request = |
199 list_entry(slave->sdo_requests.next, |
199 list_entry(slave->sdo_requests.next, ec_sdo_request_t, list); |
200 ec_master_sdo_request_t, list); |
|
201 list_del_init(&request->list); // dequeue |
200 list_del_init(&request->list); // dequeue |
202 EC_SLAVE_WARN(slave, "Discarding SDO request," |
201 EC_SLAVE_WARN(slave, "Discarding SDO request," |
203 " slave about to be deleted.\n"); |
202 " slave about to be deleted.\n"); |
204 request->req.state = EC_INT_REQUEST_FAILURE; |
203 request->state = EC_INT_REQUEST_FAILURE; |
205 wake_up(&slave->sdo_queue); |
204 wake_up(&slave->sdo_queue); |
206 } |
205 } |
207 |
206 |
208 while (!list_empty(&slave->reg_requests)) { |
207 while (!list_empty(&slave->reg_requests)) { |
209 ec_reg_request_t *reg = |
208 ec_reg_request_t *reg = |