On 25-01-21, 20:26, Bjorn Andersson wrote: > Several properties are shared between all TLMM bindings. By providing a > common binding to define these properties each platform's binding can be > reduced to just listing which of these properties should be checked for > - or further specified. Rob, Linus are we okay with this common binding, if so can we please get this one in for the next merge window? > > Reviewed-by: Vinod Koul <vkoul@xxxxxxxxxx> > Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > --- > > Changes since v1: > - Dropped "phandle", as Rob pushed this to the dt-schema instead > - Expanded the "TLMM" abbreviation > > .../bindings/pinctrl/qcom,tlmm-common.yaml | 85 +++++++++++++++++++ > 1 file changed, 85 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml > > diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml > new file mode 100644 > index 000000000000..3b37cf102d41 > --- /dev/null > +++ b/Documentation/devicetree/bindings/pinctrl/qcom,tlmm-common.yaml > @@ -0,0 +1,85 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pinctrl/qcom,tlmm-common.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm Technologies, Inc. Top Level Mode Multiplexer (TLMM) definitions > + > +maintainers: > + - Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > + > +description: > + This defines the common properties used to describe all Qualcomm Top Level > + Mode Multiplexer bindings and pinconf/pinmux states for these. > + > +properties: > + interrupts: > + description: > + Specifies the TLMM summary IRQ > + maxItems: 1 > + > + interrupt-controller: true > + > + '#interrupt-cells': > + description: > + Specifies the PIN numbers and Flags, as defined in defined in > + include/dt-bindings/interrupt-controller/irq.h > + const: 2 > + > + gpio-controller: true > + > + '#gpio-cells': > + description: > + Specifying the pin number and flags, as defined in > + include/dt-bindings/gpio/gpio.h > + const: 2 > + > + gpio-ranges: > + maxItems: 1 > + > + wakeup-parent: > + description: > + Specifying the interrupt-controller used to wake up the system when the > + TLMM block has been powered down. > + maxItems: 1 > + > + gpio-reserved-ranges: > + description: > + Pins can be reserved for trusted applications and thereby unaccessible > + from the OS. This property can be used to mark the pins which resources > + should not be accessed by the OS. Please see the ../gpio/gpio.txt for more > + information. > + > +required: > + - interrupts > + - interrupt-controller > + - '#interrupt-cells' > + - gpio-controller > + - '#gpio-cells' > + - gpio-ranges > + > +additionalProperties: true > + > +$defs: > + qcom-tlmm-state: > + allOf: > + - $ref: pincfg-node.yaml# > + - $ref: pinmux-node.yaml# > + > + properties: > + drive-strength: > + enum: [2, 4, 6, 8, 10, 12, 14, 16] > + default: 2 > + description: > + Selects the drive strength for the specified pins, in mA. > + > + bias-pull-down: true > + bias-pull-up: true > + bias-disable: true > + input-enable: true > + output-high: true > + output-low: true > + > + additionalProperties: true > +... > -- > 2.29.2 -- ~Vinod