[PATCH v2 0/3] mailbox: Allow direct registration to a channel

Elliot Berman
2023-03-23T19:16:04Z

Two mailbox controllers have channel/client binding mechanisms that are
controller-specific and not using the devicetree binding mechanisms. Mailbox
channel/client is conceptually done in two steps: selecting the channel
and binding the selected to channel to a client. Channel selection is sometimes
controller specific (pcc and omap are examples). The channel/client binding
code is all the same.

This small series de-duplicates and refactors the channel/client binding
into a common framework function: "mbox_bind_client" which all of the
channel selection mechanisms can use.

I found this duplicate code while working on the support for Gunyah hypervisor
message queues [1]. I've only been able to compile-test omap-mailbox and pcc,
however it is a straightforward conversion here.

[1]: https://lore.kernel.org/all/20230120224627.4053418-9-quic_eberman@quicinc.com/

Changes since v1:
- Rebase to https://git.linaro.org/landing-teams/working/fujitsu/integration.git/log/?h=mailbox-for-next
- Add Tested-By from Sudeep (thanks!)

Elliot Berman (3):
mailbox: Allow direct registration to a channel
mailbox: omap: Use mbox_bind_client
mailbox: pcc: Use mbox_bind_client

drivers/mailbox/mailbox.c | 96 ++++++++++++++++++++++++----------
drivers/mailbox/omap-mailbox.c | 22 ++------
drivers/mailbox/pcc.c | 82 ++++++++++++++++-------------
include/linux/mailbox_client.h | 1 +
4 files changed, 118 insertions(+), 83 deletions(-)

base-commit: 6ccbe33a39523f6d62b22c5ee99c6695993c935e
--
2.39.2