[PATCH 2/2] firmware: arm_scmi: Add compatibility checks for shmem node

Sudeep Holla sudeep.holla at arm.com
Wed Jun 2 00:36:53 PDT 2021


On Wed, Jun 02, 2021 at 09:33:03AM +0200, Etienne Carriere wrote:
> Hello Sudeep,
> 
> 
> On Wed, 2 Jun 2021 at 00:51, Sudeep Holla <sudeep.holla at arm.com> wrote:
> >
> > The shared memory node used for communication between the firmware and
> > the OS should be compatible with "arm,scmi-shmem". Add the check for the
> > same while parsing the node before fetching the memory regions.
> >
> > Cc: Cristian Marussi <cristian.marussi at arm.com>
> > Cc: Florian Fainelli <f.fainelli at gmail.com>
> > Cc: Jim Quinlan <jim2101024 at gmail.com>
> > Cc: Etienne Carriere <etienne.carriere at linaro.org>
> > Signed-off-by: Sudeep Holla <sudeep.holla at arm.com>
> > ---
> >  drivers/firmware/arm_scmi/mailbox.c | 3 +++
> >  drivers/firmware/arm_scmi/smc.c     | 3 +++
> >  2 files changed, 6 insertions(+)
> >
> > diff --git a/drivers/firmware/arm_scmi/mailbox.c b/drivers/firmware/arm_scmi/mailbox.c
> > index 4626404be541..e3dcb58314ae 100644
> > --- a/drivers/firmware/arm_scmi/mailbox.c
> > +++ b/drivers/firmware/arm_scmi/mailbox.c
> > @@ -69,6 +69,9 @@ static int mailbox_chan_setup(struct scmi_chan_info *cinfo, struct device *dev,
> >                 return -ENOMEM;
> >
> >         shmem = of_parse_phandle(cdev->of_node, "shmem", idx);
> > +       if (!of_device_is_compatible(shmem, "arm,scmi-shmem"))
> > +               return -ENXIO;
> 
> Before this change, one could use another type of memory node, like "mmio-sram".
> Is there a strong reason to enforce use of "arm,scmi-shmem" nodes?
>

No that is for the entire SRAM which still holds and generic on-chip SRAM
driver will take care of that, this is only for the subsections that is
reserved for the scp shmem. The binding has been always there, just the
missing check. When I move to yaml, I realised that and hence the
addition of check.

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list