Commit 6bdafcea authored by Bjorn Andersson's avatar Bjorn Andersson Committed by Linus Walleij
Browse files

dt-bindings: pinctrl: qcom: Define common TLMM binding



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.

Reviewed-by: default avatarVinod Koul <vkoul@kernel.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210126042650.1725176-1-bjorn.andersson@linaro.org


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent d5d348a3
Loading
Loading
Loading
Loading
+85 −0
Original line number Diff line number Diff line
# 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@linaro.org>

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
...