From b267bb8b2e047ebe786124566c15eeacf04ef504 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Tue, 30 Sep 2025 13:53:11 -0400 Subject: libwidget: Initialize vram/fbdev pointer Signed-off-by: Ian Moffett --- src/lib/libwidget/include/libwidget/core.h | 4 ++++ src/lib/libwidget/src/core/widget_core.c | 22 ++++++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/lib/libwidget/include/libwidget/core.h b/src/lib/libwidget/include/libwidget/core.h index 5a5b891..85b33d4 100644 --- a/src/lib/libwidget/include/libwidget/core.h +++ b/src/lib/libwidget/include/libwidget/core.h @@ -35,6 +35,10 @@ /* Forward declarations */ struct widget; +struct libwidget_state { + uint32_t *fbdev; +}; + typedef enum { WIDGET_WINDOW, MAX_WIDGETS diff --git a/src/lib/libwidget/src/core/widget_core.c b/src/lib/libwidget/src/core/widget_core.c index c36d88e..20857ba 100644 --- a/src/lib/libwidget/src/core/widget_core.c +++ b/src/lib/libwidget/src/core/widget_core.c @@ -31,11 +31,33 @@ #include #include #include +#include #include #include static struct widget backends[]; +/* + * Initialize lib widget + */ +int +libwidget_init(struct libwidget_state *lwsp) +{ + int error; + + if (lwsp == NULL) { + return -EINVAL; + } + + /* Grab the whole framebuffer, directly mapped */ + error = cross(BORDER_FBDEV, -1, 0, 0, &lwsp->fbdev); + if (error < 0) { + return error; + } + + return 0; +} + /* * Put the widget into a known state */ -- cgit v1.2.3