Unverified Commit c6cec088 authored by Vlad.Karpovich's avatar Vlad.Karpovich Committed by Mark Brown
Browse files

ASoC: dt-bindings: cs35l45: GPIOs configuration

parent fa8c052b
Loading
Loading
Loading
Loading
+78 −0
Original line number Diff line number Diff line
@@ -50,6 +50,74 @@ properties:
    maximum: 3
    default: 2

patternProperties:
  "^cirrus,gpio-ctrl[1-3]$":
    description:
      GPIO pins configuration.
    type: object
    additionalProperties: false
    properties:
      gpio-dir:
        description:
          GPIO pin direction. Valid only when 'gpio-ctrl' is 1
            0 = Output
            1 = Input
        $ref: "/schemas/types.yaml#/definitions/uint32"
        minimum: 0
        maximum: 1
        default: 1
      gpio-lvl:
        description:
          GPIO level. Valid only when 'gpio-ctrl' is 1 and 'gpio-dir' is 0
            0 = Low
            1 = High
        $ref: "/schemas/types.yaml#/definitions/uint32"
        minimum: 0
        maximum: 1
        default: 0
      gpio-op-cfg:
        description:
          GPIO level. Valid only when 'gpio-ctrl' is 1 and 'gpio-dir' is 0
            0 = CMOS
            1 = Open Drain
        $ref: "/schemas/types.yaml#/definitions/uint32"
        minimum: 0
        maximum: 1
        default: 0
      gpio-pol:
        description:
          GPIO output polarity select. Valid only when 'gpio-ctrl' is 1
          and 'gpio-dir' is 0
            0 = Non-inverted, Active High
            1 = Inverted, Active Low
        $ref: "/schemas/types.yaml#/definitions/uint32"
        minimum: 0
        maximum: 1
        default: 0
      gpio-ctrl:
        description:
          Defines the function of the GPIO pin.
          GPIO1
            0 = High impedance input
            1 = Pin acts as a GPIO, direction controlled by 'gpio-dir'
            2 = Pin acts as MDSYNC, direction controlled by MDSYNC
            3-7 = Reserved
          GPIO2
            0 = High impedance input
            1 = Pin acts as a GPIO, direction controlled by 'gpio-dir'
            2 = Pin acts as open drain INT
            3 = Reserved
            4 = Pin acts as push-pull output INT. Active low.
            5 = Pin acts as push-pull output INT. Active high.
            6,7 = Reserved
          GPIO3
            0 = High impedance input
            1 = Pin acts as a GPIO, direction controlled by 'gpio-dir'
            2-7 = Reserved
        $ref: "/schemas/types.yaml#/definitions/uint32"
        minimum: 0
        maximum: 7
        default: 0
required:
  - compatible
  - reg
@@ -74,5 +142,15 @@ examples:
          reset-gpios = <&gpio 110 0>;
          cirrus,asp-sdout-hiz-ctrl = <(CS35L45_ASP_TX_HIZ_UNUSED |
                                        CS35L45_ASP_TX_HIZ_DISABLED)>;
          cirrus,gpio-ctrl1 {
             gpio-ctrl = <0x2>;
          };
          cirrus,gpio-ctrl2 {
             gpio-ctrl = <0x2>;
          };
          cirrus,gpio-ctrl3 {
             gpio-ctrl = <0x1>;
             gpio-dir = <0x1>;
          };
        };
    };