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

[nrf fromlist] drivers: ieee802154: fix nRF5 Rx error handling #1455

Conversation

jciupis
Copy link

@jciupis jciupis commented Jan 18, 2024

The current implementation implicitly assumes that if the device is configured to have the capability of acting as a CSL endpoint then in case a delayed reception with matching ID finishes with a timeout no action is needed. This assumption is correct when RxOnWhenIdle mode is disabled because the transition to sleep is done automatically by the driver below. However, it's wrong when RxOnWhenIdle is enabled. This commit fixes that case by adding a call to event handler that notifies the higher layer about the event and allows it to transition to RxOff if needed.

Upstream PR: zephyrproject-rtos/zephyr#67774

@ankuns
Copy link
Contributor

ankuns commented Jan 18, 2024

Commit zephyrproject-rtos/zephyr@b85cb9a pushed to upstream PR, please update here.

@jciupis jciupis force-pushed the pr/fix-ieee802154-nrf5-csl-endpoint-cherrypick branch from 5cea8a6 to 172286f Compare January 18, 2024 11:21
@jciupis
Copy link
Author

jciupis commented Jan 18, 2024

@ankuns done.

The current implementation implicitly assumes that if the device is
configured to have the capability of acting as a CSL endpoint then in
case a delayed reception with matching ID finishes with a timeout no
action is needed. This assumption is correct when RxOnWhenIdle mode is
disabled because the transition to sleep is done automatically by the
driver below. However, it's wrong when RxOnWhenIdle is enabled. This
commit fixes that case by adding a call to event handler that notifies
the higher layer about the event and allows it to transition to RxOff if
needed.

Upstream PR: zephyrproject-rtos/zephyr#67774

Signed-off-by: Jędrzej Ciupis <[email protected]>
@jciupis jciupis force-pushed the pr/fix-ieee802154-nrf5-csl-endpoint-cherrypick branch from 172286f to 68af78a Compare January 18, 2024 14:13
@nordicjm nordicjm merged commit 8ba9711 into nrfconnect:main Jan 19, 2024
9 checks passed
ankuns added a commit to ankuns/sdk-nrfxlib that referenced this pull request Jan 19, 2024
The nrf_rtc_timer allows dependency inversion.
The nRF 802.15.4 Radio Driver now expresses an additive
requirement on the number of user channels of nrf_rtc_timer
by setting Kconfig option NRF_RTC_TIMER_USER_CHAN_COUNT_ADD_*

Related sdk-zephyr PR, which introduces the feature to the
nrf_rtc_timer: nrfconnect/sdk-zephyr#1455

Signed-off-by: Andrzej Kuros <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants