Hi Sudeep, Apologies for catching up late on this patch-set. On Thu, 25 Mar 2021 at 20:05, Sudeep Holla <sudeep.holla@xxxxxxx> wrote: > > Since the FF-A v1.0 specification doesn't list the UUID of all the > partitions in the discovery API, we need to specify the UUID of the > partitions that need to be accessed by drivers within the kernel. > Wouldn't we be able to implement auto-discovery of ffa partitions? I think enumeration of ffa partitions on FFA bus should be quite similar to enumeration of TAs on TEE bus (see [1]). Otherwise we need to put these redundant DT entries for every ffa partition which IMHO would bloat up device trees for every platform. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/tee/optee/device.c#n153 -Sumit > This binding to provide the list of partitions that kernel drivers > may need to access. > > Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx> > --- > .../devicetree/bindings/arm/arm,ffa.yaml | 57 +++++++++++++++++++ > 1 file changed, 57 insertions(+) > create mode 100644 Documentation/devicetree/bindings/arm/arm,ffa.yaml > > diff --git a/Documentation/devicetree/bindings/arm/arm,ffa.yaml b/Documentation/devicetree/bindings/arm/arm,ffa.yaml > new file mode 100644 > index 000000000000..42ed33464ba7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/arm/arm,ffa.yaml > @@ -0,0 +1,57 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/arm/arm,ffa.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Arm Firmware Framework for Arm v8-A (in-kernel users) > + > +maintainers: > + - Sudeep Holla <sudeep.holla@xxxxxxx> > + > +description: | > + Firmware frameworks implementing partition according to the FF-A > + specification defined by ARM document number ARM DEN 0077A ("Arm Firmware > + Framework for Arm v8-A") [0], providing services to be used by other > + partitions. > + > + [0] https://developer.arm.com/docs/den0077/latest > + > +properties: > + $nodename: > + const: ffa > + > + compatible: > + oneOf: > + - const: arm,ffa-1.0 > + > +patternProperties: > + "^ffa-partition-[0-9]+$": > + type: object > + description: One or more child nodes, each describing an FFA partition. > + properties: > + $nodename: > + const: ffa_partition > + > + compatible: > + const: arm,ffa-1.0-partition > + > + uuid: > + $ref: '/schemas/types.yaml#definitions/string' > + description: | > + The 128-bit UUID [2] of the service implemented by this partition. > + > + [2] https://tools.ietf.org/html/rfc4122 > + > +additionalProperties: false > + > +examples: > + - | > + ffa { > + compatible = "arm,ffa-1.0"; > + > + ffa-partition-0 { > + compatible = "arm,ffa-1.0-partition"; > + uuid = "12345678-9abc-def0-1234-56789abcdef0"; > + }; > + }; > -- > 2.25.1 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel