From: "Maíra Canal" <mcanal@igalia.com>
To: Melissa Wen <mwen@igalia.com>, Iago Toral <itoral@igalia.com>,
Jose Maria Casanova Crespo <jmcasanova@igalia.com>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: "Phil Elwell" <phil@raspberrypi.com>,
dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
kernel-dev@igalia.com, "Maíra Canal" <mcanal@igalia.com>
Subject: [PATCH v3 4/7] dt-bindings: gpu: v3d: Add per-compatible register restrictions
Date: Tue, 11 Mar 2025 15:13:46 -0300 [thread overview]
Message-ID: <20250311-v3d-gpu-reset-fixes-v3-4-64f7a4247ec0@igalia.com> (raw)
In-Reply-To: <20250311-v3d-gpu-reset-fixes-v3-0-64f7a4247ec0@igalia.com>
In order to enforce per-SoC register rules, add per-compatible
restrictions. V3D 3.3 (represented by brcm,7268-v3d) has a cache
controller (GCA), which is not present in other V3D generations.
Declaring these differences helps ensure the DTB accurately reflect
the hardware design.
While not ideal, this commit keeps the register order flexible for
brcm,7268-v3d with the goal to keep the ABI backwards compatible.
Signed-off-by: Maíra Canal <mcanal@igalia.com>
---
.../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 55 ++++++++++++++++++----
1 file changed, 45 insertions(+), 10 deletions(-)
diff --git a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
index dc078ceeca9ac3447ba54a7c8830821f0b2a7f9f..141f2ed540bb4ddb85a933d7d44a4078c386ba39 100644
--- a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
+++ b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
@@ -22,20 +22,12 @@ properties:
- brcm,7278-v3d
reg:
- items:
- - description: hub register (required)
- - description: core0 register (required)
- - description: GCA cache controller register (if GCA controller present)
- - description: bridge register (if no external reset controller)
minItems: 2
+ maxItems: 4
reg-names:
- items:
- - const: hub
- - const: core0
- - enum: [ bridge, gca ]
- - enum: [ bridge, gca ]
minItems: 2
+ maxItems: 4
interrupts:
items:
@@ -58,6 +50,49 @@ required:
- reg-names
- interrupts
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - brcm,2711-v3d
+ - brcm,2712-v3d
+ - brcm,7278-v3d
+ then:
+ properties:
+ reg:
+ items:
+ - description: hub register (required)
+ - description: core0 register (required)
+ - description: bridge register (if no external reset controller)
+ reg-names:
+ items:
+ - const: hub
+ - const: core0
+ - const: bridge
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: brcm,7268-v3d
+ then:
+ properties:
+ reg:
+ items:
+ - description: hub register (required)
+ - description: core0 register (required)
+ - description: GCA cache controller register (required)
+ - description: bridge register (if no external reset controller)
+ minItems: 3
+ reg-names:
+ items:
+ - const: hub
+ - const: core0
+ - enum: [ bridge, gca ]
+ - enum: [ bridge, gca ]
+ minItems: 3
+
additionalProperties: false
examples:
--
Git-154)
next prev parent reply other threads:[~2025-03-11 18:14 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-11 18:13 [PATCH v3 0/7] drm/v3d: Fix GPU reset issues on the Raspberry Pi 5 Maíra Canal
2025-03-11 18:13 ` [PATCH v3 1/7] drm/v3d: Don't run jobs that have errors flagged in its fence Maíra Canal
2025-03-11 18:13 ` [PATCH v3 2/7] drm/v3d: Set job pointer to NULL when the job's fence has an error Maíra Canal
2025-03-11 18:13 ` [PATCH v3 3/7] drm/v3d: Associate a V3D tech revision to all supported devices Maíra Canal
2025-03-11 18:13 ` Maíra Canal [this message]
2025-03-11 18:13 ` [PATCH v3 5/7] dt-bindings: gpu: v3d: Add SMS register to BCM2712 compatible Maíra Canal
2025-03-11 20:23 ` Rob Herring
2025-03-11 22:05 ` Maíra Canal
2025-03-12 9:06 ` Krzysztof Kozlowski
2025-03-12 17:47 ` Maíra Canal
2025-03-11 18:13 ` [PATCH v3 6/7] drm/v3d: Use V3D_SMS registers for power on/off and reset on V3D 7.x Maíra Canal
2025-03-11 18:13 ` [PATCH v3 7/7] dt-bindings: gpu: Add V3D driver maintainer as DT maintainer Maíra Canal
2025-03-12 9:34 ` [PATCH v3 0/7] drm/v3d: Fix GPU reset issues on the Raspberry Pi 5 Raag Jadav
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250311-v3d-gpu-reset-fixes-v3-4-64f7a4247ec0@igalia.com \
--to=mcanal@igalia.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=itoral@igalia.com \
--cc=jmcasanova@igalia.com \
--cc=kernel-dev@igalia.com \
--cc=krzk+dt@kernel.org \
--cc=mwen@igalia.com \
--cc=nsaenz@kernel.org \
--cc=phil@raspberrypi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).