| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| # Copyright (c) 2023 Imagination Technologies Ltd. |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/gpu/img,powervr-rogue.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Imagination Technologies PowerVR and IMG Rogue GPUs |
| |
| maintainers: |
| - Frank Binns <frank.binns@imgtec.com> |
| |
| properties: |
| compatible: |
| oneOf: |
| - items: |
| - enum: |
| - renesas,r8a7796-gpu |
| - renesas,r8a77961-gpu |
| - const: img,img-gx6250 |
| - const: img,img-rogue |
| - items: |
| - enum: |
| - renesas,r8a77965-gpu |
| - renesas,r8a779a0-gpu |
| - const: img,img-ge7800 |
| - const: img,img-rogue |
| - items: |
| - enum: |
| - ti,am62-gpu |
| - const: img,img-axe-1-16m |
| # This deprecated element must be kept around to allow old kernels to |
| # work with newer dts. |
| - const: img,img-axe |
| - const: img,img-rogue |
| - items: |
| - enum: |
| - thead,th1520-gpu |
| - const: img,img-bxm-4-64 |
| - const: img,img-rogue |
| - items: |
| - enum: |
| - ti,j721s2-gpu |
| - const: img,img-bxs-4-64 |
| - const: img,img-rogue |
| |
| # This legacy combination of compatible strings was introduced early on |
| # before the more specific GPU identifiers were used. |
| - items: |
| - enum: |
| - ti,am62-gpu |
| - const: img,img-axe |
| deprecated: true |
| |
| reg: |
| maxItems: 1 |
| |
| clocks: |
| minItems: 1 |
| maxItems: 3 |
| |
| clock-names: |
| items: |
| - const: core |
| - const: mem |
| - const: sys |
| minItems: 1 |
| |
| interrupts: |
| maxItems: 1 |
| |
| power-domains: |
| minItems: 1 |
| maxItems: 2 |
| |
| power-domain-names: |
| items: |
| - const: a |
| - const: b |
| minItems: 1 |
| |
| dma-coherent: true |
| |
| resets: |
| maxItems: 1 |
| |
| required: |
| - compatible |
| - reg |
| - clocks |
| - clock-names |
| - interrupts |
| |
| additionalProperties: false |
| |
| allOf: |
| - if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - ti,am62-gpu |
| - ti,j721s2-gpu |
| then: |
| properties: |
| clocks: |
| maxItems: 1 |
| |
| - if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - img,img-ge7800 |
| - img,img-gx6250 |
| - thead,th1520-gpu |
| then: |
| properties: |
| clocks: |
| minItems: 3 |
| clock-names: |
| minItems: 3 |
| |
| - if: |
| properties: |
| compatible: |
| contains: |
| const: img,img-axe-1-16m |
| then: |
| properties: |
| power-domains: |
| maxItems: 1 |
| power-domain-names: |
| maxItems: 1 |
| required: |
| - power-domains |
| - power-domain-names |
| |
| - if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - img,img-bxs-4-64 |
| - img,img-ge7800 |
| - img,img-gx6250 |
| then: |
| properties: |
| power-domains: |
| minItems: 2 |
| power-domain-names: |
| minItems: 2 |
| required: |
| - power-domains |
| - power-domain-names |
| |
| - if: |
| properties: |
| compatible: |
| contains: |
| const: thead,th1520-gpu |
| then: |
| properties: |
| power-domains: |
| items: |
| - description: The single, unified power domain for the GPU on the |
| TH1520 SoC, integrating all internal IP power domains. |
| power-domain-names: false |
| required: |
| - power-domains |
| |
| examples: |
| - | |
| #include <dt-bindings/interrupt-controller/irq.h> |
| #include <dt-bindings/interrupt-controller/arm-gic.h> |
| #include <dt-bindings/soc/ti,sci_pm_domain.h> |
| |
| gpu@fd00000 { |
| compatible = "ti,am62-gpu", "img,img-axe-1-16m", "img,img-axe", |
| "img,img-rogue"; |
| reg = <0x0fd00000 0x20000>; |
| clocks = <&k3_clks 187 0>; |
| clock-names = "core"; |
| interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; |
| power-domains = <&k3_pds 187 TI_SCI_PD_EXCLUSIVE>; |
| power-domain-names = "a"; |
| }; |