mirror of
https://github.com/torvalds/linux.git
synced 2024-12-29 06:12:08 +00:00
f5a98bfe7b
The Allwinner SoCs have a display engine composed of several controllers assembled differently depending on the SoC, the number and type of output they have, and the additional features they provide. A number of those are supported in Linux, with the matching bindings. Now that we have the DT validation in place, let's split into separate file and convert the device tree bindings for those controllers to schemas. Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Maxime Ripard <maxime@cerno.tech> Link: https://patchwork.freedesktop.org/patch/msgid/20200103152801.47254-1-maxime@cerno.tech
134 lines
2.9 KiB
YAML
134 lines
2.9 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/display/allwinner,sun9i-a80-deu.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Allwinner A80 Detail Enhancement Unit Device Tree Bindings
|
|
|
|
maintainers:
|
|
- Chen-Yu Tsai <wens@csie.org>
|
|
- Maxime Ripard <mripard@kernel.org>
|
|
|
|
description: |
|
|
The DEU (Detail Enhancement Unit), found in the Allwinner A80 SoC,
|
|
can sharpen the display content in both luma and chroma channels.
|
|
|
|
properties:
|
|
compatible:
|
|
const: allwinner,sun9i-a80-deu
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
items:
|
|
- description: The DEU interface clock
|
|
- description: The DEU module clock
|
|
- description: The DEU DRAM clock
|
|
|
|
clock-names:
|
|
items:
|
|
- const: ahb
|
|
- const: mod
|
|
- const: ram
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
ports:
|
|
type: object
|
|
description: |
|
|
A ports node with endpoint definitions as defined in
|
|
Documentation/devicetree/bindings/media/video-interfaces.txt.
|
|
|
|
properties:
|
|
"#address-cells":
|
|
const: 1
|
|
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
port@0:
|
|
type: object
|
|
description: |
|
|
Input endpoints of the controller.
|
|
|
|
port@1:
|
|
type: object
|
|
description: |
|
|
Output endpoints of the controller.
|
|
|
|
required:
|
|
- "#address-cells"
|
|
- "#size-cells"
|
|
- port@0
|
|
- port@1
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- clocks
|
|
- clock-names
|
|
- resets
|
|
- ports
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
|
|
#include <dt-bindings/clock/sun9i-a80-de.h>
|
|
#include <dt-bindings/reset/sun9i-a80-de.h>
|
|
|
|
deu0: deu@3300000 {
|
|
compatible = "allwinner,sun9i-a80-deu";
|
|
reg = <0x03300000 0x40000>;
|
|
interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&de_clocks CLK_BUS_DEU0>,
|
|
<&de_clocks CLK_IEP_DEU0>,
|
|
<&de_clocks CLK_DRAM_DEU0>;
|
|
clock-names = "ahb",
|
|
"mod",
|
|
"ram";
|
|
resets = <&de_clocks RST_DEU0>;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
deu0_in: port@0 {
|
|
reg = <0>;
|
|
|
|
deu0_in_fe0: endpoint {
|
|
remote-endpoint = <&fe0_out_deu0>;
|
|
};
|
|
};
|
|
|
|
deu0_out: port@1 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>;
|
|
|
|
deu0_out_be0: endpoint@0 {
|
|
reg = <0>;
|
|
remote-endpoint = <&be0_in_deu0>;
|
|
};
|
|
|
|
deu0_out_be1: endpoint@1 {
|
|
reg = <1>;
|
|
remote-endpoint = <&be1_in_deu0>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|