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

esb: Add ESB events queuing #19928

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

maje-emb
Copy link
Contributor

@maje-emb maje-emb commented Jan 15, 2025

Added queuing for ESB events.
The handling of these events is now processed using the system workqueue, reducing the interrupt handling time
when a packet is received.
This approach prevents the loss of ESB_EVENT_RX_RECEIVED events that could occur while the event callback is still being processed.

@maje-emb maje-emb requested a review from lemrey as a code owner January 15, 2025 15:50
@github-actions github-actions bot added the changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. label Jan 15, 2025
@NordicBuilder
Copy link
Contributor

NordicBuilder commented Jan 15, 2025

CI Information

To view the history of this post, clich the 'edited' button above
Build number: 4

Inputs:

Sources:

sdk-nrf: PR head: 0e2e0112552f98ba5f859b8f6b13343a6528b5c1

more details

sdk-nrf:

PR head: 0e2e0112552f98ba5f859b8f6b13343a6528b5c1
merge base: 44185885378b8d88c01cf6c0a9c25c9b79e99c4c
target head (main): 020cc3fe3ac6adc8f2a26972768a8a594b19a8c4
Diff

Github labels

Enabled Name Description
ci-disabled Disable the ci execution
ci-all-test Run all of ci, no test spec filtering will be done
ci-force-downstream Force execution of downstream even if twister fails
ci-run-twister Force run twister
ci-run-zephyr-twister Force run zephyr twister
List of changed files detected by CI (2)
doc
│  ├── nrf
│  │  ├── releases_and_maturity
│  │  │  ├── releases
│  │  │  │  │ release-notes-changelog.rst
subsys
│  ├── esb
│  │  │ esb.c

Outputs:

Toolchain

Version: 342151af73
Build docker image: docker-dtr.nordicsemi.no/sw-production/ncs-build:342151af73_912848a074

Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped; ⚠️ Quarantine

  • ◻️ Toolchain - Skipped: existing toolchain is used
  • ✅ Build twister
    • sdk-nrf test count: 64
  • ✅ Integration tests
    • ⚠️ test-fw-nrfconnect-proprietary_esb
Disabled integration tests
    • desktop52_verification
    • doc-internal
    • test_ble_nrf_config
    • test-fw-nrfconnect-apps
    • test-fw-nrfconnect-ble_mesh
    • test-fw-nrfconnect-ble_samples
    • test-fw-nrfconnect-boot
    • test-fw-nrfconnect-chip
    • test-fw-nrfconnect-fem
    • test-fw-nrfconnect-nfc
    • test-fw-nrfconnect-nrf-iot_libmodem-nrf
    • test-fw-nrfconnect-nrf-iot_lwm2m
    • test-fw-nrfconnect-nrf-iot_mosh
    • test-fw-nrfconnect-nrf-iot_nrf_provisioning
    • test-fw-nrfconnect-nrf-iot_positioning
    • test-fw-nrfconnect-nrf-iot_samples
    • test-fw-nrfconnect-nrf-iot_serial_lte_modem
    • test-fw-nrfconnect-nrf-iot_thingy91
    • test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • test-fw-nrfconnect-nrf_crypto
    • test-fw-nrfconnect-ps
    • test-fw-nrfconnect-rpc
    • test-fw-nrfconnect-rs
    • test-fw-nrfconnect-tfm
    • test-fw-nrfconnect-thread
    • test-fw-nrfconnect-zigbee
    • test-low-level
    • test-sdk-audio
    • test-sdk-dfu
    • test-sdk-find-my
    • test-sdk-mcuboot
    • test-sdk-pmic-samples
    • test-sdk-sidewalk
    • test-sdk-wifi
    • test-secdom-samples-public

Note: This message is automatically posted and updated by the CI

Copy link
Contributor

@dchat-nordic dchat-nordic left a comment

Choose a reason for hiding this comment

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

LGTM. I would consider adding a changelog note, since the handling context changed.

Copy link
Contributor

@grochu grochu left a comment

Choose a reason for hiding this comment

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

The fix looks good. Agree, that the changelog note would be nice.

@maje-emb maje-emb changed the title esb: Add ESB_EVENT_RX_RECEIVED event queuing esb: Add ESB events queuing Jan 16, 2025
@maje-emb maje-emb requested a review from a team as a code owner January 16, 2025 17:27
@github-actions github-actions bot added doc-required PR must not be merged without tech writer approval. and removed changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. labels Jan 16, 2025
@maje-emb maje-emb requested a review from peknis January 16, 2025 17:28
@NordicBuilder
Copy link
Contributor

You can find the documentation preview for this PR at this link.

Note: This comment is automatically posted by the Documentation Publish GitHub Action.

Copy link
Contributor

@peknis peknis left a comment

Choose a reason for hiding this comment

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

Approved with a nit.

Added queuing for ESB events.
Events are handled using the system workqueue,
reducing interrupt handling time.
This approach prevents the loss of ESB events that
may occur while the event callback is still being processed.

Ref: NCSDK-30467

Signed-off-by: Marcin Jelinski <marcin.jelinski@nordicsemi.no>
@maje-emb maje-emb added the DNM label Jan 20, 2025
@maje-emb maje-emb marked this pull request as draft January 28, 2025 09:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DNM doc-required PR must not be merged without tech writer approval.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants