Commit 7eb181cf authored by Kamel Bouhara's avatar Kamel Bouhara Committed by Jonathan Cameron
Browse files

dt-bindings: counter: microchip-tcb-capture counter



Describe the devicetree binding for the Microchip TCB module.
Each counter blocks exposes three independent counters.

However, when configured in quadrature decoder, both channel <0> and <1>
are required for speed/position and rotation capture (yet only the
position is captured).

Signed-off-by: default avatarKamel Bouhara <kamel.bouhara@bootlin.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 3f07899f
Loading
Loading
Loading
Loading
+29 −3
Original line number Diff line number Diff line
@@ -52,14 +52,20 @@ properties:

patternProperties:
  "^timer@[0-2]$":
    description: The timer block channels that are used as timers.
    description: The timer block channels that are used as timers or counters.
    type: object
    properties:
      compatible:
        const: atmel,tcb-timer
        items:
          - enum:
              - atmel,tcb-timer
              - microchip,tcb-capture
      reg:
        description:
          List of channels to use for this particular timer.
          List of channels to use for this particular timer. In Microchip TCB capture
          mode channels are registered as a counter devices, for the qdec mode TCB0's
          channel <0> and <1> are required.

        minItems: 1
        maxItems: 3

@@ -153,3 +159,23 @@ examples:
                        reg = <1>;
                };
        };
    /* TCB0 Capture with QDEC: */
        timer@f800c000 {
                compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
                #address-cells = <1>;
                #size-cells = <0>;
                reg = <0xfff7c000 0x100>;
                interrupts = <18 4>;
                clocks = <&tcb0_clk>, <&clk32k>;
                clock-names = "t0_clk", "slow_clk";

                timer@0 {
                        compatible = "microchip,tcb-capture";
                        reg = <0>, <1>;
                };

                timer@2 {
                        compatible = "atmel,tcb-timer";
                        reg = <2>;
                };
        };