Skip to content

Commit

Permalink
dt-bindings: counter: microchip-tcb-capture counter
Browse files Browse the repository at this point in the history
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: Kamel Bouhara <[email protected]>
Reviewed-by: Rob Herring <[email protected]>
Signed-off-by: Jonathan Cameron <[email protected]>
  • Loading branch information
kamel-bouhara authored and jic23 committed Jul 20, 2020
1 parent 3f07899 commit 7eb181c
Showing 1 changed file with 29 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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>;
};
};

0 comments on commit 7eb181c

Please sign in to comment.