Remove options that aren't supported in v9.3.0 (LV_MEM_CUSTOM and
LV_TICK_CUSTOM_*) and move the lvgl-demo's default values to lv-conf.inc so
they can be changed via local.conf
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
LVGL v9.3.0 added support for multi-touch gestures via the
USE_GESTURE_RECOGNITION option, but in doing so, they made all touchscreen
support depend on said symbol, at least for the wayland backend. Since the
option is disabled by default, touchscreen support wasn't working in the
wayland version of the demo.
Enable gesture recognition/touchscreen support by default when using the
wayland backend. This depends on LVGL's floating number support, so make sure
this is reflected in the recipe as well.
https://onedigi.atlassian.net/browse/DEL-9925
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Rework our customizations and apply them as full files instead of patches to
make it easier for users to inspect.
Instead of having one cmake file for all backends, provide a separate file for
each backend and select it dynamically based on the selected backend. To do
this, create a new LVGL_BACKEND variable in lv-conf.inc.
While at it, increase the demo's memory from 256 KiB to 2 MiB to ensure that
the wayland flavor of the demo works properly.
https://onedigi.atlassian.net/browse/DEL-9925
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This backend depends on libsdl2, a library we don't include in our default
images. Even when this library is included, the LVGL demo doesn't work properly
when using the SDL backend on any of our platforms, so remove it.
https://onedigi.atlassian.net/browse/DEL-9925
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
We're going to be adding support for LVGL's wayland backend in the following
commits, so recover the initscript logic that ties in with said backend
This reverts commit 21d9c4f17b.
https://onedigi.atlassian.net/browse/DEL-9925
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This is mostly logic to convert the backend configured in the PACKAGECONFIG to
the lv_conf.h file, based on the DEY 4.0 version of the recipe. Add weston as
a runtime dependency to make sure the final image has a wayland compositor and
recover DEY 4.0's mechanism to fall back to a minimal backend if wayland is
missing from DISTRO_FEATURES
Use the wayland backend by default in all platforms except the ccimx6ul
https://onedigi.atlassian.net/browse/DEL-9925
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
In these platforms, /dev/fb0 corresponds to the LVDS display, so change the
demo's output framebuffer to /dev/fb3 to use the HDMI display instead.
https://onedigi.atlassian.net/browse/DEL-9878
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
lv-conf.inc is a general configuration file, meant for any LVGL application,
while lvgl-demo_9.3.0.bb is the recipe for our example demo. Make sure any
modification made to the demo or its initscript is made in its corresponding
recipe.
This is cosmetic, no functional change.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
In platforms that support wayland/xwayland, dey-image-lvgl images have most
weston/wayland packages removed from the filesystem, save for the main wayland
package (because DISTRO_FEATURES still contains "wayland"). Because of this,
the wait_for_wayland() function is called in lvgl-demo-init, but the wayland
display never gets created, causing the function to time out after 20 seconds.
Get rid of this check to have the lvgl-demo launch as soon as possible.
While at it, get rid of other wayland-related logic, since we only use LVGL's
drm or fbdev backends at the moment.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit upgrades our LVGL support to v9.3.0.
We used the meta-openembedded implementation, reference
and reused the lv_conf.inc file for the demo configuration.
https://onedigi.atlassian.net/browse/DEL-9222
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
The value of this variable is always the same within a platform, so it doesn't
make sense to have different variables for it in each recipe that requires it.
While at it, it seems like all currently supported platforms in DEY 5.0 use the
same value of "wayland-1", presumably because they all use similar versions of
wayland/weston. Set this as the default value for all platforms for now. As we
support more platforms, we can adjust this value if needed, but if it ends up
being the same for all platforms, we can just hardcode it.
https://onedigi.atlassian.net/browse/DEL-9404
Co-authored-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The display for the cc93 is 'wayland-1'.
Use backslashes before the curly braces to avoid potential expansion by
bitbake variables.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
This is to avoid duplicating names with variable DEMO_DISPLAY inside
the lvgl-demo-init script itself.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
ccimx6ul platform uses the fbdev backend to run LVGL graphical applications,
the mouse input device is not supported by default on this platform.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit sets the default LVGL demo dimensions to match with the resolution
of the supported LVDS display, showing the application at fullscreen.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds a systemd service and a sysvinit script to initialize the LVGL
demo automatically on boot.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This revision disables LVGL's wayland client-side decorations to prevent visual
glitches on some platforms and homogenize the look of the demo regardless of
platforms/backend.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Our fork contains the same patches that were originally applied in this recipe.
This makes it easier for customers to identify the modifications necessary to
get LVGL working on our platforms.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This change isn't functional, but necessary if we want to be able to separate
the logic in the include file and the demo recipe. This way the include file is
agnostic and can be included into other recipes if needed.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Rename the recipe to lvgl-demo to reflect the generalization and select the
most appropriate backend for each platform. Aside from making sure each backend
builds and runs fine, add some usability improvements:
* Specify the mouse as the default evdev device instead of the touchscreen
* Use common resolution variables to be able to configure the app's
dimensions easily
https://onedigi.atlassian.net/browse/DEL-8740
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>