This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch devs/devilhorns/apos
in repository efl.
View the commit online.
commit ff66086377c512788179b4dd56c83ca83630a19c
Author: Christopher Michael <devilho...@comcast.net>
AuthorDate: Wed Aug 13 12:09:35 2025 -0500
ecore_drm2: Start work on supporting writeback connectors
---
src/lib/ecore_drm2/ecore_drm2_connectors.c | 30 ++++++++++++++++++++++++++++++
src/lib/ecore_drm2/ecore_drm2_private.h | 2 ++
2 files changed, 32 insertions(+)
diff --git a/src/lib/ecore_drm2/ecore_drm2_connectors.c b/src/lib/ecore_drm2/ecore_drm2_connectors.c
index 1eae05ee1b..2239fcf14a 100644
--- a/src/lib/ecore_drm2/ecore_drm2_connectors.c
+++ b/src/lib/ecore_drm2/ecore_drm2_connectors.c
@@ -123,6 +123,36 @@ _ecore_drm2_connector_state_fill(Ecore_Drm2_Connector *conn)
cstate->scaling.flags = prop->flags;
cstate->scaling.value = oprops->prop_values[i];
}
+ else if (!strcmp(prop->name, "WRITEBACK_PIXEL_FORMATS"))
+ {
+ drmModePropertyBlobPtr bp;
+ uint32_t *formats;
+
+ cstate->wb_formats.id = oprops->prop_values[i];
+ if (!cstate->wb_formats.id) goto cont;
+
+ bp = sym_drmModeGetPropertyBlob(conn->fd, cstate->wb_formats.id);
+ if (!bp) goto cont;
+
+ formats = bp->data;
+
+ conn->num_wb_formats = (bp->length / sizeof(uint32_t));
+ conn->wb_formats = calloc(conn->num_wb_formats, sizeof(uint32_t));
+
+ /* FIXME: Check for duplicate writeback formats */
+ for (i = 0; i < conn->num_wb_formats; i++)
+ conn->wb_formats[i] = formats[i];
+
+ sym_drmModeFreePropertyBlob(bp);
+ }
+ else if (!strcmp(prop->name, "WRITEBACK_FB_ID"))
+ {
+ /* TODO */
+ }
+ else if (!strcmp(prop->name, "WRITEBACK_OUT_FENCE_PTR"))
+ {
+ /* TODO */
+ }
cont:
sym_drmModeFreeProperty(prop);
diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h
index 481d990a5c..d1710ffc93 100644
--- a/src/lib/ecore_drm2/ecore_drm2_private.h
+++ b/src/lib/ecore_drm2/ecore_drm2_private.h
@@ -133,6 +133,7 @@ typedef struct _Ecore_Drm2_Connector_State
Ecore_Drm2_Atomic_Property aspect;
Ecore_Drm2_Atomic_Property scaling;
Ecore_Drm2_Atomic_Blob edid;
+ Ecore_Drm2_Atomic_Blob wb_formats;
/* TODO ?? */
/* Ecore_Drm2_Atomic_Property link-status; */
@@ -319,6 +320,7 @@ struct _Ecore_Drm2_Connector
{
uint32_t id;
uint32_t type;
+ uint32_t num_wb_formats, *wb_formats;
int fd;
drmModeConnector *drmConn;
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.