Message ID | 20220131114726.973690-3-conor.dooley@microchip.com |
---|---|
State | Superseded |
Headers | show |
Series | Update the Icicle Kit device tree | expand |
On Mon, Jan 31, 2022 at 11:47:17AM +0000, conor.dooley@microchip.com wrote: > From: Conor Dooley <conor.dooley@microchip.com> > > Add mpfs-rng and mpfs-generic-services as children of the system > controller. > > Signed-off-by: Conor Dooley <conor.dooley@microchip.com> > --- > .../microchip,mpfs-sys-controller.yaml | 41 ++++++++++++++++++- > 1 file changed, 39 insertions(+), 2 deletions(-) > > diff --git a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml > index f699772fedf3..5e9977bc114e 100644 > --- a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml > +++ b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml > @@ -13,7 +13,6 @@ description: | > The PolarFire SoC system controller is communicated with via a mailbox. > This document describes the bindings for the client portion of that mailbox. > > - > properties: > mboxes: > maxItems: 1 > @@ -21,6 +20,38 @@ properties: > compatible: > const: microchip,mpfs-sys-controller > > + rng: > + type: object > + > + description: | > + The hardware random number generator on the Polarfire SoC is > + accessed via the mailbox interface provided by the system controller > + > + properties: > + compatible: > + const: microchip,mpfs-rng > + > + required: > + - compatible > + > + sysserv: > + type: object > + > + description: | > + The PolarFire SoC system controller is communicated with via a mailbox. > + This binding represents several of the functions provided by the system > + controller which do not belong in a specific subsystem, such as reading > + the fpga device certificate, all of which follow the same format: > + - a command + optional payload sent to the sys controller > + - a status + a payload returned to Linux > + > + properties: > + compatible: > + const: microchip,mpfs-generic-service > + > + required: > + - compatible > + > required: > - compatible > - mboxes > @@ -29,7 +60,13 @@ additionalProperties: false > > examples: > - | > - syscontroller: syscontroller { > + syscontroller { > compatible = "microchip,mpfs-sys-controller"; > mboxes = <&mbox 0>; > + rng: rng { > + compatible = "microchip,mpfs-rng"; > + }; > + sysserv: sysserv { > + compatible = "microchip,mpfs-generic-service"; > + }; You don't have any resources for the child nodes, so they don't need to be in DT. Just have the driver for "microchip,mpfs-sys-controller" create the sub devices you need. Rob
diff --git a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml index f699772fedf3..5e9977bc114e 100644 --- a/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml +++ b/Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml @@ -13,7 +13,6 @@ description: | The PolarFire SoC system controller is communicated with via a mailbox. This document describes the bindings for the client portion of that mailbox. - properties: mboxes: maxItems: 1 @@ -21,6 +20,38 @@ properties: compatible: const: microchip,mpfs-sys-controller + rng: + type: object + + description: | + The hardware random number generator on the Polarfire SoC is + accessed via the mailbox interface provided by the system controller + + properties: + compatible: + const: microchip,mpfs-rng + + required: + - compatible + + sysserv: + type: object + + description: | + The PolarFire SoC system controller is communicated with via a mailbox. + This binding represents several of the functions provided by the system + controller which do not belong in a specific subsystem, such as reading + the fpga device certificate, all of which follow the same format: + - a command + optional payload sent to the sys controller + - a status + a payload returned to Linux + + properties: + compatible: + const: microchip,mpfs-generic-service + + required: + - compatible + required: - compatible - mboxes @@ -29,7 +60,13 @@ additionalProperties: false examples: - | - syscontroller: syscontroller { + syscontroller { compatible = "microchip,mpfs-sys-controller"; mboxes = <&mbox 0>; + rng: rng { + compatible = "microchip,mpfs-rng"; + }; + sysserv: sysserv { + compatible = "microchip,mpfs-generic-service"; + }; };