GNU Linux-libre 4.19.264-gnu1
[releases.git] / Documentation / devicetree / bindings / pwm / pwm-samsung.txt
1 * Samsung PWM timers
2
3 Samsung SoCs contain PWM timer blocks which can be used for system clock source
4 and clock event timers, as well as to drive SoC outputs with PWM signal. Each
5 PWM timer block provides 5 PWM channels (not all of them can drive physical
6 outputs - see SoC and board manual).
7
8 Be aware that the clocksource driver supports only uniprocessor systems.
9
10 Required properties:
11 - compatible : should be one of following:
12     samsung,s3c2410-pwm - for 16-bit timers present on S3C24xx SoCs
13     samsung,s3c6400-pwm - for 32-bit timers present on S3C64xx SoCs
14     samsung,s5p6440-pwm - for 32-bit timers present on S5P64x0 SoCs
15     samsung,s5pc100-pwm - for 32-bit timers present on S5PC100, S5PV210,
16                           Exynos4210 rev0 SoCs
17     samsung,exynos4210-pwm - for 32-bit timers present on Exynos4210,
18                           Exynos4x12, Exynos5250 and Exynos5420 SoCs
19 - reg: base address and size of register area
20 - interrupts: list of timer interrupts (one interrupt per timer, starting at
21   timer 0)
22 - clock-names: should contain all following required clock names:
23     - "timers" - PWM base clock used to generate PWM signals,
24   and any subset of following optional clock names:
25     - "pwm-tclk0" - first external PWM clock source,
26     - "pwm-tclk1" - second external PWM clock source.
27   Note that not all IP variants allow using all external clock sources.
28   Refer to SoC documentation to learn which clock source configurations
29   are available.
30 - clocks: should contain clock specifiers of all clocks, which input names
31   have been specified in clock-names property, in same order.
32 - #pwm-cells: should be 3. See pwm.txt in this directory for a description of
33   the cells format. The only third cell flag supported by this binding is
34   PWM_POLARITY_INVERTED.
35
36 Optional properties:
37 - samsung,pwm-outputs: list of PWM channels used as PWM outputs on particular
38     platform - an array of up to 5 elements being indices of PWM channels
39     (from 0 to 4), the order does not matter.
40
41 Example:
42         pwm@7f006000 {
43                 compatible = "samsung,s3c6400-pwm";
44                 reg = <0x7f006000 0x1000>;
45                 interrupt-parent = <&vic0>;
46                 interrupts = <23>, <24>, <25>, <27>, <28>;
47                 clocks = <&clock 67>;
48                 clock-names = "timers";
49                 samsung,pwm-outputs = <0>, <1>;
50                 #pwm-cells = <3>;
51         }