-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: Add support for the Broadcom UART driver
Add DT bindings for the Broadcom 8250 based UART driver. This UART is based on an 8250 but adds additional functionality. The additional features include the ability to use DMA for transfers and a baud rate clock system that is more accurate at high baud rates. This UART is backward compatible with the standard 8250 UART. Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Al Cooper <alcooperx@gmail.com> Link: https://lore.kernel.org/r/20210325185256.16156-2-alcooperx@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
- Loading branch information
Al Cooper
authored and
Greg Kroah-Hartman
committed
Mar 26, 2021
1 parent
22fce66
commit 88a499c
Showing
1 changed file
with
95 additions
and
0 deletions.
There are no files selected for viewing
95 changes: 95 additions & 0 deletions
95
Documentation/devicetree/bindings/serial/brcm,bcm7271-uart.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/serial/brcm,bcm7271-uart.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Broadcom 8250 based serial port devicetree bindings | ||
|
||
maintainers: | ||
- Al Cooper <alcooperx@gmail.com> | ||
|
||
allOf: | ||
- $ref: /schemas/serial.yaml# | ||
|
||
description: |+ | ||
The Broadcom UART is based on the basic 8250 UART but with | ||
enhancements for more accurate high speed baud rates and support | ||
for DMA. | ||
properties: | ||
compatible: | ||
items: | ||
- enum: | ||
- brcm,bcm7271-uart | ||
- brcm,bcm7278-uart | ||
|
||
reg: | ||
minItems: 1 | ||
maxItems: 5 | ||
|
||
reg-names: | ||
description: The UART register block and optionally the DMA register blocks. | ||
oneOf: | ||
- items: | ||
- const: uart | ||
- items: | ||
- const: uart | ||
- const: dma_arb | ||
- const: dma_rx | ||
- const: dma_tx | ||
- const: dma_intr2 | ||
|
||
clocks: | ||
minItems: 1 | ||
|
||
clock-names: | ||
const: sw_baud | ||
|
||
interrupts: | ||
minItems: 1 | ||
maxItems: 2 | ||
|
||
interrupt-names: | ||
description: The UART interrupt and optionally the DMA interrupt. | ||
minItems: 1 | ||
items: | ||
- const: uart | ||
- const: dma | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- reg-names | ||
- clocks | ||
- clock-names | ||
- interrupts | ||
- interrupt-names | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
serial@840d000 { | ||
compatible = "brcm,bcm7271-uart"; | ||
reg = <0x840d000 0x20>; | ||
reg-names = "uart"; | ||
interrupts = <0x0 0x62 0x4>; | ||
interrupt-names = "uart"; | ||
clocks = <&scmi_clk 190>; | ||
clock-names = "sw_baud"; | ||
}; | ||
serial@840e000 { | ||
compatible = "brcm,bcm7271-uart"; | ||
reg = <0x840e000 0x20>, | ||
<0x840e080 0x8>, | ||
<0x840e100 0xa8>, | ||
<0x840e200 0x4c>, | ||
<0x840e300 0x30>; | ||
reg-names = "uart", "dma_arb", "dma_rx", "dma_tx", "dma_intr2"; | ||
interrupts = <0x0 0x62 0x4>, <0x0 0x75 0x4>; | ||
interrupt-names = "uart", "dma"; | ||
clocks = <&scmi_clk 190>; | ||
clock-names = "sw_baud"; | ||
}; |