On Mon, Dec 13, 2021 at 07:58:32PM +0000, David Brazdil wrote: > Add DeviceTree bindings for Open Profile for DICE, an open protocol for > measured boot. Firmware uses DICE to measure the hardware/software > combination and generates Compound Device Identifier (CDI) certificates. > These are stored in memory and the buffer is described in the DT as > a reserved memory region referenced by a compatible device node. > > Signed-off-by: David Brazdil <dbrazdil@xxxxxxxxxx> > --- > .../bindings/firmware/google,open-dice.yaml | 51 +++++++++++++++++++ > 1 file changed, 51 insertions(+) > create mode 100644 Documentation/devicetree/bindings/firmware/google,open-dice.yaml > > diff --git a/Documentation/devicetree/bindings/firmware/google,open-dice.yaml b/Documentation/devicetree/bindings/firmware/google,open-dice.yaml > new file mode 100644 > index 000000000000..1aa69f381b8c > --- /dev/null > +++ b/Documentation/devicetree/bindings/firmware/google,open-dice.yaml > @@ -0,0 +1,51 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/firmware/google,open-dice.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Open Profile for DICE Device Tree Bindings > + > +description: | > + This binding represents a reserved memory region containing data > + generated by the Open Profile for DICE protocol. > + > + See https://pigweed.googlesource.com/open-dice/ > + > +maintainers: > + - David Brazdil <dbrazdil@xxxxxxxxxx> > + > +properties: > + compatible: > + enum: > + - google,open-dice > + > + memory-region: > + maxItems: 1 > + description: | > + phandle to the reserved memory node to be associated with the device > + The reserved memory node should be defined as per the bindings, > + Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml > + > +required: > + - compatible > + - memory-region > + > +additionalProperties: false > + > +examples: > + - | > + reserved-memory { > + #address-cells = <2>; > + #size-cells = <1>; > + > + dice_reserved: dice@12340000 { > + reg = <0x00 0x12340000 0x2000>; > + no-map; > + }; > + }; > + > + dice { > + compatible = "google,open-dice"; > + memory-region = <&dice_reserved>; There's no need for this indirection. Just add the compatible to the dice@12340000 node. You can bind drivers to /reserved-memory nodes. Rob