> -----Original Message----- > From: Conor Dooley <conor@xxxxxxxxxx> > Sent: Monday, July 22, 2024 10:20 PM > To: Pankaj Gupta <pankaj.gupta@xxxxxxx> > Cc: Jonathan Corbet <corbet@xxxxxxx>; Rob Herring <robh@xxxxxxxxxx>; > Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx>; Conor Dooley > <conor+dt@xxxxxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>; Sascha Hauer > <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team > <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; Rob > Herring <robh+dt@xxxxxxxxxx>; linux-doc@xxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; imx@xxxxxxxxxxxxxxx; > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Subject: [EXT] Re: [PATCH v6 2/5] dt-bindings: arm: fsl: add imx-se-fw binding > doc > > On Mon, Jul 22, 2024 at 10:21:37AM +0530, Pankaj Gupta wrote: > > The NXP security hardware IP(s) like: i.MX EdgeLock Enclave, V2X etc., > > creates an embedded secure enclave within the SoC boundary to enable > > features like: > > - HSM > > - SHE > > - V2X > > > > Secure-Enclave(s) communication interface are typically via message > > unit, i.e., based on mailbox linux kernel driver. This driver enables > > communication ensuring well defined message sequence protocol between > > Application Core and enclave's firmware. > > > > Driver configures multiple misc-device on the MU, for multiple > > user-space applications, to be able to communicate over single MU. > > > > It exists on some i.MX processors. e.g. i.MX8ULP, i.MX93 etc. > > > > Signed-off-by: Pankaj Gupta <pankaj.gupta@xxxxxxx> > > --- > > .../devicetree/bindings/firmware/fsl,imx-se.yaml | 91 > ++++++++++++++++++++++ > > 1 file changed, 91 insertions(+) > > > > diff --git > > a/Documentation/devicetree/bindings/firmware/fsl,imx-se.yaml > > b/Documentation/devicetree/bindings/firmware/fsl,imx-se.yaml > > new file mode 100644 > > index 000000000000..7511d0e9cf98 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/firmware/fsl,imx-se.yaml > > @@ -0,0 +1,91 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/firmware/fsl,imx-se.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: NXP i.MX HW Secure Enclave(s) EdgeLock Enclave > > + > > +maintainers: > > + - Pankaj Gupta <pankaj.gupta@xxxxxxx> > > + > > +description: | > > + NXP's SoC may contain one or multiple embedded secure-enclave HW > > + IP(s) like i.MX EdgeLock Enclave, V2X etc. These NXP's HW IP(s) > > + enables features like > > + - Hardware Security Module (HSM), > > + - Security Hardware Extension (SHE), and > > + - Vehicular to Anything (V2X) > > + > > + Communication interface to the secure-enclaves(se) is based on the > > + messaging unit(s). > > + > > +properties: > > + compatible: > > + enum: > > + - fsl,imx8ulp-se > > + - fsl,imx93-se > > + - fsl,imx95-se > > + > > + mboxes: > > + items: > > + - description: mailbox phandle to send message to se firmware > > + - description: mailbox phandle to receive message from se > > + firmware > > + > > + mbox-names: > > + items: > > + - const: tx > > + - const: rx > > + > > + memory-region: > > + maxItems: 1 > > + > > + sram: > > + maxItems: 1 > > + > > +required: > > + - compatible > > + - mboxes > > + - mbox-names > > + > > +allOf: > > + # memory-region > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - fsl,imx8ulp-se > > + - fsl,imx93-se > > + then: > > + required: > > + - memory-region > > + else: > > + properties: > > + memory-region: false > > + > > + # sram > > + - if: > > + properties: > > + compatible: > > + contains: > > + enum: > > + - fsl,imx8ulp-se > > + then: > > + required: > > + - sram > > + > > + else: > > + properties: > > + sram: false > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + senclave-firmware { > > Last revision this was "firmware", but now you've got something that appears > non-generic. Why did you change it? In case you missed, there was a previous email requesting your view on this change. Having node as "firmware {", is very generic that has wide interpretation. Hence, replaced firmware with "senclave-firmware". Why "senclave"? Like sram, for secure RAM, I proposed senclave for secure enclave. Moreover, there are plenty of examples of YAML(s), that were already committed; that are using this: linux_bkp$:> find Documentation/ -name "*.yaml" | xargs grep -r "\-firmware {" Documentation/devicetree/bindings/crypto/xlnx,zynqmp-aes.yaml: zynqmp_firmware: zynqmp-firmware { Documentation/devicetree/bindings/fpga/xlnx,zynqmp-pcap-fpga.yaml: zynqmp_firmware: zynqmp-firmware { Documentation/devicetree/bindings/gpio/xlnx,zynqmp-gpio-modepin.yaml: zynqmp-firmware { And more... If you any other suggested word to pre-fix , that narrows down this broad referenced word "firmware". Please suggest. > The normal differentiator for multiple > nodes is -[0-9]*, why can't you use that, if you're worried about multiple > nodes? Thanks Conor, for the suggestion this. Will use this. Thanks. > > > + compatible = "fsl,imx95-se"; > > + mboxes = <&ele_mu0 0 0>, <&ele_mu0 1 0>; > > + mbox-names = "tx", "rx"; > > + }; > > +... > > > > -- > > 2.34.1 > >