summaryrefslogtreecommitdiff
path: root/src/py/cam/cam_kms.py
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ideasonboard.com>2022-05-18 16:13:21 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-05-18 17:52:29 +0300
commitb7c78879cce586a39f6534a35e474be7a90ea63e (patch)
tree827f54356943907635b2822e7dd7d9ff727d05a1 /src/py/cam/cam_kms.py
parenta4964c5df1ee6e2475186fe4fc5c7f7c08df1082 (diff)
py: cam_kms: Fix multistream display
Instead of doing an atomic commit for each stream, do a single commit for the two planes. This fixes the issue that only the first plane was actually shown. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/py/cam/cam_kms.py')
-rw-r--r--src/py/cam/cam_kms.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/py/cam/cam_kms.py b/src/py/cam/cam_kms.py
index f1844717..d8ff0284 100644
--- a/src/py/cam/cam_kms.py
+++ b/src/py/cam/cam_kms.py
@@ -75,12 +75,13 @@ class KMSRenderer:
buffers = drmreq['camreq'].buffers
+ req = pykms.AtomicReq(self.card)
+
for stream, fb in buffers.items():
drmfb = self.cam_2_drm.get(fb, None)
-
- req = pykms.AtomicReq(self.card)
self.add_plane(req, stream, drmfb)
- req.commit()
+
+ req.commit()
def handle_page_flip(self, frame, time):
old = self.current