Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v5 0/3] Optimize framebuffer management
@ 2026-03-30  3:20 Jason-JH Lin
  2026-03-30  3:20 ` [PATCH i-g-t v5 1/3] tests/kms_content_protection: Add per-CRTC framebuffer infrastructure Jason-JH Lin
                   ` (11 more replies)
  0 siblings, 12 replies; 24+ messages in thread
From: Jason-JH Lin @ 2026-03-30  3:20 UTC (permalink / raw)
  To: igt-dev, Karthik B S, Swati Sharma, Kamil Konieczny,
	Juha-Pekka Heikkila, Bhanuprakash Modem, Fei Shao
  Cc: Jani, Jason-JH Lin, Paul-PL Chen, Nancy Lin, Singo Chang,
	Gil Dekel, Yacoub, Project_Global_Chrome_Upstream_Group

Refactor framebuffer management to improve reusability:
- Create framebuffers once per CRTC at test initialization via
  create_fbs() and reuse them across all subtests
- Centralize cleanup in remove_fbs() called at test fixture end
- Use per-CRTC framebuffer array (data.fbs[IGT_MAX_PIPES]) indexed
  by crtc->crtc_index instead of single global framebuffers

Each framebuffer is created with the actual resolution of the first
output that can connect to that CRTC, avoiding buffer size mismatch
issues (e.g., 3504x2190 panel incorrectly using 3840x2160 buffer).

For MST tests, multiple outputs share bandwidth and may require mode
override to fit within bandwidth constraints. When mode override
changes the resolution, properly detach planes before removing the
existing framebuffers, then recreate them with the new dimensions.

---

Change in v5:
1.Split the commit v4 into 3 logical patches for easier bisecting
2.Remove output_get_driving_crtc_assert() helper function and use
igt_output_get_driving_crtc() directly without assertions
3.Remove the unnecessary CRTC index check in igt_main()

---

Jason-JH Lin (3):
  tests/kms_content_protection: Add per-CRTC framebuffer infrastructure
  tests/kms_content_protection: Pass crtc parameter and use per-CRTC FBs
  tests/kms_content_protection: Add FB cleanup for MST tests

 tests/kms_content_protection.c | 168 ++++++++++++++++++++++++---------
 1 file changed, 121 insertions(+), 47 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2026-05-06 18:15 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-30  3:20 [PATCH i-g-t v5 0/3] Optimize framebuffer management Jason-JH Lin
2026-03-30  3:20 ` [PATCH i-g-t v5 1/3] tests/kms_content_protection: Add per-CRTC framebuffer infrastructure Jason-JH Lin
2026-04-29 20:31   ` Manasi Navare
2026-04-30 22:59     ` Manasi Navare
2026-05-04  8:31       ` Karthik B S
2026-05-04 20:32         ` Manasi Navare
2026-05-05 22:28           ` Manasi Navare
2026-05-06 12:15             ` Karthik B S
2026-05-06 18:15               ` Manasi Navare
2026-05-06 10:57           ` Reddy Guddati, Santhosh
2026-03-30  3:20 ` [PATCH i-g-t v5 2/3] tests/kms_content_protection: Pass crtc parameter and use per-CRTC FBs Jason-JH Lin
2026-04-17  4:12   ` Fei Shao
2026-05-06 11:05   ` Reddy Guddati, Santhosh
2026-03-30  3:20 ` [PATCH i-g-t v5 3/3] tests/kms_content_protection: Add FB cleanup for MST tests Jason-JH Lin
2026-05-06 11:13   ` Reddy Guddati, Santhosh
2026-03-30  4:14 ` ✓ Xe.CI.BAT: success for Optimize framebuffer management Patchwork
2026-03-30  4:37 ` ✓ i915.CI.BAT: " Patchwork
2026-03-30  4:37 ` Patchwork
2026-03-30  4:38 ` Patchwork
2026-03-30  4:38 ` Patchwork
2026-03-30  4:38 ` Patchwork
2026-03-30  5:10 ` ✓ Xe.CI.FULL: " Patchwork
2026-03-30  6:37 ` ✗ i915.CI.Full: failure " Patchwork
2026-04-14  5:59 ` [PATCH i-g-t v5 0/3] " Jason-JH Lin (林睿祥)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox