[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <41c43d09-9371-8b23-a3dd-e43f5df5c5bc@st.com>
Date: Wed, 6 Nov 2019 19:57:06 +0000
From: Benjamin GAIGNARD <benjamin.gaignard@...com>
To: Rob Herring <robh@...nel.org>
CC: "mark.rutland@....com" <mark.rutland@....com>,
Alexandre TORGUE <alexandre.torgue@...com>,
Fabrice GASNIER <fabrice.gasnier@...com>,
"jic23@...nel.org" <jic23@...nel.org>,
"knaack.h@....de" <knaack.h@....de>,
"lars@...afoo.de" <lars@...afoo.de>,
"pmeerw@...erw.net" <pmeerw@...erw.net>,
"lee.jones@...aro.org" <lee.jones@...aro.org>,
"thierry.reding@...il.com" <thierry.reding@...il.com>,
"u.kleine-koenig@...gutronix.de" <u.kleine-koenig@...gutronix.de>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-stm32@...md-mailman.stormreply.com"
<linux-stm32@...md-mailman.stormreply.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-iio@...r.kernel.org" <linux-iio@...r.kernel.org>,
"linux-pwm@...r.kernel.org" <linux-pwm@...r.kernel.org>
Subject: Re: [PATCH 4/4] dt-bindings: mfd: Convert stm32 timers bindings to
json-schema
On 11/6/19 5:15 AM, Rob Herring wrote:
> On Thu, Oct 31, 2019 at 01:30:40PM +0100, Benjamin Gaignard wrote:
>> Convert the STM32 timers binding to DT schema format using json-schema
>>
>> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@...com>
>> ---
>> .../devicetree/bindings/mfd/st,stm32-timers.yaml | 91 ++++++++++++++++++++++
>> .../devicetree/bindings/mfd/stm32-timers.txt | 73 -----------------
>> 2 files changed, 91 insertions(+), 73 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/mfd/st,stm32-timers.yaml
>> delete mode 100644 Documentation/devicetree/bindings/mfd/stm32-timers.txt
>>
>> diff --git a/Documentation/devicetree/bindings/mfd/st,stm32-timers.yaml b/Documentation/devicetree/bindings/mfd/st,stm32-timers.yaml
>> new file mode 100644
>> index 000000000000..3f0a65fb2bc0
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mfd/st,stm32-timers.yaml
>> @@ -0,0 +1,91 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/mfd/st,stm32-timers.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: STMicroelectronics STM32 Timers bindings
>> +
>> +description: |
>> + This hardware block provides 3 types of timer along with PWM functionality: \
> Don't need the \
ok
>
>> + - advanced-control timers consist of a 16-bit auto-reload counter driven by a programmable \
>> + prescaler, break input feature, PWM outputs and complementary PWM ouputs channels. \
>> + - general-purpose timers consist of a 16-bit or 32-bit auto-reload counter driven by a \
>> + programmable prescaler and PWM outputs.\
>> + - basic timers consist of a 16-bit auto-reload counter driven by a programmable prescaler.
>> +
>> +maintainers:
>> + - Benjamin Gaignard <benjamin.gaignard@...com>
>> + - Fabrice Gasnier <fabrice.gasnier@...com>
>> +
>> +allOf:
>> + - $ref: "../pwm/st,stm32-pwm.yaml#"
>> + - $ref: "../iio/timer/st,stm32-timer-trigger.yaml#"
>> + - $ref: "../counter/st,stm32-timer-cnt.yaml#"
> This works, but I prefer the child node names be listed under properties
> here with a ref:
>
> counter:
> $ref: "../counter/st,stm32-timer-cnt.yaml#"
If I wrote everything in one file I guess what won't be needed anymore
>
>> +
>> +properties:
>> + compatible:
>> + const: st,stm32-timers
>> +
>> + reg:
>> + maxItems: 1
>> +
>> + clocks:
>> + maxItems: 1
>> +
>> + clock-names:
>> + items:
>> + - const: int
>> +
>> + reset:
>> + maxItems: 1
>> +
>> + dmas: true
> How many?
from 0 up to 8, but I don't know the syntax for that. minItems = 0 isn't
accepted.
Any hints for me ?
>
>> +
>> + dma-names: true
> What are the names?
it could be ch1 ... ch8, "trig" or "up" in any order.
Again I haven't be able to find a syntax that allow to list the names
and use them in any orders.
Benjamin
>
>> +
>> + "#address-cells":
>> + const: 1
>> +
>> + "#size-cells":
>> + const: 0
>> +
>> +required:
>> + - "#address-cells"
>> + - "#size-cells"
>> + - compatible
>> + - reg
>> + - clocks
>> + - clock-names
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/clock/stm32mp1-clks.h>
>> + timers2: timer@...00000 {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + compatible = "st,stm32-timers";
>> + reg = <0x40000000 0x400>;
>> + clocks = <&rcc TIM2_K>;
>> + clock-names = "int";
>> + dmas = <&dmamux1 18 0x400 0x1>,
>> + <&dmamux1 19 0x400 0x1>,
>> + <&dmamux1 20 0x400 0x1>,
>> + <&dmamux1 21 0x400 0x1>,
>> + <&dmamux1 22 0x400 0x1>;
>> + dma-names = "ch1", "ch2", "ch3", "ch4", "up";
>> + pwm {
>> + compatible = "st,stm32-pwm";
>> + #pwm-cells = <3>;
>> + st,breakinput = <0 1 5>;
>> + };
>> + timer@0 {
>> + compatible = "st,stm32-timer-trigger";
>> + reg = <0>;
>> + };
>> + counter {
>> + compatible = "st,stm32-timer-counter";
>> + };
>> + };
>> +
>> +...
Powered by blists - more mailing lists