On Fri, May 08, 2020 at 11:29:32AM +0300, Roger Quadros wrote: > Add DT binding schema for J721e system controller. > > Signed-off-by: Roger Quadros <rogerq@xxxxxx> > --- > .../bindings/mfd/ti,j721e-syscon.yaml | 69 +++++++++++++++++++ > 1 file changed, 69 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/ti,j721e-syscon.yaml Use the compatible string for filename. > > diff --git a/Documentation/devicetree/bindings/mfd/ti,j721e-syscon.yaml b/Documentation/devicetree/bindings/mfd/ti,j721e-syscon.yaml > new file mode 100644 > index 000000000000..e832fb43f884 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/ti,j721e-syscon.yaml > @@ -0,0 +1,69 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +# Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/ti,j721e-syscon.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: TI J721e System Controller Registers R/W Device Tree Bindings > + > +description: | > + This represents the Control Module registers (CTRL_MMR0) on the SoC. > + System controller node represents a register region containing a set > + of miscellaneous registers. The registers are not cohesive enough to > + represent as any specific type of device. The typical use-case is > + for some other node's driver, or platform-specific code, to acquire > + a reference to the syscon node (e.g. by phandle, node path, or > + search using a specific compatible value), interrogate the node (or > + associated OS driver) to determine the location of the registers, > + and access the registers directly. > + > +maintainers: > + - Kishon Vijay Abraham I <kishon@xxxxxx> > + - Roger Quadros <rogerq@xxxxxx > + > +allOf: > + - $ref: "syscon.yaml#" Drop this as it is not needed. > + > +properties: > + compatible: > + anyOf: > + - items: > + - enum: > + - ti,j721e-system-controller > + > + - const: syscon What about simple-mfd? > + > + - contains: > + const: syscon > + additionalItems: true Should be dropped. You are going to need a 'select' entry or this will match on any syscon or simple-mfd node: select: properties: compatible: contains: const: ti,j721e-system-controller required: - compatible > + > +# Optional children > + > + "^serdes-ln-ctrl@[0-9a-f]+$": > + type: object > + description: | > + This is the SERDES lane control mux. It should follow the bindings > + specified in > + Documentation/devicetree/bindings/mux/reg-mux.txt Really this should reference a 'reg-mux' schema, but fine for now. Bonus points if you do convert reg-mux.txt though. > + > +required: > + - compatible > + - reg > + > +unevaluatedProperties: false > + > +examples: > + - | > + scm_conf: scm-conf@100000 { > + compatible = "ti,j721e-system-controller", "syscon", "simple-mfd"; > + reg = <0x00100000 0x1c000>; > + #address-cells = <1>; > + #size-cells = <1>; These aren't documented and you need 'ranges' for the child address to be translatable. > + > + serdes_ln_ctrl: serdes-ln-ctrl@4080 { > + compatible = "mmio-mux"; > + reg = <0x00004080 0x50>; > + }; > + }; > +... > -- > Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. > Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki >