mirror of
https://github.com/torvalds/linux.git
synced 2026-04-24 09:35:52 -04:00
Pull devicetree updates from Rob Herring:
"DT core:
- Add node lifecycle unit tests
- Add of_property_present() helper aligned with fwnode API
- Print more information on reserved regions on boot
- Update dtc to upstream v1.6.1-66-gabbd523bae6e
- Use strscpy() to instead of strncpy() in DT core
- Add option for schema validation on %.dtb targets
Bindings:
- Add/fix support for listing multiple patterns in DT_SCHEMA_FILES
- Rework external memory controller/bus bindings to properly support
controller specific child node properties
- Convert loongson,ls1x-intc, fcs,fusb302, sil,sii8620, Rockchip
RK3399 PCIe, Synquacer I2C, and Synquacer EXIU bindings to DT
schema format
- Add RiscV SBI PMU event mapping binding
- Add missing contraints on Arm SCMI child node allowed properties
- Add a bunch of missing Socionext UniPhier glue block bindings and
example fixes
- Various fixes for duplicate or conflicting type definitions on DT
properties"
* tag 'devicetree-for-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (66 commits)
dt-bindings: regulator: Add mps,mpq7932 power-management IC
of: dynamic: Fix spelling mistake "kojbect" -> "kobject"
dt-bindings: drop Sagar Kadam from SiFive binding maintainership
dt-bindings: sram: qcom,imem: document sm8450
dt-bindings: interrupt-controller: convert loongson,ls1x-intc.txt to json-schema
dt-bindings: arm: Add Cortex-A715 and X3
of: dynamic: add lifecycle docbook info to node creation functions
of: add consistency check to of_node_release()
of: do not use "%pOF" printk format on node with refcount of zero
of: unittest: add node lifecycle tests
of: update kconfig unittest help
of: add processing of EXPECT_NOT to of_unittest_expect
of: prepare to add processing of EXPECT_NOT to of_unittest_expect
of: Use preferred of_property_read_* functions
of: Use of_property_present() helper
of: Add of_property_present() helper
of: reserved_mem: Use proper binary prefix
dt-bindings: Fix multi pattern support in DT_SCHEMA_FILES
of: reserved-mem: print out reserved-mem details during boot
dt-bindings: serial: restrict possible child node names
...
154 lines
4.4 KiB
YAML
154 lines
4.4 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: "http://devicetree.org/schemas/serial/serial.yaml#"
|
|
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
|
|
|
title: Serial Interface Generic
|
|
|
|
maintainers:
|
|
- Rob Herring <robh@kernel.org>
|
|
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
|
|
description:
|
|
This document lists a set of generic properties for describing UARTs in a
|
|
device tree. Whether these properties apply to a particular device depends
|
|
on the DT bindings for the actual device.
|
|
|
|
Each enabled UART may have an optional "serialN" alias in the "aliases" node,
|
|
where N is the port number (non-negative decimal integer) as printed on the
|
|
label next to the physical port.
|
|
|
|
properties:
|
|
$nodename:
|
|
pattern: "^serial(@.*)?$"
|
|
|
|
label: true
|
|
|
|
cts-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's CTS line.
|
|
|
|
dcd-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's DCD line.
|
|
|
|
dsr-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's DSR line.
|
|
|
|
dtr-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's DTR line.
|
|
|
|
rng-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's RNG line.
|
|
|
|
rts-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Must contain a GPIO specifier, referring to the GPIO pin to be used as
|
|
the UART's RTS line.
|
|
|
|
uart-has-rtscts:
|
|
$ref: /schemas/types.yaml#/definitions/flag
|
|
description:
|
|
The presence of this property indicates that the UART has dedicated lines
|
|
for RTS/CTS hardware flow control, and that they are available for use
|
|
(wired and enabled by pinmux configuration). This depends on both the
|
|
UART hardware and the board wiring.
|
|
|
|
rx-tx-swap:
|
|
type: boolean
|
|
description: RX and TX pins are swapped.
|
|
|
|
cts-rts-swap:
|
|
type: boolean
|
|
description: CTS and RTS pins are swapped.
|
|
|
|
rx-threshold:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
RX FIFO threshold configuration (in bytes).
|
|
|
|
tx-threshold:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
TX FIFO threshold configuration (in bytes).
|
|
|
|
if:
|
|
required:
|
|
- uart-has-rtscts
|
|
then:
|
|
properties:
|
|
cts-gpios: false
|
|
rts-gpios: false
|
|
|
|
patternProperties:
|
|
"^bluetooth|gnss|gps|mcu$":
|
|
if:
|
|
type: object
|
|
then:
|
|
description:
|
|
Serial attached devices shall be a child node of the host UART device
|
|
the slave device is attached to. It is expected that the attached
|
|
device is the only child node of the UART device. The slave device node
|
|
name shall reflect the generic type of device for the node.
|
|
|
|
properties:
|
|
compatible:
|
|
description:
|
|
Compatible of the device connected to the serial port.
|
|
|
|
max-speed:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description:
|
|
The maximum baud rate the device operates at.
|
|
This should only be present if the maximum is less than the slave
|
|
device can support. For example, a particular board has some
|
|
signal quality issue or the host processor can't support higher
|
|
baud rates.
|
|
|
|
current-speed:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description: |
|
|
The current baud rate the device operates at.
|
|
This should only be present in case a driver has no chance to know
|
|
the baud rate of the slave device.
|
|
Examples:
|
|
* device supports auto-baud
|
|
* the rate is setup by a bootloader and there is no way to reset
|
|
the device
|
|
* device baud rate is configured by its firmware but there is no
|
|
way to request the actual settings
|
|
|
|
required:
|
|
- compatible
|
|
|
|
additionalProperties: true
|
|
|
|
examples:
|
|
- |
|
|
serial@1234 {
|
|
compatible = "ns16550a";
|
|
reg = <0x1234 0x20>;
|
|
interrupts = <1>;
|
|
|
|
bluetooth {
|
|
compatible = "brcm,bcm4330-bt";
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <10>;
|
|
};
|
|
};
|