dt-bindings: serial: Convert slave-device bindings to json-schema

Convert the serial slave-device Device Tree binding documentation to
json-schema, and incorporate it into the generic serial bindings.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
Geert Uytterhoeven 2020-03-06 10:00:46 +01:00 committed by Rob Herring
parent 175a7427bb
commit 32ced09d79
8 changed files with 62 additions and 52 deletions

View File

@ -8,7 +8,7 @@ bus (e.g. UART, I2C or SPI).
Please refer to the following documents for generic properties:
Documentation/devicetree/bindings/serial/slave-device.txt
Documentation/devicetree/bindings/serial/serial.yaml
Documentation/devicetree/bindings/spi/spi-bus.txt
Required properties:

View File

@ -20,7 +20,7 @@ Required properties:
Optional properties:
- max-speed: see Documentation/devicetree/bindings/serial/slave-device.txt
- max-speed: see Documentation/devicetree/bindings/serial/serial.yaml
- shutdown-gpios: GPIO specifier, used to enable the BT module
- device-wakeup-gpios: GPIO specifier, used to wakeup the controller
- host-wakeup-gpios: GPIO specifier, used to wakeup the host processor.

View File

@ -42,7 +42,7 @@ child node of the serial node with UART.
Please refer to the following documents for generic properties:
Documentation/devicetree/bindings/serial/slave-device.txt
Documentation/devicetree/bindings/serial/serial.yaml
Required properties:

View File

@ -68,7 +68,7 @@ Required properties:
Optional properties:
- local-mac-address : see ./ethernet.txt
- current-speed : current baud rate of QCA7000 which defaults to 115200
if absent, see also ../serial/slave-device.txt
if absent, see also ../serial/serial.yaml
UART Example:

View File

@ -15,8 +15,7 @@ standard BT HCI protocol with additional channels for the other functions.
TI WiLink devices also have a separate WiFi interface as described in
wireless/ti,wlcore.txt.
This bindings follows the UART slave device binding in
../serial/slave-device.txt.
This bindings follows the UART slave device binding in ../serial/serial.yaml.
Required properties:
- compatible: should be one of the following:

View File

@ -7,6 +7,7 @@ $schema: "http://devicetree.org/meta-schemas/core.yaml#"
title: Serial Interface Generic DT Bindings
maintainers:
- Rob Herring <robh@kernel.org>
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>
description:
@ -69,3 +70,58 @@ then:
properties:
cts-gpios: false
rts-gpios: false
patternProperties:
".*":
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
examples:
- |
serial@1234 {
compatible = "ns16550a";
reg = <0x1234 0x20>;
interrupts = <1>;
bluetooth {
compatible = "brcm,bcm43341-bt";
interrupt-parent = <&gpio>;
interrupts = <10>;
};
};

View File

@ -1,45 +0,0 @@
Serial Slave Device DT binding
This documents the binding structure and common properties for serial
attached devices. Common examples include Bluetooth, WiFi, NFC and GPS
devices.
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.
Required Properties:
- compatible : A string reflecting the vendor and specific device the node
represents.
Optional Properties:
- max-speed : 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 : 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
Example:
serial@1234 {
compatible = "ns16550a";
interrupts = <1>;
bluetooth {
compatible = "brcm,bcm43341-bt";
interrupt-parent = <&gpio>;
interrupts = <10>;
};
};

View File

@ -15001,7 +15001,7 @@ SERIAL DEVICE BUS
M: Rob Herring <robh@kernel.org>
L: linux-serial@vger.kernel.org
S: Maintained
F: Documentation/devicetree/bindings/serial/slave-device.txt
F: Documentation/devicetree/bindings/serial/serial.yaml
F: drivers/tty/serdev/
F: include/linux/serdev.h