diff options
author | Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> | 2022-05-18 16:13:21 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2022-05-18 17:52:29 +0300 |
commit | b7c78879cce586a39f6534a35e474be7a90ea63e (patch) | |
tree | 827f54356943907635b2822e7dd7d9ff727d05a1 /src/py/cam | |
parent | a4964c5df1ee6e2475186fe4fc5c7f7c08df1082 (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')
-rw-r--r-- | src/py/cam/cam_kms.py | 7 |
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 |