equal
deleted
inserted
replaced
194 return; |
194 return; |
195 } |
195 } |
196 |
196 |
197 if (datagram->working_counter != 1) { |
197 if (datagram->working_counter != 1) { |
198 fsm->state = ec_fsm_sii_error; |
198 fsm->state = ec_fsm_sii_error; |
199 EC_ERR("Reception of SII read datagram failed - slave %i did not" |
199 EC_ERR("Reception of SII read datagram failed on slave %i: ", |
200 " respond.\n", fsm->slave->ring_position); |
200 fsm->slave->ring_position); |
|
201 ec_datagram_print_wc_error(datagram); |
201 return; |
202 return; |
202 } |
203 } |
203 |
204 |
204 fsm->cycles_start = datagram->cycles_sent; |
205 fsm->cycles_start = datagram->cycles_sent; |
205 fsm->check_once_more = 1; |
206 fsm->check_once_more = 1; |
240 return; |
241 return; |
241 } |
242 } |
242 |
243 |
243 if (datagram->working_counter != 1) { |
244 if (datagram->working_counter != 1) { |
244 fsm->state = ec_fsm_sii_error; |
245 fsm->state = ec_fsm_sii_error; |
245 EC_ERR("Reception of SII check/fetch datagram failed - slave %i did" |
246 EC_ERR("Reception of SII check/fetch datagram failed on slave %i: ", |
246 " not respond\n", fsm->slave->ring_position); |
247 fsm->slave->ring_position); |
|
248 ec_datagram_print_wc_error(datagram); |
247 return; |
249 return; |
248 } |
250 } |
249 |
251 |
250 // check "busy bit" |
252 // check "busy bit" |
251 if (EC_READ_U8(datagram->data + 1) & 0x81) { |
253 if (EC_READ_U8(datagram->data + 1) & 0x81) { |
336 return; |
338 return; |
337 } |
339 } |
338 |
340 |
339 if (datagram->working_counter != 1) { |
341 if (datagram->working_counter != 1) { |
340 fsm->state = ec_fsm_sii_error; |
342 fsm->state = ec_fsm_sii_error; |
341 EC_ERR("Reception of SII write datagram failed - slave %i did not" |
343 EC_ERR("Reception of SII write datagram failed on slave %i: ", |
342 " respond.\n", fsm->slave->ring_position); |
344 fsm->slave->ring_position); |
|
345 ec_datagram_print_wc_error(datagram); |
343 return; |
346 return; |
344 } |
347 } |
345 |
348 |
346 fsm->cycles_start = datagram->cycles_sent; |
349 fsm->cycles_start = datagram->cycles_sent; |
347 fsm->check_once_more = 1; |
350 fsm->check_once_more = 1; |
373 return; |
376 return; |
374 } |
377 } |
375 |
378 |
376 if (datagram->working_counter != 1) { |
379 if (datagram->working_counter != 1) { |
377 fsm->state = ec_fsm_sii_error; |
380 fsm->state = ec_fsm_sii_error; |
378 EC_ERR("Reception of SII write check datagram failed - slave %i did" |
381 EC_ERR("Reception of SII write check datagram failed on slave %i: ", |
379 " not respond.\n", fsm->slave->ring_position); |
382 fsm->slave->ring_position); |
|
383 ec_datagram_print_wc_error(datagram); |
380 return; |
384 return; |
381 } |
385 } |
382 |
386 |
383 if (EC_READ_U8(datagram->data + 1) & 0x82) { |
387 if (EC_READ_U8(datagram->data + 1) & 0x82) { |
384 // still busy... timeout? |
388 // still busy... timeout? |