33 Commits

Author SHA1 Message Date
Wang Mingyu
b6e053ec5a lvgl: upgrade 8.3.9 -> 8.3.10
Changelog:
https://github.com/lvgl/lvgl/blob/release/v8.3/docs/CHANGELOG.md

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit daa0ea17d785cdf7e63169fce402d02d44287d1f)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2023-10-30 07:14:02 -04:00
Marek Vasut
e51ef27a32 lvgl: Allow empty package
The lvgl main package is empty, since all the headers end up in
the -dev variant and static library archive ends up in -staticdev
variant. Mark the main package as ALLOW_EMPTY.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 7c97b49180fe55f3116d13c40384fc3d326853e0)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2023-10-30 07:14:02 -04:00
Marek Vasut
0e2680ce47 lvgl: lv-drivers: Allow empty package
The lv-drivers main package is empty, since all the headers end up
in the -dev variant and static library archive ends up in -staticdev
variant. Mark the main package as ALLOW_EMPTY.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit f2ab5e1ac3f7c8ff63eb96d797f10555dde8fd7d)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2023-10-30 07:14:02 -04:00
Sourav Kumar Pramanik
3da59b8a8a meta-oe-components: Avoid usage of nobranch=1
The usage of nobranch=1 in SRC_URI allows using unprotected branches.

This change updates the real branch name in place of nobranch=1 for these components.

Signed-off-by: Sourav Kumar Pramanik <pramanik.souravkumar@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-09-07 08:22:43 -07:00
Wang Mingyu
487264b907 lvgl: upgrade 8.3.8 -> 8.3.9
Changelog:
==========
Fixes
-------
    fix(decoder): fix LV_IMG_CF_ALPHA_8BIT bin file decoder 4406
    fix(config): fix typo in LV_USE_PERF_MONITOR and LV_USE_MEM_MONITOR 4403
    fix(attr): refactor LV_ATTRIBUTE_* for function attributes 4404
    fix(font): fix optimizer issue in lv_font_fmt_txt.c 4385
    fix(btnmatrix): Hide button matrix when all buttons hidden 65f1c93
    fix(obj) prevent hidden objects keeping focus 375b3b5
    fix(btnmatrix): Fix typo in previous commit! 29ed7c5
    fix(tabview): fix warning 223dc1c
    fix(indev): fix warnings when loggin coordinates is enabled 645006e
    fix: use const lv_img_dsc_t * dsc function parameter in lv_img_buf.h/ 4f102d7
    fix(chart): fix lv_chart_get_point_pos_by_id f9ffcc9
    fix(imgbtn): support LV_OBJ_FLAG_CHECKABLE 385d999

Docs
-------
    docs(disp): metined that rotation rotates the touch coordinates too 810852b

Others
--------
    demos: add lv_demo_..._close() functions for each demo 91038a9

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-08-15 20:07:54 -07:00
Michael Opdenacker
6b2b98e52d remove unused AUTHOR variable
No longer used in generating packages
Also creates a possible confusion with the recipe maintainer
name.

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-08-03 09:14:20 -07:00
Wang Mingyu
e9c76a947d lvgl: upgrade 8.3.7 -> 8.3.8
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-07-20 19:08:56 -07:00
Marek Vasut
18bb7ad884 lvgl: Add default input device configuration option
Add the ability to override default touch input device hard-coded into LVGL.
The current default in the code is "/dev/input/event10" for whatever reason,
let user override this. Pick "/dev/input/touchscreen" as the OE default, as
that is more likely to be present on embedded hardware.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-06-26 05:12:55 -07:00
Marek Vasut
32905ebacc lvgl: Factor out and unify lv-drivers configuration
The configuration of lv_drivers is the same in lv-drivers and lvgl-demo-fb,
the later just pulls in its own already preconfigured variant of lv-drivers
as git submodule. Pull out the lv-drivers configuration into separate file
lv-drivers.inc, so it can be shared by lv-drivers and lvgl-demo-fb recipes.

Furthermore, as the configuration support in both recipes diverged already,
merge support for both sets of configuration options. This way, lv-drivers
grows support for DRM and SDL backend, and lvgl-demo-fb for WL backend. The
PACKAGECONFIG of each recipe is left unchanged so far to avoid breaking of
existing users.

Note that LVGL_CONFIG_USE_EVDEV is new and activated for both fbdev and drm,
since both of those backends need EVDEV support right now. The libinput input
support is not available yet.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-06-26 05:12:55 -07:00
Marek Vasut
ffb3c1108a lvgl: lvgl-demo-fb: Switch to CMake and add DRM and SDL support
Switch the build of this recipe to CMake from the horrible Makefile
which is still part of the source tree and which blatantly encodes
various CFLAGS and co.

Add support for use of DRM and SDL backends and make this configurable.
The FBDEV is deprecated for close to two decades, so provide modern
alternatives -- DRM and SDL.

The DRM uses modern DRM API, but there is no GPU acceleration.
The SDL provides GPU support abstracted via the libSDL2 API and
can use multiple backends, DRM and WL included.

Default to the DRM backend, because FBDEV is just bad for any modern system.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-18 17:09:30 -07:00
Fabio Estevam
ecefb3a75d lvgl: lvgl-demo-fb: Inherit features_check
Inherit features_check to fix the following QA error:

ERROR: QA Issue: lvgl-demo-fb: recipe doesn't inherit features_check [unhandled-features-check]

Reported-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-14 22:15:01 -07:00
Marek Vasut
c7504645e2 lvgl: Add dependency on fbdev into lvgl-demo-fb DISTRO_FEATURES
This recipe hard depends on fbdev, since it specifically targets
systems using it. Add the DISTRO_FEATURES dependency to indicate
it.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
fcbe242276 lvgl: Upgrade dialog-lvgl to next/main version
The dialog-lvgl has been unmaintained and stuck at LVGL v8.1.0 in
its now archived repository branch main. There is subsequent effort
in next/main branch which updates the code base to LVGL v8.2.0 that
is almost compatible enough to still build against LVGL v8.3.7.

Upgrade to this next/main branch which contains three additional
commits on top of the main branch, which implement the update to
newer LVGL. Add two more fixes to build against system timer provided
tick and another fix for WL callback data type. Since there is no
upstream, track the patches here for now.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
387200af7c lvgl: Update lvgl-demo-fb to 8.3.0
The lvgl-demo-fb depends on specific configuration of LVGL which
includes demo widgets, which as far as I can tell are not needed
for regular LVGL application development. Currently lvgl-demo-fb
contains its own copy of lvgl and lv-drivers, for which meta-oe
already contains its own recipes, but so far we cannot reuse them.

Upgrade the lvgl-demo-fb to 8.3.0 to at least match the lvgl and
lv-drivers .

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
dbf8086926 lvgl: Support both fbdev and wayland backends
The LVGL can be operated on top of fbdev as well as on WL compositor.
Support both, which is a matter of configuring lv-drivers package per
required backend. Determine the backend from DISTRO_FEATURES, since
both 'wayland' and 'fbdev' are valid DISTRO_FEATURES. Add a bit more
sed hacking of the configuration, which enables either FBDEV or WL
backend. One notable item here is the enablement of EVDEV support,
which is required for FBDEV backend, so in case FBDEV is enabled, so
is EVDEV.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
1278e8cfca lvgl: Add configurable color depth, default to 32bpp
Make color depth configurable and default to 32bpp .

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
6a2fb1f751 lvgl: Activate custom tick implementation
Use a custom tick source that tells the elapsed time in milliseconds.
It removes the need to manually update the tick with `lv_tick_inc()`.
This is the behavior which ought to be used for LVGL running on Linux
compared to LVGL running on microcontroller.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Marek Vasut
6491067312 lvgl: Upgrade lvgl to 8.3.7 and lv-driver to 8.3.0
Both the LVGL and lv-drivers are now available in 8.3.y release,
upgrade both to latest 8.3.y release version in lock step. Also,
lvgl contains no submodules, drop the gitsm fetcher use.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-05-09 10:12:44 -07:00
Martin Jansa
faa9d6a7b1 lvgl,lv-lib-png,lv-drivers: fix installed-vs-shipped QA issue with multilib
* with multilib BASELIB is just "lib" while baselib is "lib64"
  and libdir is "/usr/lib64".
* fixes:
  ERROR: QA Issue: lvgl: Files/directories were installed but not shipped in any package:
    /usr/lib
    /usr/lib/liblvgl.a
  Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
  lvgl: 2 installed and not shipped files. [installed-vs-shipped]

* lowercase baselib should work for ppc64 as well (I hope)
  # $baselib [3 operations]
  #   set oe-core/meta/conf/bitbake.conf:10
  #     "${BASELIB}"
  #   set oe-core/meta/conf/bitbake.conf:11
  #     [vardepvalue] "${baselib}"
  #   set oe-core/meta/conf/multilib.conf:2
  #     "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}"
  # pre-expansion value:
  #   "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}"
  baselib="lib64"

* simplify destsuffix/S setting
* I was surprised that ${WORKDIR}/${PN}-${PV} works in multilib build
  but then I've noticed that it's because destsuffix is set to S which
  is a bit uncommon, so drop that and use default "git"

* use ${STAGING_INCDIR} instead of ${RECIPE_SYSROOT}/${includedir}

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-04-07 16:58:15 -07:00
Fabio Estevam
c3f4c702ae lvgl-demo-fb: Add recipe
Add a recipe for the LVGL framebuffer GUI demo.

This allows to quickly test the LVGL framebuffer GUI demo application
by running the "demo" binary.

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2023-01-17 08:27:45 -08:00
Philippe Coval
8d75eff6af lvgl: Add dialog-lvgl recipe as demo example
This example was written just to validate lvgl on wayland,
Feel free to get inspiration from.

Origin: https://github.com/astrolabe-coop/meta-openembedded
Forwarded: https://github.com/openembedded/meta-openembedded/pull/601
Relate-to: https://git.ostc-eu.org/rzr/dialog-lvgl/-/issues/5
Relate-to: https://git.ostc-eu.org/rzr/dialog-lvgl/-/wikis/
Signed-off-by: Philippe Coval <philippe.coval.ext@huawei.com>
2022-09-06 08:43:34 -07:00
Khem Raj
ed2cb1735a lvgl,lv-lib-png,lv-drivers: Pass libdir via LIB_INSTALL_DIR to cmake
Ensures it packages correclty on all platforms e.g. pp64

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-03-21 08:25:11 -07:00
Philippe Coval
b6738f86f3 lvgl: Update to 8.1.0
Forwarded: https://github.com/openembedded/meta-openembedded/pull/489
Origin: https://booting.oniroproject.org/rzr/oniro/-/tree/sandbox/rzr/devel/master
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-22 10:15:00 -08:00
Philippe Coval
d4f9519079 lvgl: Support external wayland config
This part should be reverted once xdg-shell is supported in lvgl

Relate-to: https://github.com/lvgl/lvgl/issues/2534
Forwarded: https://github.com/openembedded/meta-openembedded/pull/483
Origin: https://git.ostc-eu.org/distro/oniro/-/merge_requests/355
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-15 08:57:25 -08:00
Philippe Coval
4aa6b803ed lvgl: Add hints about using configuration variables
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Forwarded: https://github.com/openembedded/meta-openembedded/pull/479
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-11 06:36:53 -08:00
Philippe Coval
243c83334a lvgl: Introduce global variable for configuration
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Forwarded: https://github.com/openembedded/meta-openembedded/pull/473
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-06 12:54:03 -07:00
Philippe Coval
b44f288522 lv-lib-png: Lint recipe
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-03 06:57:48 -07:00
Philippe Coval
e86355f2a2 lv-drivers: Lint recipe
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-01 05:45:17 -07:00
Philippe Coval
69fe208d2e lvgl: Lint recipe
Forwarded: https://github.com/openembedded/meta-openembedded/pull/461
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-10-25 10:40:50 -07:00
Martin Jansa
fc282987d2 lv-lib-png: add wayland to REQUIRED_DISTRO_FEATURES
* fixes:
ERROR: Nothing PROVIDES 'lvgl' (but meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb DEPENDS on or otherwise requires it)
lvgl was skipped: missing required distro feature 'wayland' (not in DISTRO_FEATURES)
ERROR: Nothing RPROVIDES 'lv-lib-png-dev' (but meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'lv-lib-png-dev'
NOTE: Runtime target 'lv-lib-png-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['lv-lib-png-dev']
ERROR: Nothing RPROVIDES 'lv-lib-png' (but meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'lv-lib-png'
NOTE: Runtime target 'lv-lib-png' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['lv-lib-png']

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-10-20 12:33:31 -07:00
Philippe Coval
74d38f9a31 lv-lib-png: Add recipe for LVGL for handling PNG format
Note that this lib will be part of next lvgl release,
meanwhile we build it without touching lvgl default config.

Relate-to: https://git.ostc-eu.org/OSTC/planning/core-os/-/issues/233
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Forwarded: https://github.com/openembedded/meta-openembedded/pull/454
Change-Id: I2e467caae8e70577e5c9a93f92efc6588cf3bfa2
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-10-19 09:23:08 -07:00
Philippe Coval
5f69cfea69 lv-drivers: Add recipe for lvgl lib
Wayland driver is supported.

Change-Id: If734c0f1037a1feeb08a2a67fa76e3142ae35af0
Forwarded: https://github.com/openembedded/meta-openembedded/pull/447
Origin: https://git.ostc-eu.org/OSTC/planning/core-os/-/issues/233
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
2021-10-06 08:59:14 -07:00
Philippe Coval
21580d65af lvgl: Add recipe for Lightweight Graphics Library
Note, this requires lv-drivers for wayland rendering.

Change-Id: I920679891d0c7b5079537af77ff4d21094178cce
Forwarded: https://github.com/openembedded/meta-openembedded/pull/447
Relate-to: https://github.com/lvgl/lvgl/issues/2534
Origin: https://git.ostc-eu.org/OSTC/planning/core-os/-/issues/233
Signed-off-by: Philippe Coval <philippe.coval@huawei.com>
2021-10-06 08:59:14 -07:00