lr-wpan: Fixes PHY BUSY_RX -> RX_ON operation

This MR fixes the reaction of the PHY in its transition of BUSY_RX->RX_ON. In essence, after transmitting a frame. In LrWpanPhy::EndRx, the PHY is supposed to go back to RX_ON as soon as the frame has been received. However, in the current implementation, the PHY pushes the received frame to the MAC layer (m_pdDataIndicationCallback) before it switches to RX_ON. As a consequence, the PHY remains hanged on BUSY_RX even after it has already informed the MAC that the frame is received and supposedly ready for its next task.

This of course will cause a problem for the MAC if it tries to send a frame upon the indication of the received frame (because BUSY_RX -> TX_ON is not possible).

This MR is somehow related to a previous patch that solved a closely related problem: !1120 (merged).

In this MR I also added a way to print the PHY states in logs so it becomes easier to find this type of error. Finally, I removed some NS_FUNCTION_LOG from setter and getters functions to reduce the pollution of the log.

If further explanation of the changes are necessary please comment.

Edited by Alberto Gallegos

Merge request reports

Loading