The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/mfd/st,stm32-timers.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/mfd/st,stm32-timers.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: STMicroelectronics STM32 Timers bindings
    8 
    9 description: |
   10   This hardware block provides 3 types of timer along with PWM functionality:
   11     - advanced-control timers consist of a 16-bit auto-reload counter driven
   12       by a programmable prescaler, break input feature, PWM outputs and
   13       complementary PWM outputs channels.
   14     - general-purpose timers consist of a 16-bit or 32-bit auto-reload counter
   15       driven by a programmable prescaler and PWM outputs.
   16     - basic timers consist of a 16-bit auto-reload counter driven by a
   17       programmable prescaler.
   18 
   19 maintainers:
   20   - Fabrice Gasnier <fabrice.gasnier@foss.st.com>
   21 
   22 properties:
   23   compatible:
   24     const: st,stm32-timers
   25 
   26   reg:
   27     maxItems: 1
   28 
   29   clocks:
   30     maxItems: 1
   31 
   32   clock-names:
   33     items:
   34       - const: int
   35 
   36   resets:
   37     maxItems: 1
   38 
   39   dmas:
   40     minItems: 1
   41     maxItems: 7
   42 
   43   dma-names:
   44     items:
   45       enum: [ ch1, ch2, ch3, ch4, up, trig, com ]
   46     minItems: 1
   47     maxItems: 7
   48 
   49   interrupts:
   50     oneOf:
   51       - maxItems: 1
   52       - maxItems: 4
   53 
   54   interrupt-names:
   55     oneOf:
   56       - items:
   57           - const: global
   58       - items:
   59           - const: brk
   60           - const: up
   61           - const: trg-com
   62           - const: cc
   63 
   64   "#address-cells":
   65     const: 1
   66 
   67   "#size-cells":
   68     const: 0
   69 
   70   pwm:
   71     type: object
   72 
   73     properties:
   74       compatible:
   75         const: st,stm32-pwm
   76 
   77       "#pwm-cells":
   78         const: 3
   79 
   80       st,breakinput:
   81         description:
   82           One or two <index level filter> to describe break input
   83           configurations.
   84         $ref: /schemas/types.yaml#/definitions/uint32-matrix
   85         items:
   86           items:
   87             - description: |
   88                 "index" indicates on which break input (0 or 1) the
   89                 configuration should be applied.
   90               enum: [0, 1]
   91             - description: |
   92                 "level" gives the active level (0=low or 1=high) of the
   93                 input signal for this configuration
   94               enum: [0, 1]
   95             - description: |
   96                 "filter" gives the filtering value (up to 15) to be applied.
   97               maximum: 15
   98         minItems: 1
   99         maxItems: 2
  100 
  101     required:
  102       - "#pwm-cells"
  103       - compatible
  104 
  105   counter:
  106     type: object
  107 
  108     properties:
  109       compatible:
  110         const: st,stm32-timer-counter
  111 
  112     required:
  113       - compatible
  114 
  115 patternProperties:
  116   "^timer@[0-9]+$":
  117     type: object
  118 
  119     properties:
  120       compatible:
  121         enum:
  122           - st,stm32-timer-trigger
  123           - st,stm32h7-timer-trigger
  124 
  125       reg:
  126         description: Identify trigger hardware block.
  127         items:
  128           minimum: 0
  129           maximum: 16
  130 
  131     required:
  132       - compatible
  133       - reg
  134 
  135 required:
  136   - compatible
  137   - reg
  138   - clocks
  139   - clock-names
  140 
  141 additionalProperties: false
  142 
  143 examples:
  144   - |
  145     #include <dt-bindings/clock/stm32mp1-clks.h>
  146     timers2: timer@40000000 {
  147       #address-cells = <1>;
  148       #size-cells = <0>;
  149       compatible = "st,stm32-timers";
  150       reg = <0x40000000 0x400>;
  151       clocks = <&rcc TIM2_K>;
  152       clock-names = "int";
  153       dmas = <&dmamux1 18 0x400 0x1>,
  154              <&dmamux1 19 0x400 0x1>,
  155              <&dmamux1 20 0x400 0x1>,
  156              <&dmamux1 21 0x400 0x1>,
  157              <&dmamux1 22 0x400 0x1>;
  158       dma-names = "ch1", "ch2", "ch3", "ch4", "up";
  159       pwm {
  160         compatible = "st,stm32-pwm";
  161         #pwm-cells = <3>;
  162         st,breakinput = <0 1 5>;
  163       };
  164       timer@1 {
  165         compatible = "st,stm32-timer-trigger";
  166         reg = <1>;
  167       };
  168       counter {
  169         compatible = "st,stm32-timer-counter";
  170       };
  171     };
  172 
  173 ...

Cache object: 5184cf98725bfae2710b4259daab9549


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.