Re: [PATCH 4/5] firmware: arm_scmi: smc transport supports multi-message pool

From: Sudeep Holla
Date: Fri Oct 09 2020 - 11:17:59 EST


On Fri, Oct 09, 2020 at 02:43:31PM +0200, Etienne Carriere wrote:
> On Thu, 8 Oct 2020 at 23:11, Sudeep Holla <sudeep.holla@xxxxxxx> wrote:
> >
> > On Thu, Oct 08, 2020 at 04:37:21PM +0200, Etienne Carriere wrote:
> > > There is no reason for the smc transport to restrict itself to a 1
> > > message pool. More can be allocated, messages are copied from/to the
> > > shared memory only on SMC exit/entry hence SCMI driver can play with
> > > several messages.
> > >
> > > Use value of 20 to mimic mailbox transport implementation.
> >
> > What is the need to mimic ?
>
> I had to pick a value. I can't say whether 2, 5 or 20 is better.
> I looks how the mailbox transport did and used the same value
> as it seemed reasonable regarding its memory cost.
>
> >
> > > Any high value could fit. This should be something configurable.
> >
> > Why not 10 or 100 ? I see any value other than 1 is useless as we lock
> > the channel in send_message and we don't maintain a queue like mailbox.
>
> I'll check again.
> Playing with SCMI voltage domain [1], it happens that I needed several
> preallocated message buffers unless what regulators fail to be probed.


I may be missing something but I can't see how, we simply block in
send_message while mailbox has a queue of 20 which is why it has 20 there.

The issue you are seeing could be different. Let me know if I am missing
something.

--
Regards,
Sudeep