ICBMSG rework and making it a default for cpuppr and cpuflpr - #30814
ICBMSG rework and making it a default for cpuppr and cpuflpr#30814nordic-krch wants to merge 15 commits into
Conversation
Automatically created by action-manifest-pr GH action from PR: nrfconnect/sdk-zephyr#4373 Signed-off-by: Nordic Builder <pylon@nordicsemi.no>
After adding default icbmsg IPC communication setup to flpr and ppr, it is possible to reduce number of configuration files in the sample. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Use icbmsg as the default IPC backend for flpr and ppr. Enable nodes in DT. When user wants to use IPC communication it's enough to just enable the IPC service. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Add default IPC configuration (icbmsg) so IPC can be used out-of-the-box. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Add default IPC configuration (icbmsg) so IPC can be used out-of-the-box. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
HPF defines custom shared memory used for IPC. As flpr's now have the default nodes defined, they need to be deleted. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
ICBMSG is recommened IPC service backend for nRF54L series. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
ICBMSG is the recommended IPC service backend for nRF54L series. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Allow IPC callback to run in the interrupt context. In this context only events are sent or k_event is set. Those can be done in the interrupt context. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Use default IPC service setup provided in SoC/board devicetree files. This approach allows to significantly reduce overlays. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
If IPC service supports RX buffer holding then use it instead of allocating a buffer from heap. It is much faster as it avoid malloc and memcpy and additionally it allows to utilize IPC 'flow control' as if buffers are hold and not released on time then sending party will run out of buffers and stop sending new messages at some point. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Cleanup configuration as nrf54l and nrf7120 has default IPC service backend configuration. It allows to reduce number of config files. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
After icbmsg configuration is present in the default setting for ppr and flpr, test configuration can be simplified. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Cleanup configuration after adding ICBMSG as the default backend for flpr and ppr. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Use less blocks for icbmsg configuration. 15 blocks is optimal for 1k of shared memory as it gives 64 byte blocks and 64 byte for control data. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
|
The following west manifest projects have changed revision in this Pull Request:
⛔ DNM label due to: 1 project with PR revision Note: This message is automatically posted and updated by the Manifest GitHub Action. |
CI InformationTo view the history of this post, click the 'edited' button above Inputs:Sources:sdk-nrf: PR head: 4e8adbd528f706f1d8f18f3970b1ea13e180bf8f more detailssdk-nrf:
zephyr:
Github labels
List of changed files detected by CI (318)Outputs:ToolchainVersion: e214c2a47c Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped;
|
|
You can find the documentation preview for this PR here. |
Memory footprint analysis revealed the following potential issuesapplications.hpf.gpio.mbox[nrf54l15dk/nrf54l15/cpuflpr]: High RAM usage: 7389[B] - link (cc: @nrfconnect/ncs-ll-ursus) Note: This message is automatically posted and updated by the CI (latest/sdk-nrf/PR-30814/2) |
Still in draft to get the CI results.