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/serial/st,stm32-uart.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/serial/st,stm32-uart.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 maintainers:
    8   - Erwan Le Ray <erwan.leray@foss.st.com>
    9 
   10 title: STMicroelectronics STM32 USART bindings
   11 
   12 properties:
   13   compatible:
   14     enum:
   15       - st,stm32-uart
   16       - st,stm32f7-uart
   17       - st,stm32h7-uart
   18 
   19   reg:
   20     maxItems: 1
   21 
   22   interrupts:
   23     maxItems: 1
   24 
   25   clocks:
   26     maxItems: 1
   27 
   28   resets:
   29     maxItems: 1
   30 
   31   label:
   32     description: label associated with this uart
   33 
   34   st,hw-flow-ctrl:
   35     description: enable hardware flow control (deprecated)
   36     $ref: /schemas/types.yaml#/definitions/flag
   37 
   38   uart-has-rtscts: true
   39 
   40   rx-tx-swap: true
   41 
   42   dmas:
   43     minItems: 1
   44     maxItems: 2
   45 
   46   dma-names:
   47     items:
   48       enum: [ rx, tx ]
   49     minItems: 1
   50     maxItems: 2
   51 
   52 # cts-gpios and rts-gpios properties can be used instead of 'uart-has-rtscts'
   53 # or 'st,hw-flow-ctrl' (deprecated) for making use of any gpio pins for flow
   54 # control instead of dedicated pins.
   55 #
   56 # It should be noted that both cts-gpios/rts-gpios and 'uart-has-rtscts' or
   57 # 'st,hw-flow-ctrl' (deprecated) properties cannot co-exist in a design.
   58   cts-gpios: true
   59   rts-gpios: true
   60 
   61   wakeup-source: true
   62 
   63   rs485-rts-delay: true
   64   rs485-rts-active-low: true
   65   linux,rs485-enabled-at-boot-time: true
   66   rs485-rx-during-tx: true
   67 
   68   rx-threshold:
   69     description:
   70       If value is set to 1, RX FIFO threshold is disabled.
   71     enum: [1, 2, 4, 8, 12, 14, 16]
   72     default: 8
   73 
   74   tx-threshold:
   75     description:
   76       If value is set to 1, TX FIFO threshold is disabled.
   77     enum: [1, 2, 4, 8, 12, 14, 16]
   78     default: 8
   79 
   80 allOf:
   81   - $ref: rs485.yaml#
   82   - $ref: serial.yaml#
   83   - if:
   84       required:
   85         - st,hw-flow-ctrl
   86     then:
   87       properties:
   88         cts-gpios: false
   89         rts-gpios: false
   90   - if:
   91       properties:
   92         compatible:
   93           const: st,stm32-uart
   94     then:
   95       properties:
   96         rx-tx-swap: false
   97   - if:
   98       properties:
   99         compatible:
  100           contains:
  101             enum:
  102               - st,stm32-uart
  103               - st,stm32f7-uart
  104     then:
  105       properties:
  106         rx-threshold: false
  107         tx-threshold: false
  108 
  109 required:
  110   - compatible
  111   - reg
  112   - interrupts
  113   - clocks
  114 
  115 unevaluatedProperties: false
  116 
  117 examples:
  118   - |
  119     #include <dt-bindings/clock/stm32mp1-clks.h>
  120     usart1: serial@40011000 {
  121       compatible = "st,stm32h7-uart";
  122       reg = <0x40011000 0x400>;
  123       interrupts = <37>;
  124       clocks = <&rcc 0 164>;
  125       dmas = <&dma2 2 4 0x414 0x0>,
  126              <&dma2 7 4 0x414 0x0>;
  127       dma-names = "rx", "tx";
  128       rx-threshold = <4>;
  129       tx-threshold = <4>;
  130       rs485-rts-active-low;
  131     };
  132 
  133 ...

Cache object: 6e7bf968fd3a588934cb1698d91cd9d7


[ 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.