dt-bindings: serial: Move omap-serial.txt to YAML schema

Convert serial-omap.txt to YAML schema for better checks and documentation.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Link: https://lore.kernel.org/r/20210610182227.2480-1-vigneshr@ti.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Vignesh Raghavendra 2021-06-10 23:52:27 +05:30 committed by Greg Kroah-Hartman
parent 6cbe45d8ac
commit 1882441cd7
2 changed files with 118 additions and 40 deletions

View File

@ -0,0 +1,118 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/serial/8250_omap.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Bindings for 8250 compliant UARTs on TI's OMAP2+ and K3 SoCs
maintainers:
- Vignesh Raghavendra <vigneshr@ti.com>
allOf:
- $ref: /schemas/serial/serial.yaml#
- $ref: /schemas/serial/rs485.yaml#
properties:
compatible:
oneOf:
- enum:
- ti,am3352-uart
- ti,am4372-uart
- ti,am654-uart
- ti,dra742-uart
- ti,omap2-uart
- ti,omap3-uart
- ti,omap4-uart
- items:
- enum:
- ti,am64-uart
- ti,j721e-uart
- const: ti,am654-uart
ti,hwmods:
description:
Must be "uart<n>", n being the instance number (1-based)
This property is applicable only on legacy platforms mainly omap2/3
and ti81xx and should not be used on other platforms.
$ref: /schemas/types.yaml#/definitions/string
deprecated: true
dmas:
minItems: 1
maxItems: 2
dma-names:
items:
- const: tx
- const: rx
reg:
maxItems: 1
interrupts:
minItems: 1
maxItems: 2
description:
First entry is module IRQ required for normal IO operation.
Second entry is optional and corresponds to system wakeup IRQ
where supported.
clocks:
maxItems: 1
clock-names:
const: fclk
rts-gpios: true
cts-gpios: true
dtr-gpios: true
dsr-gpios: true
rng-gpios: true
dcd-gpios: true
rs485-rts-delay: true
rs485-rts-active-low: true
rs485-rx-during-tx: true
rs485-rts-active-high: true
linux,rs485-enabled-at-boot-time: true
rts-gpio: true
power-domains: true
clock-frequency: true
current-speed: true
required:
- compatible
- reg
- interrupts
additionalProperties: false
if:
properties:
compatible:
oneOf:
- const: ti,omap2-uart
- const: ti,omap3-uart
- const: ti,omap4-uart
then:
properties:
ti,hwmods:
items:
- pattern: "^uart([1-9])$"
else:
properties:
ti,hwmods: false
examples:
- |
serial@49042000 {
compatible = "ti,omap3-uart";
reg = <0x49042000 0x400>;
interrupts = <80>;
dmas = <&sdma 81 &sdma 82>;
dma-names = "tx", "rx";
ti,hwmods = "uart4";
clock-frequency = <48000000>;
};

View File

@ -1,40 +0,0 @@
OMAP UART controller
Required properties:
- compatible : should be "ti,am64-uart", "ti,am654-uart" for AM64 controllers
- compatible : should be "ti,j721e-uart", "ti,am654-uart" for J721E controllers
- compatible : should be "ti,am654-uart" for AM654 controllers
- compatible : should be "ti,omap2-uart" for OMAP2 controllers
- compatible : should be "ti,omap3-uart" for OMAP3 controllers
- compatible : should be "ti,omap4-uart" for OMAP4 controllers
- compatible : should be "ti,am4372-uart" for AM437x controllers
- compatible : should be "ti,am3352-uart" for AM335x controllers
- compatible : should be "ti,dra742-uart" for DRA7x controllers
- reg : address and length of the register space
- interrupts or interrupts-extended : Should contain the uart interrupt
specifier or both the interrupt
controller phandle and interrupt
specifier.
- ti,hwmods : Must be "uart<n>", n being the instance number (1-based)
Optional properties:
- clock-frequency : frequency of the clock input to the UART
- dmas : DMA specifier, consisting of a phandle to the DMA controller
node and a DMA channel number.
- dma-names : "rx" for receive channel, "tx" for transmit channel.
- rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see rs485.txt
- rs485-rts-active-high: drive RTS high when sending (default is low).
- clocks: phandle to the functional clock as per
Documentation/devicetree/bindings/clock/clock-bindings.txt
Example:
uart4: serial@49042000 {
compatible = "ti,omap3-uart";
reg = <0x49042000 0x400>;
interrupts = <80>;
dmas = <&sdma 81 &sdma 82>;
dma-names = "tx", "rx";
ti,hwmods = "uart4";
clock-frequency = <48000000>;
};