summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: f61e638)
raw | patch | inline | side by side (parent: f61e638)
author | Nikhil Devshatwar <nikhil.nd@ti.com> | |
Tue, 12 Apr 2016 09:15:21 +0000 (14:45 +0530) | ||
committer | Nikhil Devshatwar <nikhil.nd@ti.com> | |
Thu, 28 Apr 2016 08:58:53 +0000 (14:28 +0530) |
Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
util/display-kms.c | patch | blob | history |
diff --git a/util/display-kms.c b/util/display-kms.c
index b892dbc4a4e3aa34252946c9d7f5cc817fb26b6a..7a5a4d1f8f334b9a2254280b31c7633168ff3ded 100644 (file)
--- a/util/display-kms.c
+++ b/util/display-kms.c
drmModeResPtr resources;
drmModePlaneRes *plane_resources;
struct buffer *current;
+ bool no_master;
+ int mastership;
};
#define to_buffer_kms(x) container_of(x, struct buffer_kms, base)
}
}
+ if (disp_kms->no_master && disp_kms->mastership) {
+ /* Drop mastership after the first buffer on each plane is
+ * displayed. This will lock these planes for us and allow
+ * others to consume remaining
+ */
+ disp_kms->mastership = 0;
+ drmDropMaster(disp->fd);
+ }
+
return ret;
}
goto fail;
}
disp_kms->bo_flags |= OMAP_BO_SCANOUT;
+ } else if (!strcmp("-nm", argv[i])) {
+ disp_kms->no_master = true;
+ disp_kms->mastership = 1;
} else {
/* ignore */
continue;