* [PATCH RFT v2] drm/msm/dpu: enable virtual planes by default
@ 2026-02-26 13:49 Dmitry Baryshkov
2026-02-27 2:05 ` Claude review: " Claude Code Review Bot
2026-02-27 2:05 ` Claude Code Review Bot
0 siblings, 2 replies; 3+ messages in thread
From: Dmitry Baryshkov @ 2026-02-26 13:49 UTC (permalink / raw)
To: Abhinav Kumar, Dmitry Baryshkov, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Rob Clark
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
Turn on the switch and use virtual planes by default, enhancing
utilisation of the display pipelines. It is still possible to use legacy
implementation by using `msm.dpu_use_virtual_planes=false` kernel boot
parameter.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
This is being sent as an RFT for now. Please give it a test with your
compositor of choice. X11. Weston. Sway. Wlroot. CrOS. I plan to turn
the switch for 7.1
---
Changes in v2:
- Rebased on msm-next
- Updated the cover letter, targeting the switch to 7.1
- Link to v1: https://lore.kernel.org/r/20250514-dpu-enable-virt-planes-v1-1-bf5ba0088007@oss.qualcomm.com
---
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
index 0623f1dbed97..7c5b3495bddf 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c
@@ -52,7 +52,7 @@
#define DPU_DEBUGFS_DIR "msm_dpu"
#define DPU_DEBUGFS_HWMASKNAME "hw_log_mask"
-bool dpu_use_virtual_planes;
+bool dpu_use_virtual_planes = true;
module_param(dpu_use_virtual_planes, bool, 0);
static int dpu_kms_hw_init(struct msm_kms *kms);
---
base-commit: 50c4a49f7292b33b454ea1a16c4f77d6965405dc
change-id: 20250514-dpu-enable-virt-planes-7b7ce0a6ce2a
Best regards,
--
With best wishes
Dmitry
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Claude review: drm/msm/dpu: enable virtual planes by default
2026-02-26 13:49 [PATCH RFT v2] drm/msm/dpu: enable virtual planes by default Dmitry Baryshkov
@ 2026-02-27 2:05 ` Claude Code Review Bot
2026-02-27 2:05 ` Claude Code Review Bot
1 sibling, 0 replies; 3+ messages in thread
From: Claude Code Review Bot @ 2026-02-27 2:05 UTC (permalink / raw)
To: dri-devel-reviews
Patch Review
**Code change:**
```c
-bool dpu_use_virtual_planes;
+bool dpu_use_virtual_planes = true;
```
**Observations:**
1. **Correct and minimal change.** The diff does exactly what the commit message describes. The explicit `= true` initializer is the right approach (rather than, say, inverting the logic and the parameter name).
2. **Boot parameter documentation.** The commit message correctly documents the fallback: `msm.dpu_use_virtual_planes=false`. This matches the `module_param(dpu_use_virtual_planes, bool, 0)` declaration at `dpu_kms.c:56`.
3. **Minor nit — no MODULE_PARM_DESC.** The parameter has no `MODULE_PARM_DESC()`, so `modinfo` won't show any description for it. This pre-dates this patch, but given that the parameter is now the escape hatch for a default-on feature, it might be worth adding one in a follow-up:
```c
MODULE_PARM_DESC(dpu_use_virtual_planes,
"Use virtual planes for improved pipeline utilization (default: true)");
```
4. **Parameter permissions are 0.** The `module_param(..., 0)` means the parameter is not exposed in sysfs at all — it's boot-time only. This is fine for this kind of fundamental mode switch, since changing it at runtime would likely be unsafe without a full modeset teardown/rebuild.
5. **Usage sites are clean.** The variable is checked in two places:
- `dpu_kms.c:852` — choosing between `dpu_plane_init_virtual()` and `dpu_plane_init()` during hardware init.
- `dpu_crtc.c:1537` — conditionally calling `dpu_crtc_reassign_planes()` during atomic check.
Both are one-shot init or atomic-check paths, so the default flip doesn't introduce any new races or lifecycle concerns.
**Verdict:** The patch is correct and ready. No blocking issues. The only suggestion is the optional `MODULE_PARM_DESC` addition for better self-documentation, but that can be a separate cleanup.
---
Generated by Claude Code Patch Reviewer
^ permalink raw reply [flat|nested] 3+ messages in thread* Claude review: drm/msm/dpu: enable virtual planes by default
2026-02-26 13:49 [PATCH RFT v2] drm/msm/dpu: enable virtual planes by default Dmitry Baryshkov
2026-02-27 2:05 ` Claude review: " Claude Code Review Bot
@ 2026-02-27 2:05 ` Claude Code Review Bot
1 sibling, 0 replies; 3+ messages in thread
From: Claude Code Review Bot @ 2026-02-27 2:05 UTC (permalink / raw)
To: dri-devel-reviews
Overall Series Review
Subject: drm/msm/dpu: enable virtual planes by default
Author: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Patches: 1
Reviewed: 2026-02-27T12:05:40.605843
---
This is a single-patch series that flips the default value of the `dpu_use_virtual_planes` module parameter from `false` to `true`. The code change is trivially correct — one line changing a boolean initializer. The virtual planes feature has been available behind this opt-in parameter, and the author is now proposing to enable it by default for the 7.1 kernel cycle, while keeping the `msm.dpu_use_virtual_planes=false` boot parameter as an escape hatch.
The patch is appropriately tagged as **RFT (Request For Testing)**, which is the right approach for a behavioral default change that could affect a wide range of Qualcomm display hardware and compositor combinations.
**No bugs or correctness issues found.** The change is straightforward and low-risk from a code perspective.
---
Generated by Claude Code Patch Reviewer
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-02-27 2:05 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-26 13:49 [PATCH RFT v2] drm/msm/dpu: enable virtual planes by default Dmitry Baryshkov
2026-02-27 2:05 ` Claude review: " Claude Code Review Bot
2026-02-27 2:05 ` Claude Code Review Bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox