* [PATCH v2 0/2] drm/imagination: support GPU probe without power-domains
[not found] <75c9382d2bda766aa459b00321153d715254d1a4.camel@imgtec.com>
@ 2026-07-27 1:22 ` Sterling-Ash
2026-07-27 1:22 ` [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu Sterling-Ash
2026-07-27 1:22 ` [PATCH v2 2/2] drm/imagination: allow probe when no power-domains are described Sterling-Ash
0 siblings, 2 replies; 4+ messages in thread
From: Sterling-Ash @ 2026-07-27 1:22 UTC (permalink / raw)
To: Frank Binns, Matt Coster
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Yixun Lan,
dri-devel, devicetree, linux-kernel, linux-riscv, spacemit
This v2 reorders and extends the earlier standalone pvr_power.c change
per Alessio's review [1].
On the SpacemiT K3 SoC, the GPU power domain is enabled once by the bootloader
before Linux boots and is neither modelled nor switched by Linux at runtime.
As pointed out in review, img,powervr-rogue.yaml currently has no
compatible entry this platform's GPU can use, so patch 1 adds one
(spacemit,k3-gpu + img,img-bxm-4-64 + img,img-rogue) as its own oneOf
entry, distinct from thead,th1520-gpu since the two differ in clock
requirements. This new compatible doesn't match any of the schema's
existing per-compatible "if" blocks, so power-domains falls back to
the schema's default (optional) behaviour for it -- no additional
required/false override is needed.
Patch 2 is the previously-sent driver change: pvr_power_domains_init()
treats a missing "power-domains" property as "nothing to attach" instead of failing
probe with -ENOENT.
[1] https://lore.kernel.org/all/75c9382d2bda766aa459b00321153d715254d1a4.camel@imgtec.com/
Sterling-Ash (2):
dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu
drm/imagination: allow probe when no power-domains are described
.../devicetree/bindings/gpu/img,powervr-rogue.yaml | 5 +++++
drivers/gpu/drm/imagination/pvr_power.c | 9 +++++++++
2 files changed, 14 insertions(+)
--
2.34.1
This message and any attachment are confidential and may be privileged or otherwise protected from disclosure. If you are not an intended recipient of this message, please delete it and any attachment from your system and notify the sender immediately by reply e-mail. Unintended recipients should not use, copy, disclose or take any action based on this message or any information contained in this message. Emails cannot be guaranteed to be secure or error free as they can be intercepted, amended, lost or destroyed, and you should take full responsibility for security checking.
本邮件及其任何附件具有保密性质,并可能受其他保护或不允许被披露给第三方。如阁下误收到本邮件,敬请立即以回复电子邮件的方式通知发件人,并将本邮件及其任何附件从阁下系统中予以删除。如阁下并非本邮件写明之收件人,敬请切勿使用、复制、披露本邮件或其任何内容,亦请切勿依本邮件或其任何内容而采取任何行动。电子邮件无法保证是一种安全和不会出现任何差错的通信方式,可能会被拦截、修改、丢失或损坏,收件人需自行负责做好安全检查。
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu
2026-07-27 1:22 ` [PATCH v2 0/2] drm/imagination: support GPU probe without power-domains Sterling-Ash
@ 2026-07-27 1:22 ` Sterling-Ash
2026-07-27 1:28 ` sashiko-bot
2026-07-27 1:22 ` [PATCH v2 2/2] drm/imagination: allow probe when no power-domains are described Sterling-Ash
1 sibling, 1 reply; 4+ messages in thread
From: Sterling-Ash @ 2026-07-27 1:22 UTC (permalink / raw)
To: Frank Binns, Matt Coster
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Yixun Lan,
dri-devel, devicetree, linux-kernel, linux-riscv, spacemit
Add a compatible string for the IMG BXM-4-64 GPU integrated into the
SpacemiT K3 SoC. It shares the same core as thead,th1520-gpu but is
kept as a separate compatible entry, since the K3 integration differs
from TH1520 in its clock and power-domain requirements: K3 only needs
a single "core" clock, and its GPU power domain is enabled by the
bootloader before Linux boots rather than being modelled and switched
by Linux, so no power-domains property is required for this platform
(unlike the other img,img-bxm-4-64 user).
No existing compatible-specific "if" block matches spacemit,k3-gpu, so
clocks/clock-names/power-domains all fall back to this schema's
general constraints, where power-domains is optional. This leaves room
for a power-domains provider to be added later without a further
binding change, should one ever be modelled in Linux for this SoC.
Signed-off-by: Sterling-Ash <baihui.liang@spacemit.com>
---
Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
index a1f54dbae3f3..2d58dd4076a8 100644
--- a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
+++ b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
@@ -38,6 +38,11 @@ properties:
- thead,th1520-gpu
- const: img,img-bxm-4-64
- const: img,img-rogue
+ - items:
+ - enum:
+ - spacemit,k3-gpu
+ - const: img,img-bxm-4-64
+ - const: img,img-rogue
- items:
- enum:
- ti,am62p-gpu
--
2.34.1
This message and any attachment are confidential and may be privileged or otherwise protected from disclosure. If you are not an intended recipient of this message, please delete it and any attachment from your system and notify the sender immediately by reply e-mail. Unintended recipients should not use, copy, disclose or take any action based on this message or any information contained in this message. Emails cannot be guaranteed to be secure or error free as they can be intercepted, amended, lost or destroyed, and you should take full responsibility for security checking.
本邮件及其任何附件具有保密性质,并可能受其他保护或不允许被披露给第三方。如阁下误收到本邮件,敬请立即以回复电子邮件的方式通知发件人,并将本邮件及其任何附件从阁下系统中予以删除。如阁下并非本邮件写明之收件人,敬请切勿使用、复制、披露本邮件或其任何内容,亦请切勿依本邮件或其任何内容而采取任何行动。电子邮件无法保证是一种安全和不会出现任何差错的通信方式,可能会被拦截、修改、丢失或损坏,收件人需自行负责做好安全检查。
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] drm/imagination: allow probe when no power-domains are described
2026-07-27 1:22 ` [PATCH v2 0/2] drm/imagination: support GPU probe without power-domains Sterling-Ash
2026-07-27 1:22 ` [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu Sterling-Ash
@ 2026-07-27 1:22 ` Sterling-Ash
1 sibling, 0 replies; 4+ messages in thread
From: Sterling-Ash @ 2026-07-27 1:22 UTC (permalink / raw)
To: Frank Binns, Matt Coster
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Yixun Lan,
dri-devel, devicetree, linux-kernel, linux-riscv, spacemit
pvr_power_domains_init() currently fails probe with -ENOENT when the
device tree node has no "power-domains" property. On some platforms
(e.g. SpacemiT K3) the GPU power domain is brought up by the bootloader
and is not modeled or managed by Linux, so there is legitimately no
power-domains phandle to attach.
Treat a missing "power-domains" property as "nothing to attach" and
continue probing, rather than failing.
Signed-off-by: Sterling-Ash <baihui.liang@spacemit.com>
---
drivers/gpu/drm/imagination/pvr_power.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/gpu/drm/imagination/pvr_power.c b/drivers/gpu/drm/imagination/pvr_power.c
index a71d5b35601e..5751e2d814b0 100644
--- a/drivers/gpu/drm/imagination/pvr_power.c
+++ b/drivers/gpu/drm/imagination/pvr_power.c
@@ -635,6 +635,15 @@ int pvr_power_domains_init(struct pvr_device *pvr_dev)
domain_count = of_count_phandle_with_args(dev->of_node, "power-domains",
"#power-domain-cells");
+ if (domain_count == -ENOENT) {
+ /*
+ * No "power-domains" property in the device tree: the platform
+ * handles power domains transparently or at the firmware/bootloader level,
+ * so there is no domain to attach. Treat this as non-fatal.
+ */
+ err = 0;
+ goto out;
+ }
if (domain_count < 0) {
err = domain_count;
goto out;
--
2.34.1
This message and any attachment are confidential and may be privileged or otherwise protected from disclosure. If you are not an intended recipient of this message, please delete it and any attachment from your system and notify the sender immediately by reply e-mail. Unintended recipients should not use, copy, disclose or take any action based on this message or any information contained in this message. Emails cannot be guaranteed to be secure or error free as they can be intercepted, amended, lost or destroyed, and you should take full responsibility for security checking.
本邮件及其任何附件具有保密性质,并可能受其他保护或不允许被披露给第三方。如阁下误收到本邮件,敬请立即以回复电子邮件的方式通知发件人,并将本邮件及其任何附件从阁下系统中予以删除。如阁下并非本邮件写明之收件人,敬请切勿使用、复制、披露本邮件或其任何内容,亦请切勿依本邮件或其任何内容而采取任何行动。电子邮件无法保证是一种安全和不会出现任何差错的通信方式,可能会被拦截、修改、丢失或损坏,收件人需自行负责做好安全检查。
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu
2026-07-27 1:22 ` [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu Sterling-Ash
@ 2026-07-27 1:28 ` sashiko-bot
0 siblings, 0 replies; 4+ messages in thread
From: sashiko-bot @ 2026-07-27 1:28 UTC (permalink / raw)
To: Sterling-Ash; +Cc: devicetree, robh, conor+dt, dri-devel
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Incomplete schema validation: `spacemit,k3-gpu` allows up to 3 clocks instead of restricting it to 1.
--
--- Patch [1]: [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu ---
commit 5e58bdf2ff5533bc6aae23c68852fcbc9caf9570
Author: Sterling-Ash <baihui.liang@spacemit.com>
dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu
This commit adds a compatible string for the IMG BXM-4-64 GPU integrated
into the SpacemiT K3 SoC. It notes that the integration requires a single
core clock and omits power-domains, falling back to general schema
constraints.
> diff --git a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> index a1f54dbae3f31..2d58dd4076a87 100644
> --- a/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> +++ b/Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml
> @@ -38,6 +38,11 @@ properties:
> - thead,th1520-gpu
> - const: img,img-bxm-4-64
> - const: img,img-rogue
> + - items:
> + - enum:
> + - spacemit,k3-gpu
> + - const: img,img-bxm-4-64
> + - const: img,img-rogue
[Severity: Medium]
Will omitting spacemit,k3-gpu from a conditional block allow invalid
device trees to silently pass schema validation?
The commit message explicitly states that the K3 GPU only needs a single
clock and relies on the general schema constraints. However, the general
schema configuration allows up to 3 clocks:
Documentation/devicetree/bindings/gpu/img,powervr-rogue.yaml:properties.clocks:
clocks:
minItems: 1
maxItems: 3
Because spacemit,k3-gpu does not match any specific allOf.if block
enforcing a maximum of 1 clock, it falls back to this general limit.
Should an if-then conditional block be added to enforce maxItems: 1 for
the clocks property on this platform?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260727012231.1025210-1-baihui.liang@spacemit.com?part=1
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-07-27 1:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <75c9382d2bda766aa459b00321153d715254d1a4.camel@imgtec.com>
2026-07-27 1:22 ` [PATCH v2 0/2] drm/imagination: support GPU probe without power-domains Sterling-Ash
2026-07-27 1:22 ` [PATCH v2 1/2] dt-bindings: gpu: img,powervr-rogue: add spacemit,k3-gpu Sterling-Ash
2026-07-27 1:28 ` sashiko-bot
2026-07-27 1:22 ` [PATCH v2 2/2] drm/imagination: allow probe when no power-domains are described Sterling-Ash
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox