xref: /freebsd/sys/contrib/device-tree/Bindings/serial/renesas,sci.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/serial/renesas,sci.yaml#
5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel Vadottitle: Renesas Serial Communication Interface
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Geert Uytterhoeven <geert+renesas@glider.be>
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel VadotallOf:
13c66ec88fSEmmanuel Vadot  - $ref: serial.yaml#
14c66ec88fSEmmanuel Vadot
15c66ec88fSEmmanuel Vadotproperties:
16c66ec88fSEmmanuel Vadot  compatible:
17e67e8565SEmmanuel Vadot    oneOf:
18e67e8565SEmmanuel Vadot      - items:
19e67e8565SEmmanuel Vadot          - enum:
20*8d13bc63SEmmanuel Vadot              - renesas,r9a07g043-sci     # RZ/G2UL and RZ/Five
21e67e8565SEmmanuel Vadot              - renesas,r9a07g044-sci     # RZ/G2{L,LC}
22e67e8565SEmmanuel Vadot              - renesas,r9a07g054-sci     # RZ/V2L
23e67e8565SEmmanuel Vadot          - const: renesas,sci            # generic SCI compatible UART
24e67e8565SEmmanuel Vadot
25e67e8565SEmmanuel Vadot      - items:
26e67e8565SEmmanuel Vadot          - const: renesas,sci            # generic SCI compatible UART
27c66ec88fSEmmanuel Vadot
28c66ec88fSEmmanuel Vadot  reg:
29c66ec88fSEmmanuel Vadot    maxItems: 1
30c66ec88fSEmmanuel Vadot
31c66ec88fSEmmanuel Vadot  interrupts:
32c66ec88fSEmmanuel Vadot    items:
33c66ec88fSEmmanuel Vadot      - description: Error interrupt
34c66ec88fSEmmanuel Vadot      - description: Receive buffer full interrupt
35c66ec88fSEmmanuel Vadot      - description: Transmit buffer empty interrupt
36c66ec88fSEmmanuel Vadot      - description: Transmit end interrupt
37c66ec88fSEmmanuel Vadot
38c66ec88fSEmmanuel Vadot  interrupt-names:
39c66ec88fSEmmanuel Vadot    items:
40c66ec88fSEmmanuel Vadot      - const: eri
41c66ec88fSEmmanuel Vadot      - const: rxi
42c66ec88fSEmmanuel Vadot      - const: txi
43c66ec88fSEmmanuel Vadot      - const: tei
44c66ec88fSEmmanuel Vadot
45c66ec88fSEmmanuel Vadot  clocks:
46c66ec88fSEmmanuel Vadot    minItems: 1
47c66ec88fSEmmanuel Vadot    maxItems: 2
48c66ec88fSEmmanuel Vadot
49c66ec88fSEmmanuel Vadot  clock-names:
50c66ec88fSEmmanuel Vadot    minItems: 1
51c66ec88fSEmmanuel Vadot    maxItems: 2
52c66ec88fSEmmanuel Vadot    items:
53c66ec88fSEmmanuel Vadot      enum:
54c66ec88fSEmmanuel Vadot        - fck # UART functional clock
55c66ec88fSEmmanuel Vadot        - sck # optional external clock input
56c66ec88fSEmmanuel Vadot
57c66ec88fSEmmanuel Vadot  uart-has-rtscts: false
58c66ec88fSEmmanuel Vadot
59c66ec88fSEmmanuel Vadotrequired:
60c66ec88fSEmmanuel Vadot  - compatible
61c66ec88fSEmmanuel Vadot  - reg
62c66ec88fSEmmanuel Vadot  - interrupts
63c66ec88fSEmmanuel Vadot  - clocks
64c66ec88fSEmmanuel Vadot  - clock-names
65c66ec88fSEmmanuel Vadot
66e67e8565SEmmanuel Vadotif:
67e67e8565SEmmanuel Vadot  properties:
68e67e8565SEmmanuel Vadot    compatible:
69e67e8565SEmmanuel Vadot      contains:
70e67e8565SEmmanuel Vadot        enum:
71c9ccf3a3SEmmanuel Vadot          - renesas,r9a07g043-sci
72e67e8565SEmmanuel Vadot          - renesas,r9a07g044-sci
73e67e8565SEmmanuel Vadot          - renesas,r9a07g054-sci
74e67e8565SEmmanuel Vadotthen:
75e67e8565SEmmanuel Vadot  properties:
76e67e8565SEmmanuel Vadot    resets:
77e67e8565SEmmanuel Vadot      maxItems: 1
78e67e8565SEmmanuel Vadot
79e67e8565SEmmanuel Vadot    power-domains:
80e67e8565SEmmanuel Vadot      maxItems: 1
81e67e8565SEmmanuel Vadot
82e67e8565SEmmanuel Vadot  required:
83e67e8565SEmmanuel Vadot    - resets
84e67e8565SEmmanuel Vadot    - power-domains
85e67e8565SEmmanuel Vadot
866be33864SEmmanuel VadotunevaluatedProperties: false
876be33864SEmmanuel Vadot
88c66ec88fSEmmanuel Vadotexamples:
89c66ec88fSEmmanuel Vadot  - |
90e67e8565SEmmanuel Vadot    #include <dt-bindings/clock/r9a07g044-cpg.h>
91e67e8565SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
92e67e8565SEmmanuel Vadot
93c66ec88fSEmmanuel Vadot    aliases {
94c66ec88fSEmmanuel Vadot        serial0 = &sci0;
95c66ec88fSEmmanuel Vadot    };
96c66ec88fSEmmanuel Vadot
97e67e8565SEmmanuel Vadot    sci0: serial@1004d000 {
98e67e8565SEmmanuel Vadot        compatible = "renesas,r9a07g044-sci", "renesas,sci";
99e67e8565SEmmanuel Vadot        reg = <0x1004d000 0x400>;
100e67e8565SEmmanuel Vadot        interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
101e67e8565SEmmanuel Vadot                     <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
102e67e8565SEmmanuel Vadot                     <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
103e67e8565SEmmanuel Vadot                     <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>;
104e67e8565SEmmanuel Vadot        interrupt-names = "eri", "rxi", "txi", "tei";
105e67e8565SEmmanuel Vadot        clocks = <&cpg CPG_MOD R9A07G044_SCI0_CLKP>;
106c66ec88fSEmmanuel Vadot        clock-names = "fck";
107e67e8565SEmmanuel Vadot        power-domains = <&cpg>;
108e67e8565SEmmanuel Vadot        resets = <&cpg R9A07G044_SCI0_RST>;
109c66ec88fSEmmanuel Vadot    };
110