equal
deleted
inserted
replaced
416 EC_SLAVE_ERR(slave, "Reception of FoE ack response failed: "); |
416 EC_SLAVE_ERR(slave, "Reception of FoE ack response failed: "); |
417 ec_datagram_print_wc_error(fsm->datagram); |
417 ec_datagram_print_wc_error(fsm->datagram); |
418 return; |
418 return; |
419 } |
419 } |
420 |
420 |
421 data = ec_slave_mbox_fetch(fsm->slave, datagram, &mbox_prot, &rec_size); |
421 data = ec_slave_mbox_fetch(slave, fsm->datagram, &mbox_prot, &rec_size); |
422 if (IS_ERR(data)) { |
422 if (IS_ERR(data)) { |
423 ec_foe_set_tx_error(fsm, FOE_PROT_ERROR); |
423 ec_foe_set_tx_error(fsm, FOE_PROT_ERROR); |
424 return; |
424 return; |
425 } |
425 } |
426 |
426 |
496 return; |
496 return; |
497 } |
497 } |
498 |
498 |
499 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
499 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
500 |
500 |
501 ec_slave_mbox_prepare_check(fsm->slave, datagram); // can not fail. |
501 ec_slave_mbox_prepare_check(slave, datagram); // can not fail. |
502 |
502 |
503 fsm->retries = EC_FSM_RETRIES; |
503 fsm->retries = EC_FSM_RETRIES; |
504 fsm->state = ec_fsm_foe_state_ack_check; |
504 fsm->state = ec_fsm_foe_state_ack_check; |
505 } |
505 } |
506 |
506 |
534 EC_SLAVE_ERR(slave, "Reception of FoE data send failed: "); |
534 EC_SLAVE_ERR(slave, "Reception of FoE data send failed: "); |
535 ec_datagram_print_wc_error(fsm->datagram); |
535 ec_datagram_print_wc_error(fsm->datagram); |
536 return; |
536 return; |
537 } |
537 } |
538 |
538 |
539 ec_slave_mbox_prepare_check(fsm->slave, datagram); |
539 ec_slave_mbox_prepare_check(slave, datagram); |
540 fsm->jiffies_start = jiffies; |
540 fsm->jiffies_start = jiffies; |
541 fsm->retries = EC_FSM_RETRIES; |
541 fsm->retries = EC_FSM_RETRIES; |
542 fsm->state = ec_fsm_foe_state_ack_check; |
542 fsm->state = ec_fsm_foe_state_ack_check; |
543 } |
543 } |
544 |
544 |
630 return; |
630 return; |
631 } |
631 } |
632 |
632 |
633 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
633 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
634 |
634 |
635 ec_slave_mbox_prepare_check(fsm->slave, datagram); // can not fail. |
635 ec_slave_mbox_prepare_check(slave, datagram); // can not fail. |
636 |
636 |
637 fsm->retries = EC_FSM_RETRIES; |
637 fsm->retries = EC_FSM_RETRIES; |
638 fsm->state = ec_fsm_foe_state_data_check; |
638 fsm->state = ec_fsm_foe_state_data_check; |
639 } |
639 } |
640 |
640 |
753 EC_SLAVE_ERR(slave, "Reception of FoE DATA READ failed: "); |
753 EC_SLAVE_ERR(slave, "Reception of FoE DATA READ failed: "); |
754 ec_datagram_print_wc_error(fsm->datagram); |
754 ec_datagram_print_wc_error(fsm->datagram); |
755 return; |
755 return; |
756 } |
756 } |
757 |
757 |
758 data = ec_slave_mbox_fetch(slave, datagram, &mbox_prot, &rec_size); |
758 data = ec_slave_mbox_fetch(slave, fsm->datagram, &mbox_prot, &rec_size); |
759 if (IS_ERR(data)) { |
759 if (IS_ERR(data)) { |
760 ec_foe_set_rx_error(fsm, FOE_MBOX_FETCH_ERROR); |
760 ec_foe_set_rx_error(fsm, FOE_MBOX_FETCH_ERROR); |
761 return; |
761 return; |
762 } |
762 } |
763 |
763 |
813 fsm->rx_buffer_offset += rec_size; |
813 fsm->rx_buffer_offset += rec_size; |
814 } |
814 } |
815 |
815 |
816 fsm->rx_last_packet = |
816 fsm->rx_last_packet = |
817 (rec_size + EC_MBOX_HEADER_SIZE + EC_FOE_HEADER_SIZE |
817 (rec_size + EC_MBOX_HEADER_SIZE + EC_FOE_HEADER_SIZE |
818 != fsm->slave->configured_rx_mailbox_size); |
818 != slave->configured_rx_mailbox_size); |
819 |
819 |
820 if (fsm->rx_last_packet || |
820 if (fsm->rx_last_packet || |
821 (slave->configured_rx_mailbox_size - EC_MBOX_HEADER_SIZE |
821 (slave->configured_rx_mailbox_size - EC_MBOX_HEADER_SIZE |
822 - EC_FOE_HEADER_SIZE + fsm->rx_buffer_offset) |
822 - EC_FOE_HEADER_SIZE + fsm->rx_buffer_offset) |
823 <= fsm->rx_buffer_size) { |
823 <= fsm->rx_buffer_size) { |
877 return; |
877 return; |
878 } |
878 } |
879 |
879 |
880 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
880 fsm->jiffies_start = fsm->datagram->jiffies_sent; |
881 |
881 |
882 ec_slave_mbox_prepare_check(fsm->slave, datagram); // can not fail. |
882 ec_slave_mbox_prepare_check(slave, datagram); // can not fail. |
883 |
883 |
884 if (fsm->rx_last_packet) { |
884 if (fsm->rx_last_packet) { |
885 fsm->rx_expected_packet_no = 0; |
885 fsm->rx_expected_packet_no = 0; |
886 fsm->request->data_size = fsm->rx_buffer_offset; |
886 fsm->request->data_size = fsm->rx_buffer_offset; |
887 fsm->state = ec_fsm_foe_end; |
887 fsm->state = ec_fsm_foe_end; |