Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[nrf528xx] clear psdu_being_received in CRCOK handler #776

Merged
merged 1 commit into from
Apr 9, 2024

Conversation

zhanglongxia
Copy link
Contributor

The flag psdu_being_received is set to True when the radio driver receives the FC field of the data frame, and the flag will be cleared after the ACK is sent out in PHYEND handler if the ACK is required. Sometimes, the ACK is failed to be sent out, which causes the flag to be set to True forever. Then the radio driver can't send out any frames.

The sdk-nrfxlib (https://github.com/nrfconnect/sdk-nrfxlib/blob/main/nrf_802154/driver/src/nrf_802154_trx.c#L2492) clears the flag psdu_being_received in the CRCOK handler rather than PHYEND handler. This commit clears the flag psdu_being_received in CRCOK handler to avoid the psdu_being_received being permanently set to True.

Issue link: https://nrfsupport.atlassian.net/browse/NRF11-73

The flag psdu_being_received is set to True when the radio driver receives
the FCF field of the data frame, and the flag will be cleared after the
ACK is sent out if the ACK is required. Sometimes, the ACK is failed to be
sent out, which causes the flag to be set to True forever. Then the radio
driver can't send out any frames.

The sdk-nrfxlib (https://github.com/nrfconnect/sdk-nrfxlib/blob/main/nrf_802154/driver/src/nrf_802154_trx.c#L2492)
clears the flag `psdu_being_received` in the CRCOK handler. This commit clears
the flag `psdu_being_received` when the irq_crcok_state_rx() is handled.

Ref: https://nrfsupport.atlassian.net/browse/NRF11-73
@zhanglongxia zhanglongxia added bug Something isn't working p1 labels Apr 8, 2024
Copy link
Member

@LuDuda LuDuda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

Copy link
Contributor

@pkwiek pkwiek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Member

@bukepo bukepo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM:+1:

@zhanglongxia zhanglongxia requested review from edmont and removed request for edmont April 9, 2024 06:11
@jwhui jwhui changed the title [nrf528xx] clear the flag psdu_being_received in CRCOK handler [nrf528xx] clear psdu_being_received flag in CRCOK handler Apr 9, 2024
@jwhui jwhui changed the title [nrf528xx] clear psdu_being_received flag in CRCOK handler [nrf528xx] clear psdu_being_received in CRCOK handler Apr 9, 2024
@jwhui jwhui merged commit 86e6a82 into openthread:main Apr 9, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working p1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants