2016-12-12 19:51 GMT+01:00 Rob Herring <robh@xxxxxxxxxx>: > On Fri, Dec 09, 2016 at 03:15:12PM +0100, Benjamin Gaignard wrote: >> Add bindings information for STM32 Timers >> >> version 6: >> - rename stm32-gtimer to stm32-timers >> - change compatible >> - add description about the IPs >> >> version 2: >> - rename stm32-mfd-timer to stm32-gptimer >> - only keep one compatible string >> >> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxx> >> --- >> .../devicetree/bindings/mfd/stm32-timers.txt | 46 ++++++++++++++++++++++ >> 1 file changed, 46 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/mfd/stm32-timers.txt >> >> diff --git a/Documentation/devicetree/bindings/mfd/stm32-timers.txt b/Documentation/devicetree/bindings/mfd/stm32-timers.txt >> new file mode 100644 >> index 0000000..b30868e >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/mfd/stm32-timers.txt >> @@ -0,0 +1,46 @@ >> +STM32 Timers driver bindings >> + >> +This IP provides 3 types of timer along with PWM functionality: >> +- 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. >> + >> +Required parameters: >> +- compatible: must be "st,stm32-timers" >> + >> +- reg: Physical base address and length of the controller's >> + registers. >> +- clock-names: Set to "clk_int". > > 'clk' is redundant. Also, you don't really need -names when there is > only one of them. I use devm_regmap_init_mmio_clk() which get the clock by it name so I have to define it in DT. >> +- clocks: Phandle to the clock used by the timer module. >> + For Clk properties, please refer to ../clock/clock-bindings.txt >> + >> +Optional parameters: >> +- resets: Phandle to the parent reset controller. >> + See ../reset/st,stm32-rcc.txt >> + >> +Optional subnodes: >> +- pwm: See ../pwm/pwm-stm32.txt >> +- timer: See ../iio/timer/stm32-timer-trigger.txt >> + >> +Example: >> + timers@40010000 { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + compatible = "st,stm32-timers"; >> + reg = <0x40010000 0x400>; >> + clocks = <&rcc 0 160>; >> + clock-names = "clk_int"; >> + >> + pwm { >> + compatible = "st,stm32-pwm"; >> + pinctrl-0 = <&pwm1_pins>; >> + pinctrl-names = "default"; >> + }; >> + >> + timer { >> + compatible = "st,stm32-timer-trigger"; >> + reg = <0>; > > You don't need reg here as there is only one. In turn, you don't need > #address-cells or #size-cells. I use "reg" to set each timer configuration. >From hardware point of view they are all the same except for which hardware signals they could consume and/or send. "reg" is used as index of the two tables in driver code. > >> + }; >> + }; >> -- >> 1.9.1 >> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html