16a24490fSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0 26a24490fSKrzysztof Kozlowski%YAML 1.2 36a24490fSKrzysztof Kozlowski--- 46a24490fSKrzysztof Kozlowski$id: http://devicetree.org/schemas/serial/samsung_uart.yaml# 56a24490fSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml# 66a24490fSKrzysztof Kozlowski 76a24490fSKrzysztof Kozlowskititle: Samsung S3C, S5P and Exynos SoC UART Controller 86a24490fSKrzysztof Kozlowski 96a24490fSKrzysztof Kozlowskimaintainers: 106a24490fSKrzysztof Kozlowski - Krzysztof Kozlowski <krzk@kernel.org> 116a24490fSKrzysztof Kozlowski - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 126a24490fSKrzysztof Kozlowski 136a24490fSKrzysztof Kozlowskidescription: |+ 146a24490fSKrzysztof Kozlowski Each Samsung UART should have an alias correctly numbered in the "aliases" 156a24490fSKrzysztof Kozlowski node, according to serialN format, where N is the port number (non-negative 166a24490fSKrzysztof Kozlowski decimal integer) as specified by User's Manual of respective SoC. 176a24490fSKrzysztof Kozlowski 186a24490fSKrzysztof Kozlowskiproperties: 196a24490fSKrzysztof Kozlowski compatible: 206a24490fSKrzysztof Kozlowski items: 216a24490fSKrzysztof Kozlowski - enum: 226a24490fSKrzysztof Kozlowski - samsung,s3c2410-uart 236a24490fSKrzysztof Kozlowski - samsung,s3c2412-uart 246a24490fSKrzysztof Kozlowski - samsung,s3c2440-uart 256a24490fSKrzysztof Kozlowski - samsung,s3c6400-uart 266a24490fSKrzysztof Kozlowski - samsung,s5pv210-uart 276a24490fSKrzysztof Kozlowski - samsung,exynos4210-uart 286a24490fSKrzysztof Kozlowski 296a24490fSKrzysztof Kozlowski reg: 306a24490fSKrzysztof Kozlowski maxItems: 1 316a24490fSKrzysztof Kozlowski 326a24490fSKrzysztof Kozlowski clocks: 336a24490fSKrzysztof Kozlowski minItems: 2 346a24490fSKrzysztof Kozlowski maxItems: 5 356a24490fSKrzysztof Kozlowski 366a24490fSKrzysztof Kozlowski clock-names: 376a24490fSKrzysztof Kozlowski description: N = 0 is allowed for SoCs without internal baud clock mux. 386a24490fSKrzysztof Kozlowski minItems: 2 396a24490fSKrzysztof Kozlowski maxItems: 5 406a24490fSKrzysztof Kozlowski items: 416a24490fSKrzysztof Kozlowski - const: uart 426a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-3]$' 436a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-3]$' 446a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-3]$' 456a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-3]$' 466a24490fSKrzysztof Kozlowski 476a24490fSKrzysztof Kozlowski interrupts: 486a24490fSKrzysztof Kozlowski description: RX interrupt and optionally TX interrupt. 496a24490fSKrzysztof Kozlowski minItems: 1 506a24490fSKrzysztof Kozlowski maxItems: 2 516a24490fSKrzysztof Kozlowski 526a24490fSKrzysztof Kozlowski samsung,uart-fifosize: 536a24490fSKrzysztof Kozlowski description: The fifo size supported by the UART channel. 543d21a460SRob Herring $ref: /schemas/types.yaml#/definitions/uint32 553d21a460SRob Herring enum: [16, 64, 256] 566a24490fSKrzysztof Kozlowski 576a24490fSKrzysztof Kozlowskirequired: 586a24490fSKrzysztof Kozlowski - compatible 596a24490fSKrzysztof Kozlowski - clocks 606a24490fSKrzysztof Kozlowski - clock-names 616a24490fSKrzysztof Kozlowski - interrupts 626a24490fSKrzysztof Kozlowski - reg 636a24490fSKrzysztof Kozlowski 646a24490fSKrzysztof KozlowskiallOf: 656a24490fSKrzysztof Kozlowski - if: 666a24490fSKrzysztof Kozlowski properties: 676a24490fSKrzysztof Kozlowski compatible: 686a24490fSKrzysztof Kozlowski contains: 696a24490fSKrzysztof Kozlowski enum: 706a24490fSKrzysztof Kozlowski - samsung,s3c2410-uart 716a24490fSKrzysztof Kozlowski - samsung,s5pv210-uart 726a24490fSKrzysztof Kozlowski then: 736a24490fSKrzysztof Kozlowski properties: 746a24490fSKrzysztof Kozlowski clocks: 756a24490fSKrzysztof Kozlowski minItems: 2 766a24490fSKrzysztof Kozlowski maxItems: 3 776a24490fSKrzysztof Kozlowski clock-names: 786a24490fSKrzysztof Kozlowski minItems: 2 796a24490fSKrzysztof Kozlowski maxItems: 3 806a24490fSKrzysztof Kozlowski items: 816a24490fSKrzysztof Kozlowski - const: uart 826a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-1]$' 836a24490fSKrzysztof Kozlowski - pattern: '^clk_uart_baud[0-1]$' 846a24490fSKrzysztof Kozlowski 856a24490fSKrzysztof Kozlowski - if: 866a24490fSKrzysztof Kozlowski properties: 876a24490fSKrzysztof Kozlowski compatible: 886a24490fSKrzysztof Kozlowski contains: 896a24490fSKrzysztof Kozlowski enum: 906a24490fSKrzysztof Kozlowski - samsung,exynos4210-uart 916a24490fSKrzysztof Kozlowski then: 926a24490fSKrzysztof Kozlowski properties: 936a24490fSKrzysztof Kozlowski clocks: 946a24490fSKrzysztof Kozlowski minItems: 2 956a24490fSKrzysztof Kozlowski maxItems: 2 966a24490fSKrzysztof Kozlowski clock-names: 976a24490fSKrzysztof Kozlowski minItems: 2 986a24490fSKrzysztof Kozlowski maxItems: 2 996a24490fSKrzysztof Kozlowski items: 1006a24490fSKrzysztof Kozlowski - const: uart 1016a24490fSKrzysztof Kozlowski - const: clk_uart_baud0 1026a24490fSKrzysztof Kozlowski 1036a24490fSKrzysztof Kozlowskiexamples: 1046a24490fSKrzysztof Kozlowski - | 1056a24490fSKrzysztof Kozlowski #include <dt-bindings/clock/samsung,s3c64xx-clock.h> 1066a24490fSKrzysztof Kozlowski 1076a24490fSKrzysztof Kozlowski uart0: serial@7f005000 { 1086a24490fSKrzysztof Kozlowski compatible = "samsung,s3c6400-uart"; 1096a24490fSKrzysztof Kozlowski reg = <0x7f005000 0x100>; 1106a24490fSKrzysztof Kozlowski interrupt-parent = <&vic1>; 1116a24490fSKrzysztof Kozlowski interrupts = <5>; 1126a24490fSKrzysztof Kozlowski clock-names = "uart", "clk_uart_baud2", 1136a24490fSKrzysztof Kozlowski "clk_uart_baud3"; 1146a24490fSKrzysztof Kozlowski clocks = <&clocks PCLK_UART0>, <&clocks PCLK_UART0>, 1156a24490fSKrzysztof Kozlowski <&clocks SCLK_UART>; 1166a24490fSKrzysztof Kozlowski samsung,uart-fifosize = <16>; 1176a24490fSKrzysztof Kozlowski }; 118