Skip to content

ZBus multi-core support #94857

@rodrigopex

Description

@rodrigopex

Is your feature request related to a problem? Please describe.

ZBus has no support for a multi-core scenario. When you have more than one core in an MCU (AMP, case), you should have two isolated instances of zbus, one on each core. There is no straightforward method to synchronize some channels across zbus instances.

Describe the solution you'd like

The initial solution should involve creating a special kind of channel called a shadow channel, which will reflect the message on other cores. This is a one-way synchronization only. There will be one core that owns the original channel, and the other core will see that as read-only. To make this work, we will need a proxy agent responsible for communicating with other proxy agents across the cores to keep the shadow channels synchronized.

Describe alternatives you've considered

Manual synchronization, using an inter-processor communication mechanism to synchronize channels across zbus instances.

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions