[PATCH v9 5/9] mailbox: add CIX mailbox driver

Arnd Bergmann arnd at arndb.de
Wed Jul 16 00:19:52 PDT 2025


On Wed, Jul 16, 2025, at 04:28, Guomin chen wrote:
> On Tue, Jul 15, 2025 at 05:11:01PM -0500, Jassi Brar wrote:
>> On Mon, Jul 14, 2025 at 10:40 AM Arnd Bergmann <arnd at arndb.de> wrote:
>> > My main worry here is that the types are all quite different: while
>> > the doorbell and fast mailboxes are what a lot of other drivers have,
>> > the FIFO mode does not seem to be a good fit for the mailbox subsystem
>> > but instead looks like a more generic firmware interface with variable
>> > length messages.
>> >
>> > For those, I think a higher-level driver with fixed data structures
>> > passed through the hardware interface seems more appropriate.
>> >
>> Yes. But sometimes when the data structures of a protocol are not
>> bigger than FIFO depth, the platform may choose to use the FIFO mode.
>> I see it as platform dependent.
>> 
>> > Are there any other mailbox drivers that just use the mailbox to
>> > tunnel variable-length messages?
>> >
>> From a quick look, Armada 37xx and Hi6220 have fifo though they fill
>> them up fully for each transfer.
>>
> Yes, both Armada 37xx and Hi6220 support FIFO functionality, and they
> fill the FIFO with each transfer. 
>
> Since the cix mailbox hardware supports messages with a maximum length
> of 128 bytes, different clients transmit messages of varying lengths,
> such as the cix DSP using 8 bytes, the cix sensorhub using 12 bytes, etc. 
>
> Therefore, the cix mailbox driver has been modified to support variable-
> length messages of up to 128 bytes. This allows for more compact and 
> flexible support of various clients.

Thanks, this makes sense to me, and I have no other objections if
this is an established way to use the subsystem. I wonder if there
is a way to abstract it further though, since it would appear that
the same thing should be possible on any device that has a FIFO
to buffer more than a single fixed-length message.

Jassi, are there any remaining issues on your side that need to
be fixed before merging the initial driver? It would be nice if I
could merge all nine patches through the soc tree for 6.17 if the
current version, or a feature-reduced variant of the mailbox
driver is ok.

     Arnd



More information about the linux-arm-kernel mailing list