Commit 90aeca87 authored by Benjamin Gaignard's avatar Benjamin Gaignard Committed by Rob Herring
Browse files

dt-bindings: display: Convert etnaviv to json-schema



Convert etnaviv bindings to yaml format.
Move bindings file from display to gpu folder.

Signed-off-by: default avatarBenjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent c03b4012
Loading
Loading
Loading
Loading
+0 −36
Original line number Diff line number Diff line
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/master interface clock
   - "reg":    AHB/slave interface clock
               (only required if GPU can gate slave interface independently)
   - "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@130000 {
	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>;
};
+69 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/gpu/vivante,gc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Vivante GPU Bindings

description: Vivante GPU core devices

maintainers:
  -  Lucas Stach <l.stach@pengutronix.de>

properties:
  compatible:
    const: vivante,gc

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    items:
      - description: AXI/master interface clock
      - description: GPU core clock
      - description: Shader clock (only required if GPU has feature PIPE_3D)
      - description: AHB/slave interface clock (only required if GPU can gate slave interface independently)
    minItems: 1
    maxItems: 4

  clock-names:
    items:
      enum: [ bus, core, shader, reg ]
    minItems: 1
    maxItems: 4

  resets:
    maxItems: 1

  power-domains:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx6qdl-clock.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    gpu@130000 {
      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>;
    };

...