[PATCH v4 1/2] dt-bindings: Add bindings for BrcmSTB SCMI mailbox driver

Sudeep Holla sudeep.holla at arm.com
Thu Nov 5 13:27:07 EST 2020


On Thu, Nov 05, 2020 at 10:28:25AM -0500, Jim Quinlan wrote:
> On Thu, Nov 5, 2020 at 10:13 AM Rob Herring <robh at kernel.org> wrote:
> >
> > On Wed, Nov 4, 2020 at 4:04 PM Jim Quinlan <james.quinlan at broadcom.com> wrote:
> > >
> > > On Wed, Nov 4, 2020 at 4:50 PM Rob Herring <robh at kernel.org> wrote:
> > > >
> > > > On Thu, Oct 29, 2020 at 03:59:06PM -0400, Jim Quinlan wrote:
> > > > > Bindings are added.  Only one interrupt is needed because
> > > > > we do not yet employ the SCMI p2a channel.
> > > >
> > > > I still don't understand what this is. To repeat from v1: I thought SCMI
> > > > was a mailbox consumer, not provider?
> > >
> > > Hi Rob,
> > >
> > > I'm not sure where I am implying that SCMI is a mailbox provider?
> > > Should I not mention "SCMI" in the subject line?
> > >
> > > This is just a mailbox driver, "consumed" by SCMI.    Our SCMI DT node
> > > looks like this:
> > >
> > > brcm_scmi_mailbox: brcm_scmi_mailbox at 0 {
> > >         #mbox-cells = <1>;
> > >         compatible = "brcm,brcmstb-mbox";
> > > };
> > >
> > > brcm_scmi at 0 {
> > >         compatible = "arm,scmi";
> > >         mboxes = <&brcm_scmi_mailbox 0>;;
> > >         mbox-names = "tx";
> > >         shmem = <&NWMBOX>;
> > >         /* ... */
> > > };
> >
> > Okay, that makes more sense. Though it seems like this is just adding
> > a pointless level of indirection to turn an interrupt into a mailbox.
> > There's nothing more to 'the mailbox' is there?
>
> Correct.  Although you can see that it uses both interrupts and SMC
> calls to get the job done.
>

I was against having 2 separate solutions and would have raised my concern
again. As I mentioned earlier, either extend what we have or move the
existing SMC solution into this mailbox driver. Having 2 different solution
for this just because you have extra interrupt to deal with is definite
NACK from me as I had previously mentioned.

> > So why not either
> > allow SCMI to have an interrupt directly
> Not sure here -- perhaps the SCMI folks have an answer?
>

I did ask why can't you extend the existing SCMI/SMC binding to add this
as optional feature ?

> > or have a generic irq mailbox driver?

Fine with this too.

> The SCMI implementation doesn't offer a generic irq mailbox driver
> AFAICT.  The SCMI folks recently provided  an "smc transport" driver
> in "drivers/firmware/arm_scmi/smc.c" -- it is close to what we need
> but is missing interrupts.

IIRC, you were using SGIs and it can't be represented and use today as
is ? Am  I missing something or anything has changed ?

--
Regards,
Sudeep



More information about the linux-arm-kernel mailing list