Re: [PATCH v4 1/4] dt-bindings: firmware: Add bindings for xilinx firmware

From: Rob Herring
Date: Tue May 04 2021 - 09:41:12 EST


On Tue, May 4, 2021 at 4:34 AM Nava kishore Manne <navam@xxxxxxxxxx> wrote:
>
> Hi Rob,
>
> Please find my response inline.
>
> > -----Original Message-----
> > From: Rob Herring <robh@xxxxxxxxxx>
> > Sent: Saturday, May 1, 2021 1:10 AM
> > To: Nava kishore Manne <navam@xxxxxxxxxx>
> > Cc: Michal Simek <michals@xxxxxxxxxx>; mdf@xxxxxxxxxx; trix@xxxxxxxxxx;
> > gregkh@xxxxxxxxxxxxxxxxxxx; arnd@xxxxxxxx; Rajan Vaja
> > <RAJANV@xxxxxxxxxx>; Amit Sunil Dhamne <amitsuni@xxxxxxxxxxxxxxx>;
> > Manish Narani <MNARANI@xxxxxxxxxx>; zou_wei@xxxxxxxxxx; Sai Krishna
> > Potthuri <lakshmis@xxxxxxxxxx>; iwamatsu@xxxxxxxxxxx; Jiaying Liang
> > <jliang@xxxxxxxxxx>; linus.walleij@xxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-
> > fpga@xxxxxxxxxxxxxxx; chinnikishore369@xxxxxxxxx; git <git@xxxxxxxxxx>
> > Subject: Re: [PATCH v4 1/4] dt-bindings: firmware: Add bindings for xilinx
> > firmware
> >
> > On Thu, Apr 29, 2021 at 07:34:05PM +0530, Nava kishore Manne wrote:
> > > Add documentation to describe Xilinx firmware driver bindings.
> > > Firmware driver provides an interface to firmware APIs.
> > > Interface APIs can be used by any driver to communicate to Platform
> > > Management Unit.
> > >
> > > Signed-off-by: Nava kishore Manne <nava.manne@xxxxxxxxxx>
> > > ---
> > > Changes for v4:
> > > -Added new yaml file for xilinx firmware
> > > as suggested by Rob.
> > >
> > > .../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 63
> > > +++++++++++++++++++
> > > 1 file changed, 63 insertions(+)
> > > create mode 100644
> > > Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-
> > firmware
> > > .yaml
> >
> > What about the old doc?:
> >
>
> As you suggested i have added only the fpga node relevant info here so it's not representing the complete firmware file with other sub node like clk, Aes, ...etc.
> Once it completely mature we can deprecate the Old doc.
>
> > Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-
> > firmware.txt
> >
> > >
> > > diff --git
> > > a/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-
> > firmwa
> > > re.yaml
> > > b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-
> > firmwa
> > > re.yaml
> > > new file mode 100644
> > > index 000000000000..4b97f005bed7
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/firmware/xilinx/xlnx,zynqmp-fi
> > > +++ rmware.yaml
> > > @@ -0,0 +1,63 @@
> > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2
> > > +---
> > > +$id:
> > > +http://devicetree.org/schemas/firmware/xilinx/xlnx,zynqmp-firmware.ya
> > > +ml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Xilinx firmware driver
> > > +
> > > +maintainers:
> > > + - Nava kishore Manne <nava.manne@xxxxxxxxxx>
> > > +
> > > +description:
> > > + The zynqmp-firmware node describes the interface to platform
> > firmware.
> > > + ZynqMP has an interface to communicate with secure firmware.
> > > +Firmware
> > > + driver provides an interface to firmware APIs. Interface APIs can
> > > +be
> > > + used by any driver to communicate to PMUFW(Platform Management
> > Unit).
> > > + These requests include clock management, pin control, device
> > > +control,
> > > + power management service, FPGA service and other platform
> > > +management
> > > + services.
> > > +
> > > +properties:
> > > + compatible:
> > > + oneOf:
> > > + - description:
> > > + For implementations complying for Zynq Ultrascale+ MPSoC.
> > > + const: xlnx,zynqmp-firmware
> > > +
> > > + - description:
> > > + For implementations complying for Versal.
> > > + const: xlnx,versal-firmware
> > > +
> > > + method:
> > > + description: The method of calling the PM-API firmware layer.
> > > + # Permitted values are:
> > > + # - "smc" : SMC #0, following the SMCCC
> > > + # - "hvc" : HVC #0, following the SMCCC
> >
> > Drop the '#'. If you want to maintain the formatting, then use '|' after
> > 'description:' for a literal block.
> >
>
> Will fix in v5.
>
> > > + $ref: /schemas/types.yaml#/definitions/string-array
> > > + enum:
> > > + - smc
> > > + - hvc
> > > +
> > > +patternProperties:
> > > + "fpga":
> >
> > So 'foofpgabar' is valid?
> >
>
> Yes, it's a valid for fpga node.

No, please make the node name more specific.

Rob