equal
deleted
inserted
replaced
325 return; // FIXME: request again? |
325 return; // FIXME: request again? |
326 |
326 |
327 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
327 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
328 fsm->state = ec_fsm_coe_error; |
328 fsm->state = ec_fsm_coe_error; |
329 EC_ERR("Failed to receive CoE dictionary request datagram for" |
329 EC_ERR("Failed to receive CoE dictionary request datagram for" |
330 " slave %u (datagram state %u).\n", |
330 " slave %u: ", slave->ring_position); |
331 slave->ring_position, datagram->state); |
331 ec_datagram_print_state(datagram); |
332 return; |
332 return; |
333 } |
333 } |
334 |
334 |
335 if (datagram->working_counter != 1) { |
335 if (datagram->working_counter != 1) { |
336 fsm->state = ec_fsm_coe_error; |
336 fsm->state = ec_fsm_coe_error; |
361 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
361 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
362 return; |
362 return; |
363 |
363 |
364 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
364 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
365 fsm->state = ec_fsm_coe_error; |
365 fsm->state = ec_fsm_coe_error; |
366 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u" |
366 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u: ", |
367 " (datagram state %u).\n", |
367 slave->ring_position); |
368 slave->ring_position, datagram->state); |
368 ec_datagram_print_state(datagram); |
369 return; |
369 return; |
370 } |
370 } |
371 |
371 |
372 if (datagram->working_counter != 1) { |
372 if (datagram->working_counter != 1) { |
373 fsm->state = ec_fsm_coe_error; |
373 fsm->state = ec_fsm_coe_error; |
419 return; // FIXME: request again? |
419 return; // FIXME: request again? |
420 |
420 |
421 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
421 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
422 fsm->state = ec_fsm_coe_error; |
422 fsm->state = ec_fsm_coe_error; |
423 EC_ERR("Failed to receive CoE dictionary response datagram for" |
423 EC_ERR("Failed to receive CoE dictionary response datagram for" |
424 " slave %u (datagram state %u).\n", |
424 " slave %u: ", slave->ring_position); |
425 slave->ring_position, datagram->state); |
425 ec_datagram_print_state(datagram); |
426 return; |
426 return; |
427 } |
427 } |
428 |
428 |
429 if (datagram->working_counter != 1) { |
429 if (datagram->working_counter != 1) { |
430 fsm->state = ec_fsm_coe_error; |
430 fsm->state = ec_fsm_coe_error; |
570 return; // FIXME: check for response first? |
570 return; // FIXME: check for response first? |
571 |
571 |
572 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
572 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
573 fsm->state = ec_fsm_coe_error; |
573 fsm->state = ec_fsm_coe_error; |
574 EC_ERR("Failed to receive CoE SDO description request datagram for" |
574 EC_ERR("Failed to receive CoE SDO description request datagram for" |
575 " slave %u (datagram state %u).\n", |
575 " slave %u: ", slave->ring_position); |
576 slave->ring_position, datagram->state); |
576 ec_datagram_print_state(datagram); |
577 return; |
577 return; |
578 } |
578 } |
579 |
579 |
580 if (datagram->working_counter != 1) { |
580 if (datagram->working_counter != 1) { |
581 fsm->state = ec_fsm_coe_error; |
581 fsm->state = ec_fsm_coe_error; |
606 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
606 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
607 return; |
607 return; |
608 |
608 |
609 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
609 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
610 fsm->state = ec_fsm_coe_error; |
610 fsm->state = ec_fsm_coe_error; |
611 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u" |
611 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u: ", |
612 " (datagram state %u).\n", |
612 slave->ring_position); |
613 slave->ring_position, datagram->state); |
613 ec_datagram_print_state(datagram); |
614 return; |
614 return; |
615 } |
615 } |
616 |
616 |
617 if (datagram->working_counter != 1) { |
617 if (datagram->working_counter != 1) { |
618 fsm->state = ec_fsm_coe_error; |
618 fsm->state = ec_fsm_coe_error; |
664 return; // FIXME: request again? |
664 return; // FIXME: request again? |
665 |
665 |
666 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
666 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
667 fsm->state = ec_fsm_coe_error; |
667 fsm->state = ec_fsm_coe_error; |
668 EC_ERR("Failed to receive CoE SDO description response datagram from" |
668 EC_ERR("Failed to receive CoE SDO description response datagram from" |
669 " slave %u (datagram state %u).\n", |
669 " slave %u: ", slave->ring_position); |
670 slave->ring_position, datagram->state); |
670 ec_datagram_print_state(datagram); |
671 return; |
671 return; |
672 } |
672 } |
673 |
673 |
674 if (datagram->working_counter != 1) { |
674 if (datagram->working_counter != 1) { |
675 fsm->state = ec_fsm_coe_error; |
675 fsm->state = ec_fsm_coe_error; |
806 return; // FIXME: check for response first? |
806 return; // FIXME: check for response first? |
807 |
807 |
808 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
808 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
809 fsm->state = ec_fsm_coe_error; |
809 fsm->state = ec_fsm_coe_error; |
810 EC_ERR("Failed to receive CoE SDO entry request datagram for" |
810 EC_ERR("Failed to receive CoE SDO entry request datagram for" |
811 " slave %u (datagram state %u).\n", |
811 " slave %u: ", slave->ring_position); |
812 slave->ring_position, datagram->state); |
812 ec_datagram_print_state(datagram); |
813 return; |
813 return; |
814 } |
814 } |
815 |
815 |
816 if (datagram->working_counter != 1) { |
816 if (datagram->working_counter != 1) { |
817 fsm->state = ec_fsm_coe_error; |
817 fsm->state = ec_fsm_coe_error; |
844 return; |
844 return; |
845 |
845 |
846 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
846 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
847 fsm->state = ec_fsm_coe_error; |
847 fsm->state = ec_fsm_coe_error; |
848 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u" |
848 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u" |
849 " (datagram state %u).\n", |
849 ": ", slave->ring_position); |
850 slave->ring_position, datagram->state); |
850 ec_datagram_print_state(datagram); |
851 return; |
851 return; |
852 } |
852 } |
853 |
853 |
854 if (datagram->working_counter != 1) { |
854 if (datagram->working_counter != 1) { |
855 fsm->state = ec_fsm_coe_error; |
855 fsm->state = ec_fsm_coe_error; |
903 return; // FIXME: request again? |
903 return; // FIXME: request again? |
904 |
904 |
905 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
905 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
906 fsm->state = ec_fsm_coe_error; |
906 fsm->state = ec_fsm_coe_error; |
907 EC_ERR("Failed to receive CoE SDO description response datagram from" |
907 EC_ERR("Failed to receive CoE SDO description response datagram from" |
908 " slave %u (datagram state %u).\n", |
908 " slave %u: ", slave->ring_position); |
909 slave->ring_position, datagram->state); |
909 ec_datagram_print_state(datagram); |
910 return; |
910 return; |
911 } |
911 } |
912 |
912 |
913 if (datagram->working_counter != 1) { |
913 if (datagram->working_counter != 1) { |
914 fsm->state = ec_fsm_coe_error; |
914 fsm->state = ec_fsm_coe_error; |
1207 return; // FIXME: check for response first? |
1207 return; // FIXME: check for response first? |
1208 |
1208 |
1209 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1209 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1210 fsm->state = ec_fsm_coe_error; |
1210 fsm->state = ec_fsm_coe_error; |
1211 EC_ERR("Failed to receive CoE download request datagram for" |
1211 EC_ERR("Failed to receive CoE download request datagram for" |
1212 " slave %u (datagram state %u).\n", |
1212 " slave %u: ", slave->ring_position); |
1213 slave->ring_position, datagram->state); |
1213 ec_datagram_print_state(datagram); |
1214 return; |
1214 return; |
1215 } |
1215 } |
1216 |
1216 |
1217 diff_ms = (jiffies - fsm->request->jiffies_sent) * 1000 / HZ; |
1217 diff_ms = (jiffies - fsm->request->jiffies_sent) * 1000 / HZ; |
1218 |
1218 |
1268 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1268 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1269 return; |
1269 return; |
1270 |
1270 |
1271 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1271 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1272 fsm->state = ec_fsm_coe_error; |
1272 fsm->state = ec_fsm_coe_error; |
1273 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u" |
1273 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u: ", |
1274 " (datagram state %u).\n", |
1274 slave->ring_position); |
1275 slave->ring_position, datagram->state); |
1275 ec_datagram_print_state(datagram); |
1276 return; |
1276 return; |
1277 } |
1277 } |
1278 |
1278 |
1279 if (datagram->working_counter != 1) { |
1279 if (datagram->working_counter != 1) { |
1280 fsm->state = ec_fsm_coe_error; |
1280 fsm->state = ec_fsm_coe_error; |
1389 return; // FIXME: request again? |
1389 return; // FIXME: request again? |
1390 |
1390 |
1391 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1391 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1392 fsm->state = ec_fsm_coe_error; |
1392 fsm->state = ec_fsm_coe_error; |
1393 EC_ERR("Failed to receive CoE download response datagram from" |
1393 EC_ERR("Failed to receive CoE download response datagram from" |
1394 " slave %u (datagram state %u).\n", |
1394 " slave %u: ", slave->ring_position); |
1395 slave->ring_position, datagram->state); |
1395 ec_datagram_print_state(datagram); |
1396 return; |
1396 return; |
1397 } |
1397 } |
1398 |
1398 |
1399 if (datagram->working_counter != 1) { |
1399 if (datagram->working_counter != 1) { |
1400 fsm->state = ec_fsm_coe_error; |
1400 fsm->state = ec_fsm_coe_error; |
1496 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1496 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1497 return; |
1497 return; |
1498 |
1498 |
1499 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1499 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1500 fsm->state = ec_fsm_coe_error; |
1500 fsm->state = ec_fsm_coe_error; |
1501 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u" |
1501 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u: ", |
1502 " (datagram state %u).\n", |
1502 slave->ring_position); |
1503 slave->ring_position, datagram->state); |
1503 ec_datagram_print_state(datagram); |
1504 return; |
1504 return; |
1505 } |
1505 } |
1506 |
1506 |
1507 if (datagram->working_counter != 1) { |
1507 if (datagram->working_counter != 1) { |
1508 fsm->state = ec_fsm_coe_error; |
1508 fsm->state = ec_fsm_coe_error; |
1554 return; // FIXME: request again? |
1554 return; // FIXME: request again? |
1555 |
1555 |
1556 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1556 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1557 fsm->state = ec_fsm_coe_error; |
1557 fsm->state = ec_fsm_coe_error; |
1558 EC_ERR("Failed to receive CoE download response datagram from" |
1558 EC_ERR("Failed to receive CoE download response datagram from" |
1559 " slave %u (datagram state %u).\n", |
1559 " slave %u: ", slave->ring_position); |
1560 slave->ring_position, datagram->state); |
1560 ec_datagram_print_state(datagram); |
1561 return; |
1561 return; |
1562 } |
1562 } |
1563 |
1563 |
1564 if (datagram->working_counter != 1) { |
1564 if (datagram->working_counter != 1) { |
1565 fsm->state = ec_fsm_coe_error; |
1565 fsm->state = ec_fsm_coe_error; |
1714 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1714 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1715 return; // FIXME: check for response first? |
1715 return; // FIXME: check for response first? |
1716 |
1716 |
1717 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1717 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1718 fsm->state = ec_fsm_coe_error; |
1718 fsm->state = ec_fsm_coe_error; |
1719 EC_ERR("Failed to receive CoE upload request for slave %u" |
1719 EC_ERR("Failed to receive CoE upload request for slave %u: ", |
1720 " (datagram state %u).\n", |
1720 slave->ring_position); |
1721 slave->ring_position, datagram->state); |
1721 ec_datagram_print_state(datagram); |
1722 return; |
1722 return; |
1723 } |
1723 } |
1724 |
1724 |
1725 diff_ms = (jiffies - fsm->request->jiffies_sent) * 1000 / HZ; |
1725 diff_ms = (jiffies - fsm->request->jiffies_sent) * 1000 / HZ; |
1726 |
1726 |
1776 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1776 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
1777 return; |
1777 return; |
1778 |
1778 |
1779 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1779 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1780 fsm->state = ec_fsm_coe_error; |
1780 fsm->state = ec_fsm_coe_error; |
1781 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u" |
1781 EC_ERR("Failed to receive CoE mailbox check datagram from slave %u: ", |
1782 " (datagram state %u).\n", |
1782 slave->ring_position); |
1783 slave->ring_position, datagram->state); |
1783 ec_datagram_print_state(datagram); |
1784 return; |
1784 return; |
1785 } |
1785 } |
1786 |
1786 |
1787 if (datagram->working_counter != 1) { |
1787 if (datagram->working_counter != 1) { |
1788 fsm->state = ec_fsm_coe_error; |
1788 fsm->state = ec_fsm_coe_error; |
1863 return; // FIXME: request again? |
1863 return; // FIXME: request again? |
1864 |
1864 |
1865 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1865 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
1866 fsm->state = ec_fsm_coe_error; |
1866 fsm->state = ec_fsm_coe_error; |
1867 EC_ERR("Failed to receive CoE upload response datagram for" |
1867 EC_ERR("Failed to receive CoE upload response datagram for" |
1868 " slave %u (datagram state %u).\n", |
1868 " slave %u: ", slave->ring_position); |
1869 slave->ring_position, datagram->state); |
1869 ec_datagram_print_state(datagram); |
1870 return; |
1870 return; |
1871 } |
1871 } |
1872 |
1872 |
1873 if (datagram->working_counter != 1) { |
1873 if (datagram->working_counter != 1) { |
1874 fsm->state = ec_fsm_coe_error; |
1874 fsm->state = ec_fsm_coe_error; |
2041 return; // FIXME: check for response first? |
2041 return; // FIXME: check for response first? |
2042 |
2042 |
2043 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2043 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2044 fsm->state = ec_fsm_coe_error; |
2044 fsm->state = ec_fsm_coe_error; |
2045 EC_ERR("Failed to receive CoE upload segment request datagram for" |
2045 EC_ERR("Failed to receive CoE upload segment request datagram for" |
2046 " slave %u (datagram state %u).\n", |
2046 " slave %u: ", slave->ring_position); |
2047 slave->ring_position, datagram->state); |
2047 ec_datagram_print_state(datagram); |
2048 return; |
2048 return; |
2049 } |
2049 } |
2050 |
2050 |
2051 if (datagram->working_counter != 1) { |
2051 if (datagram->working_counter != 1) { |
2052 fsm->state = ec_fsm_coe_error; |
2052 fsm->state = ec_fsm_coe_error; |
2077 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
2077 if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--) |
2078 return; |
2078 return; |
2079 |
2079 |
2080 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2080 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2081 fsm->state = ec_fsm_coe_error; |
2081 fsm->state = ec_fsm_coe_error; |
2082 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u" |
2082 EC_ERR("Failed to receive CoE mailbox check datagram for slave %u: ", |
2083 " (datagram state %u).\n", |
2083 slave->ring_position); |
2084 slave->ring_position, datagram->state); |
2084 ec_datagram_print_state(datagram); |
2085 return; |
2085 return; |
2086 } |
2086 } |
2087 |
2087 |
2088 if (datagram->working_counter != 1) { |
2088 if (datagram->working_counter != 1) { |
2089 fsm->state = ec_fsm_coe_error; |
2089 fsm->state = ec_fsm_coe_error; |
2135 return; // FIXME: request again? |
2135 return; // FIXME: request again? |
2136 |
2136 |
2137 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2137 if (datagram->state != EC_DATAGRAM_RECEIVED) { |
2138 fsm->state = ec_fsm_coe_error; |
2138 fsm->state = ec_fsm_coe_error; |
2139 EC_ERR("Failed to receive CoE upload segment response datagram for" |
2139 EC_ERR("Failed to receive CoE upload segment response datagram for" |
2140 " slave %u (datagram state %u).\n", |
2140 " slave %u: ", slave->ring_position); |
2141 slave->ring_position, datagram->state); |
2141 ec_datagram_print_state(datagram); |
2142 return; |
2142 return; |
2143 } |
2143 } |
2144 |
2144 |
2145 if (datagram->working_counter != 1) { |
2145 if (datagram->working_counter != 1) { |
2146 fsm->state = ec_fsm_coe_error; |
2146 fsm->state = ec_fsm_coe_error; |