forked from ChimeraOS/linux
-
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.
drm/etnaviv: add devicetree bindings
Etnaviv follows the same priciple as imx-drm to have a virtual master device node to bind all the individual GPU cores together into one DRM device. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Acked-by: Rob Herring <robh@kernel.org>
- Loading branch information
1 parent
a6351c6
commit f04b205
Showing
1 changed file
with
54 additions
and
0 deletions.
There are no files selected for viewing
54 changes: 54 additions & 0 deletions
54
Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt
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,54 @@ | ||
Etnaviv DRM master device | ||
========================= | ||
|
||
The Etnaviv DRM master device is a virtual device needed to list all | ||
Vivante GPU cores that comprise the GPU subsystem. | ||
|
||
Required properties: | ||
- compatible: Should be one of | ||
"fsl,imx-gpu-subsystem" | ||
"marvell,dove-gpu-subsystem" | ||
- cores: Should contain a list of phandles pointing to Vivante GPU devices | ||
|
||
example: | ||
|
||
gpu-subsystem { | ||
compatible = "fsl,imx-gpu-subsystem"; | ||
cores = <&gpu_2d>, <&gpu_3d>; | ||
}; | ||
|
||
|
||
Vivante GPU core devices | ||
======================== | ||
|
||
Required properties: | ||
- compatible: Should be "vivante,gc" | ||
A more specific compatible is not needed, as the cores contain chip | ||
identification registers at fixed locations, which provide all the | ||
necessary information to the driver. | ||
- reg: should be register base and length as documented in the | ||
datasheet | ||
- interrupts: Should contain the cores interrupt line | ||
- clocks: should contain one clock for entry in clock-names | ||
see Documentation/devicetree/bindings/clock/clock-bindings.txt | ||
- clock-names: | ||
- "bus": AXI/register clock | ||
- "core": GPU core clock | ||
- "shader": Shader clock (only required if GPU has feature PIPE_3D) | ||
|
||
Optional properties: | ||
- power-domains: a power domain consumer specifier according to | ||
Documentation/devicetree/bindings/power/power_domain.txt | ||
|
||
example: | ||
|
||
gpu_3d: gpu@00130000 { | ||
compatible = "vivante,gc"; | ||
reg = <0x00130000 0x4000>; | ||
interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>; | ||
clocks = <&clks IMX6QDL_CLK_GPU3D_AXI>, | ||
<&clks IMX6QDL_CLK_GPU3D_CORE>, | ||
<&clks IMX6QDL_CLK_GPU3D_SHADER>; | ||
clock-names = "bus", "core", "shader"; | ||
power-domains = <&gpc 1>; | ||
}; |