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,hscif.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: Renesas High Speed Serial Communication Interface with FIFO (HSCIF) 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: 17c66ec88fSEmmanuel Vadot oneOf: 18c66ec88fSEmmanuel Vadot - items: 19c66ec88fSEmmanuel Vadot - enum: 20c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7778 # R-Car M1 21c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7779 # R-Car H1 22c66ec88fSEmmanuel Vadot - const: renesas,rcar-gen1-hscif # R-Car Gen1 23c66ec88fSEmmanuel Vadot - const: renesas,hscif # generic HSCIF compatible UART 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot - items: 26c66ec88fSEmmanuel Vadot - enum: 27c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7742 # RZ/G1H 28c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7743 # RZ/G1M 29c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7744 # RZ/G1N 30c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7745 # RZ/G1E 31c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77470 # RZ/G1C 32c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7790 # R-Car H2 33c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7791 # R-Car M2-W 34c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7792 # R-Car V2H 35c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7793 # R-Car M2-N 36c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7794 # R-Car E2 37c66ec88fSEmmanuel Vadot - const: renesas,rcar-gen2-hscif # R-Car Gen2 and RZ/G1 38c66ec88fSEmmanuel Vadot - const: renesas,hscif # generic HSCIF compatible UART 39c66ec88fSEmmanuel Vadot 40c66ec88fSEmmanuel Vadot - items: 41c66ec88fSEmmanuel Vadot - enum: 42c66ec88fSEmmanuel Vadot - renesas,hscif-r8a774a1 # RZ/G2M 43c66ec88fSEmmanuel Vadot - renesas,hscif-r8a774b1 # RZ/G2N 44c66ec88fSEmmanuel Vadot - renesas,hscif-r8a774c0 # RZ/G2E 456be33864SEmmanuel Vadot - renesas,hscif-r8a774e1 # RZ/G2H 46c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7795 # R-Car H3 47c66ec88fSEmmanuel Vadot - renesas,hscif-r8a7796 # R-Car M3-W 48c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77961 # R-Car M3-W+ 49c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77965 # R-Car M3-N 50c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77970 # R-Car V3M 51c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77980 # R-Car V3H 52c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77990 # R-Car E3 53c66ec88fSEmmanuel Vadot - renesas,hscif-r8a77995 # R-Car D3 54c66ec88fSEmmanuel Vadot - const: renesas,rcar-gen3-hscif # R-Car Gen3 and RZ/G2 55c66ec88fSEmmanuel Vadot - const: renesas,hscif # generic HSCIF compatible UART 56c66ec88fSEmmanuel Vadot 57d5b0e70fSEmmanuel Vadot - items: 58d5b0e70fSEmmanuel Vadot - enum: 59d5b0e70fSEmmanuel Vadot - renesas,hscif-r8a779a0 # R-Car V3U 60b97ee269SEmmanuel Vadot - renesas,hscif-r8a779f0 # R-Car S4-8 61d5b0e70fSEmmanuel Vadot - renesas,hscif-r8a779g0 # R-Car V4H 62*01950c46SEmmanuel Vadot - renesas,hscif-r8a779h0 # R-Car V4M 63d5b0e70fSEmmanuel Vadot - const: renesas,rcar-gen4-hscif # R-Car Gen4 64d5b0e70fSEmmanuel Vadot - const: renesas,hscif # generic HSCIF compatible UART 65d5b0e70fSEmmanuel Vadot 66c66ec88fSEmmanuel Vadot reg: 67c66ec88fSEmmanuel Vadot maxItems: 1 68c66ec88fSEmmanuel Vadot 69c66ec88fSEmmanuel Vadot interrupts: 70c66ec88fSEmmanuel Vadot maxItems: 1 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot clocks: 73c66ec88fSEmmanuel Vadot minItems: 1 74c66ec88fSEmmanuel Vadot maxItems: 4 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel Vadot clock-names: 77c66ec88fSEmmanuel Vadot minItems: 1 78c66ec88fSEmmanuel Vadot maxItems: 4 79c66ec88fSEmmanuel Vadot items: 80c66ec88fSEmmanuel Vadot enum: 81c66ec88fSEmmanuel Vadot - fck # UART functional clock 82c66ec88fSEmmanuel Vadot - hsck # optional external clock input 83c66ec88fSEmmanuel Vadot - brg_int # optional internal clock source for BRG frequency divider 84c66ec88fSEmmanuel Vadot - scif_clk # optional external clock source for BRG frequency divider 85c66ec88fSEmmanuel Vadot 86c66ec88fSEmmanuel Vadot power-domains: 87c66ec88fSEmmanuel Vadot maxItems: 1 88c66ec88fSEmmanuel Vadot 89c66ec88fSEmmanuel Vadot resets: 90c66ec88fSEmmanuel Vadot maxItems: 1 91c66ec88fSEmmanuel Vadot 92c66ec88fSEmmanuel Vadot dmas: 935def4c47SEmmanuel Vadot minItems: 2 945def4c47SEmmanuel Vadot maxItems: 4 95c66ec88fSEmmanuel Vadot description: 96c66ec88fSEmmanuel Vadot Must contain a list of pairs of references to DMA specifiers, one for 97c66ec88fSEmmanuel Vadot transmission, and one for reception. 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadot dma-names: 100c66ec88fSEmmanuel Vadot minItems: 2 101c66ec88fSEmmanuel Vadot maxItems: 4 102c66ec88fSEmmanuel Vadot items: 103c66ec88fSEmmanuel Vadot enum: 104c66ec88fSEmmanuel Vadot - tx 105c66ec88fSEmmanuel Vadot - rx 106c66ec88fSEmmanuel Vadot 107c66ec88fSEmmanuel Vadotrequired: 108c66ec88fSEmmanuel Vadot - compatible 109c66ec88fSEmmanuel Vadot - reg 110c66ec88fSEmmanuel Vadot - interrupts 111c66ec88fSEmmanuel Vadot - clocks 112c66ec88fSEmmanuel Vadot - clock-names 113c66ec88fSEmmanuel Vadot - power-domains 114c66ec88fSEmmanuel Vadot 115c66ec88fSEmmanuel Vadotif: 116c66ec88fSEmmanuel Vadot properties: 117c66ec88fSEmmanuel Vadot compatible: 118c66ec88fSEmmanuel Vadot contains: 119c66ec88fSEmmanuel Vadot enum: 120c66ec88fSEmmanuel Vadot - renesas,rcar-gen2-hscif 121c66ec88fSEmmanuel Vadot - renesas,rcar-gen3-hscif 122d5b0e70fSEmmanuel Vadot - renesas,rcar-gen4-hscif 123c66ec88fSEmmanuel Vadotthen: 124c66ec88fSEmmanuel Vadot required: 125c66ec88fSEmmanuel Vadot - resets 126c66ec88fSEmmanuel Vadot 12784943d6fSEmmanuel VadotunevaluatedProperties: false 12884943d6fSEmmanuel Vadot 129c66ec88fSEmmanuel Vadotexamples: 130c66ec88fSEmmanuel Vadot - | 131c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/r8a7795-cpg-mssr.h> 132c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 133c66ec88fSEmmanuel Vadot #include <dt-bindings/power/r8a7795-sysc.h> 134c66ec88fSEmmanuel Vadot aliases { 135c66ec88fSEmmanuel Vadot serial1 = &hscif1; 136c66ec88fSEmmanuel Vadot }; 137c66ec88fSEmmanuel Vadot 138c66ec88fSEmmanuel Vadot hscif1: serial@e6550000 { 139c66ec88fSEmmanuel Vadot compatible = "renesas,hscif-r8a7795", "renesas,rcar-gen3-hscif", 140c66ec88fSEmmanuel Vadot "renesas,hscif"; 141c66ec88fSEmmanuel Vadot reg = <0xe6550000 96>; 142c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 143c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 519>, <&cpg CPG_CORE R8A7795_CLK_S3D1>, 144c66ec88fSEmmanuel Vadot <&scif_clk>; 145c66ec88fSEmmanuel Vadot clock-names = "fck", "brg_int", "scif_clk"; 146c66ec88fSEmmanuel Vadot dmas = <&dmac1 0x33>, <&dmac1 0x32>, <&dmac2 0x33>, <&dmac2 0x32>; 147c66ec88fSEmmanuel Vadot dma-names = "tx", "rx", "tx", "rx"; 148c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 149c66ec88fSEmmanuel Vadot resets = <&cpg 519>; 150c66ec88fSEmmanuel Vadot uart-has-rtscts; 151c66ec88fSEmmanuel Vadot }; 152