Re: [yocto] [meta-zephyr][PATCH v2 4/4] zephyr-lvgl: new recipe

2021-11-10 Thread Naveen Saini


> -Original Message-
> From: yocto@lists.yoctoproject.org  On Behalf
> Of Bartosz Golaszewski
> Sent: Tuesday, November 9, 2021 10:43 PM
> To: yocto@lists.yoctoproject.org
> Cc: Bartosz Golaszewski ; Eilís Ní
> Fhlannagáin 
> Subject: [yocto] [meta-zephyr][PATCH v2 4/4] zephyr-lvgl: new recipe
> 
> From: Bartosz Golaszewski 
> 
> This adds a recipe for building the lvgl sample from mainline zephyr source.
> We need to include one upstream patch that fixes a build problem with lvgl
> and pull in two other modules or otherwise the default config will fail to
> build. Currently only the nordic reference devkit for
> nrf52840 is supported.
> 
> Big thanks to Eilís Ní Fhlannagáin  for
> helping me with that.
> 
> Signed-off-by: Bartosz Golaszewski 
> Signed-off-by: Eilís Ní Fhlannagáin 
> ---
>  ...0001-cmake-added-missing-file-ext-to.patch | 42 +++
>  .../zephyr-kernel/zephyr-kernel-common.inc|  1 +
>  .../zephyr-kernel/zephyr-kernel-src-2.6.1.inc |  3 ++  .../zephyr-
> kernel/zephyr-kernel-src-2.7.0.inc |  3 ++
>  .../zephyr-kernel/zephyr-kernel-src.inc   |  3 ++
>  recipes-kernel/zephyr-kernel/zephyr-lvgl.bb   | 11 +
>  6 files changed, 63 insertions(+)
>  create mode 100644 recipes-kernel/zephyr-kernel/files/0001-cmake-added-
> missing-file-ext-to.patch
>  create mode 100644 recipes-kernel/zephyr-kernel/zephyr-lvgl.bb
> 
> diff --git a/recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-
> file-ext-to.patch b/recipes-kernel/zephyr-kernel/files/0001-cmake-added-
> missing-file-ext-to.patch
> new file mode 100644
> index 000..6aeca14
> --- /dev/null
> +++ b/recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-file-e
> +++ xt-to.patch
> @@ -0,0 +1,42 @@
> +From 783c1f78c8e39751fe89d0883c8bce7336f55e94 Mon Sep 17 00:00:00
> 2001
> +From: Torsten Rasmussen 
> +Date: Thu, 19 Aug 2021 08:53:00 +0200
> +Subject: [PATCH] cmake: added missing file ext to
> +lv_font_dejavu_16_persian_hebrew.c
> +
> +CMake >= 3.20 requires file extensions explicitly added to source files.
> +
> +See CMP0115:
> +> Starting in CMake 3.20, CMake prefers all source files to have their
> +> extensions explicitly listed:
> +
> +In the CMakeLists.txt, the file lv_font_dejavu_16_persian_hebrew.c
> +was added without its .c extension, causing never CMakes ti fail
> +discovering the file.
> +
> +This has been fixed by correctly add the file as:
> +lv_font_dejavu_16_persian_hebrew.c
> +
> +Signed-off-by: Torsten Rasmussen 
> +---
> +Upstream-status: Accepted
> +
> + CMakeLists.txt | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/CMakeLists.txt b/CMakeLists.txt index 57b07c84..0f433edc
> +100644
> +--- a/CMakeLists.txt
>  b/CMakeLists.txt
> +@@ -58,7 +58,7 @@ zephyr_library_sources(
> + src/lv_misc/lv_utils.c
> +
> + src/lv_font/lv_font.c
> +-src/lv_font/lv_font_dejavu_16_persian_hebrew
> ++src/lv_font/lv_font_dejavu_16_persian_hebrew.c
> + src/lv_font/lv_font_fmt_txt.c
> + src/lv_font/lv_font_loader.c
> + src/lv_font/lv_font_montserrat_12.c
> +--
> +Gitee
> +
> diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
> b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
> index 5ae7504..04eb72b 100644
> --- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
> +++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
> @@ -31,6 +31,7 @@ ZEPHYR_MODULES:append:arm =
> "\;${S}/modules/cmsis"
>  ZEPHYR_MODULES:append:nordic = "\;${S}/modules/hal/nordic"
>  ZEPHYR_MODULES:append:stm32 = "\;${S}/modules/hal/stm32"
>  ZEPHYR_MODULES:append:openamp = "\;${S}/modules/lib/open-
> amp\;${S}/modules/hal/libmetal"
> +ZEPHYR_MODULES:append:zsegger = "\;${S}/modules/debug/segger"

[Naveen] zsegger is not defined as override, it causing build failure. If 
module is required only for lvgl sample, it can move into sample recipe !
| 
build/tmp-newlib/work/armv7m-yocto-eabi/zephyr-lvgl/2.7.0+gitAUTOINC+3f826560aa_b0612c97c1-r0/git/subsys/logging/log_backend_rtt.c:12:10:
 fatal error: SEGGER_RTT.h: No such file or directory
|12 | #include 
|   |  ^~
| compilation terminated.

It can be checked with $ bitbake zephyr-lvgl -e | grep ^ZEPHYR_MODULES=


> 
>  EXTRA_OECMAKE:append = " -DZEPHYR_MODULES=${ZEPHYR_MODULES}"
> 
> diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
> b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
> index 9f28df7..a7289f1 100644
> --- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
> +++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.

[yocto] [meta-zephyr][PATCH v2 4/4] zephyr-lvgl: new recipe

2021-11-09 Thread Bartosz Golaszewski
From: Bartosz Golaszewski 

This adds a recipe for building the lvgl sample from mainline zephyr
source. We need to include one upstream patch that fixes a build problem
with lvgl and pull in two other modules or otherwise the default config
will fail to build. Currently only the nordic reference devkit for
nrf52840 is supported.

Big thanks to Eilís Ní Fhlannagáin  for
helping me with that.

Signed-off-by: Bartosz Golaszewski 
Signed-off-by: Eilís Ní Fhlannagáin 
---
 ...0001-cmake-added-missing-file-ext-to.patch | 42 +++
 .../zephyr-kernel/zephyr-kernel-common.inc|  1 +
 .../zephyr-kernel/zephyr-kernel-src-2.6.1.inc |  3 ++
 .../zephyr-kernel/zephyr-kernel-src-2.7.0.inc |  3 ++
 .../zephyr-kernel/zephyr-kernel-src.inc   |  3 ++
 recipes-kernel/zephyr-kernel/zephyr-lvgl.bb   | 11 +
 6 files changed, 63 insertions(+)
 create mode 100644 
recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-file-ext-to.patch
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-lvgl.bb

diff --git 
a/recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-file-ext-to.patch 
b/recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-file-ext-to.patch
new file mode 100644
index 000..6aeca14
--- /dev/null
+++ 
b/recipes-kernel/zephyr-kernel/files/0001-cmake-added-missing-file-ext-to.patch
@@ -0,0 +1,42 @@
+From 783c1f78c8e39751fe89d0883c8bce7336f55e94 Mon Sep 17 00:00:00 2001
+From: Torsten Rasmussen 
+Date: Thu, 19 Aug 2021 08:53:00 +0200
+Subject: [PATCH] cmake: added missing file ext to
+ lv_font_dejavu_16_persian_hebrew.c
+
+CMake >= 3.20 requires file extensions explicitly added to source files.
+
+See CMP0115:
+> Starting in CMake 3.20, CMake prefers all source files to have their
+> extensions explicitly listed:
+
+In the CMakeLists.txt, the file lv_font_dejavu_16_persian_hebrew.c
+was added without its .c extension, causing never CMakes ti fail
+discovering the file.
+
+This has been fixed by correctly add the file as:
+lv_font_dejavu_16_persian_hebrew.c
+
+Signed-off-by: Torsten Rasmussen 
+---
+Upstream-status: Accepted
+
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 57b07c84..0f433edc 100644
+--- a/CMakeLists.txt
 b/CMakeLists.txt
+@@ -58,7 +58,7 @@ zephyr_library_sources(
+ src/lv_misc/lv_utils.c
+ 
+ src/lv_font/lv_font.c
+-src/lv_font/lv_font_dejavu_16_persian_hebrew
++src/lv_font/lv_font_dejavu_16_persian_hebrew.c
+ src/lv_font/lv_font_fmt_txt.c
+ src/lv_font/lv_font_loader.c
+ src/lv_font/lv_font_montserrat_12.c
+-- 
+Gitee
+
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
index 5ae7504..04eb72b 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
@@ -31,6 +31,7 @@ ZEPHYR_MODULES:append:arm = "\;${S}/modules/cmsis"
 ZEPHYR_MODULES:append:nordic = "\;${S}/modules/hal/nordic"
 ZEPHYR_MODULES:append:stm32 = "\;${S}/modules/hal/stm32"
 ZEPHYR_MODULES:append:openamp = 
"\;${S}/modules/lib/open-amp\;${S}/modules/hal/libmetal"
+ZEPHYR_MODULES:append:zsegger = "\;${S}/modules/debug/segger"
 
 EXTRA_OECMAKE:append = " -DZEPHYR_MODULES=${ZEPHYR_MODULES}"
 
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
index 9f28df7..a7289f1 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.6.1.inc
@@ -2,12 +2,15 @@ SRCREV_FORMAT = "default_cmsis"
 SRCREV_cmsis = "c3bd2094f92d574377f7af2aec147ae181aa5f8e"
 SRCREV_default = "2d6322d74aaac838ead46bfcba0db619cff4b534"
 SRCREV_libmetal = "39d049d4ae68e6f6d595fce7de1dcfc1024fb4eb"
+SRCREV_lvgl = "31acbaa36e9e74ab88ac81e3d21e7f1d00a71136"
 SRCREV_mbedtls = "5765cb7f75a9973ae9232d438e361a9d7bbc49e7"
 SRCREV_nordic = "574493fe29c79140df4827ab5d4a23df79d03681"
 SRCREV_open-amp = "6010f0523cbc75f551d9256cf782f173177acdef"
 SRCREV_openthread = "385e19da1ae15f27872c2543b97276a42f102ead"
+SRCREV_segger = "3a52ab222133193802d3c3b4d21730b9b1f1d2f6"
 SRCREV_stm32 = "f8ff8d25aa0a9e65948040c7b47ec67f3fa300df"
 SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
+SRCREV_TraceRecorderSource = "36c577727642457b0db7274298a4b96558374832"
 
 ZEPHYR_BRANCH = "v2.6-branch"
 PV = "2.6.1+git${SRCPV}"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.7.0.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.7.0.inc
index f425d9f..1cc9a4e 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.7.0.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.7.0.inc
@@ -2,12 +2,15 @@ SRCREV_FORMAT = "default_cmsis"
 SRCREV_cmsis = "b0612c97c1401feeb4160add6462c3627fe90fc7"
 SRCREV_default = "3f826560aaf81a444018293bd6acce3c339fe150"
 SRCREV_libmetal = "39d049d4ae68e6f6d595fce7de1dcfc1024fb4eb"
+SRCREV_lvgl = "31acbaa36e9e74ab88ac8