-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: atmel-tcb: convert bindings to json-schema
Convert Atmel Timer Counter Blocks bindings to DT schema format using json-schema. Also move it out of mfd as it is not and has never been related to mfd. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
- Loading branch information
Alexandre Belloni
authored and
Jonathan Cameron
committed
Jul 20, 2020
1 parent
d3818c4
commit 4b88c67
Showing
2 changed files
with
131 additions
and
56 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
131 changes: 131 additions & 0 deletions
131
Documentation/devicetree/bindings/soc/microchip/atmel,at91rm9200-tcb.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: "http://devicetree.org/schemas/soc/microchip/atmel,at91rm9200-tcb.yaml#" | ||
$schema: "http://devicetree.org/meta-schemas/core.yaml#" | ||
|
||
title: Atmel Timer Counter Block | ||
|
||
maintainers: | ||
- Alexandre Belloni <alexandre.belloni@bootlin.com> | ||
|
||
description: | | ||
The Atmel (now Microchip) SoCs have timers named Timer Counter Block. Each | ||
timer has three channels with two counters each. | ||
properties: | ||
compatible: | ||
items: | ||
- enum: | ||
- atmel,at91rm9200-tcb | ||
- atmel,at91sam9x5-tcb | ||
- const: simple-mfd | ||
- const: syscon | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
description: | ||
List of interrupts. One interrupt per TCB channel if available or one | ||
interrupt for the TC block | ||
minItems: 1 | ||
maxItems: 3 | ||
|
||
clock-names: | ||
description: | ||
List of clock names. Always includes t0_clk and slow clk. Also includes | ||
t1_clk and t2_clk if a clock per channel is available. | ||
oneOf: | ||
- items: | ||
- const: t0_clk | ||
- const: slow_clk | ||
- items: | ||
- const: t0_clk | ||
- const: t1_clk | ||
- const: t2_clk | ||
- const: slow_clk | ||
minItems: 2 | ||
maxItems: 4 | ||
|
||
clocks: | ||
minItems: 2 | ||
maxItems: 4 | ||
|
||
'#address-cells': | ||
const: 1 | ||
|
||
'#size-cells': | ||
const: 0 | ||
|
||
patternProperties: | ||
"^timer@[0-2]$": | ||
description: The timer block channels that are used as timers. | ||
type: object | ||
properties: | ||
compatible: | ||
const: atmel,tcb-timer | ||
reg: | ||
description: | ||
List of channels to use for this particular timer. | ||
minItems: 1 | ||
maxItems: 3 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
- clocks | ||
- clock-names | ||
- '#address-cells' | ||
- '#size-cells' | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
/* One interrupt per TC block: */ | ||
tcb0: timer@fff7c000 { | ||
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 = "atmel,tcb-timer"; | ||
reg = <0>, <1>; | ||
}; | ||
timer@2 { | ||
compatible = "atmel,tcb-timer"; | ||
reg = <2>; | ||
}; | ||
}; | ||
/* One interrupt per TC channel in a TC block: */ | ||
tcb1: timer@fffdc000 { | ||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
reg = <0xfffdc000 0x100>; | ||
interrupts = <26 4>, <27 4>, <28 4>; | ||
clocks = <&tcb1_clk>, <&clk32k>; | ||
clock-names = "t0_clk", "slow_clk"; | ||
timer@0 { | ||
compatible = "atmel,tcb-timer"; | ||
reg = <0>; | ||
}; | ||
timer@1 { | ||
compatible = "atmel,tcb-timer"; | ||
reg = <1>; | ||
}; | ||
}; |