[PATCH 02/12] drm/etnaviv: add devicetree bindings
Rob Herring
robh at kernel.org
Fri Dec 4 08:29:56 PST 2015
On Fri, Dec 04, 2015 at 02:59:54PM +0100, Lucas Stach wrote:
> 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 at pengutronix.de>
> ---
> .../bindings/display/etnaviv/etnaviv-drm.txt | 46 ++++++++++++++++++++++
> 1 file changed, 46 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt
>
> diff --git a/Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt b/Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt
> new file mode 100644
> index 000000000000..19fde29dc1d7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt
> @@ -0,0 +1,46 @@
> +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>;
> +};
Yeah, I'm not really a fan of doing this simply because DRM wants 1
driver.
> +
> +
> +Vivante GPU core devices
> +====================
> +
> +Required properties:
> +- compatible: Should be "vivante,gc"
This should at least have the specific cores listed like gc-5000 or
whatever the numbering is. As is, I can't even tell if this a 2d or 3d
core.
Also, it probably should have an SOC specific property to deal with SOC
specific configuration or integration.
> +- 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)
> +
> +example:
> +
> +gpu_3d: gpu at 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";
> +};
> --
> 2.6.2
>
More information about the dri-devel
mailing list