Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/serial/pl011.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: ARM AMBA Primecell PL011 serial UART
0008 
0009 maintainers:
0010   - Rob Herring <robh@kernel.org>
0011 
0012 allOf:
0013   - $ref: serial.yaml#
0014 
0015 # Need a custom select here or 'arm,primecell' will match on lots of nodes
0016 select:
0017   properties:
0018     compatible:
0019       contains:
0020         enum:
0021           - arm,pl011
0022   required:
0023     - compatible
0024 
0025 properties:
0026   compatible:
0027     items:
0028       - const: arm,pl011
0029       - const: arm,primecell
0030 
0031   reg:
0032     maxItems: 1
0033 
0034   interrupts:
0035     maxItems: 1
0036 
0037   pinctrl-0: true
0038   pinctrl-1: true
0039 
0040   pinctrl-names:
0041     description:
0042       When present, must have one state named "default",
0043       and may contain a second name named "sleep". The former
0044       state sets up pins for ordinary operation whereas
0045       the latter state will put the associated pins to sleep
0046       when the UART is unused
0047     minItems: 1
0048     items:
0049       - const: default
0050       - const: sleep
0051 
0052   clocks:
0053     description:
0054       When present, the first clock listed must correspond to
0055       the clock named UARTCLK on the IP block, i.e. the clock
0056       to the external serial line, whereas the second clock
0057       must correspond to the PCLK clocking the internal logic
0058       of the block. Just listing one clock (the first one) is
0059       deprecated.
0060     maxItems: 2
0061 
0062   clock-names:
0063     items:
0064       - const: uartclk
0065       - const: apb_pclk
0066 
0067   dmas:
0068     minItems: 1
0069     maxItems: 2
0070 
0071   dma-names:
0072     minItems: 1
0073     items:
0074       - const: rx
0075       - const: tx
0076 
0077   auto-poll:
0078     description:
0079       Enables polling when using RX DMA.
0080     type: boolean
0081 
0082   poll-rate-ms:
0083     description:
0084       Rate at which poll occurs when auto-poll is set.
0085       default 100ms.
0086     default: 100
0087 
0088   poll-timeout-ms:
0089     description:
0090       Poll timeout when auto-poll is set, default
0091       3000ms.
0092     default: 3000
0093 
0094   resets:
0095     maxItems: 1
0096 
0097 required:
0098   - compatible
0099   - reg
0100   - interrupts
0101 
0102 dependencies:
0103   poll-rate-ms: [ auto-poll ]
0104   poll-timeout-ms: [ auto-poll ]
0105 
0106 unevaluatedProperties: false
0107 
0108 examples:
0109   - |
0110     serial@80120000 {
0111       compatible = "arm,pl011", "arm,primecell";
0112       reg = <0x80120000 0x1000>;
0113       interrupts = <0 11 4>;
0114       dmas = <&dma 13 0 0x2>, <&dma 13 0 0x0>;
0115       dma-names = "rx", "tx";
0116       clocks = <&foo_clk>, <&bar_clk>;
0117       clock-names = "uartclk", "apb_pclk";
0118     };
0119 
0120 ...