Re: [yocto] [meta-raspberrypi][PATCH] rpi-base: wic images depend on the kernel

2023-09-26 Thread Andrei Gherzan
Hi Joshua,

This makes sense, and thanks for the patch. Can you push this as a PR in
GitHub? It would help us run some CI before applying it.

Thanks once again,
-- 
Andrei Gherzan
gpg: rsa4096/D4D94F67AD0E9640


On Mon, Sep 25, 2023 at 9:49 PM Joshua Watt  wrote:

> wic images depend on the kernel device trees, and therefore should
> depend on virtual/kernel:do_deploy to make sure these are present in the
> deploy directory.
>
> Most of the time, this dependency is satisfied indirectly since a rootfs
> image will depend on the kernel, but add it explicitly for the cases
> where it is not.
>
> Signed-off-by: Joshua Watt 
> ---
>  conf/machine/include/rpi-base.inc | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/conf/machine/include/rpi-base.inc
> b/conf/machine/include/rpi-base.inc
> index 895fcfe..64f60ab 100644
> --- a/conf/machine/include/rpi-base.inc
> +++ b/conf/machine/include/rpi-base.inc
> @@ -149,6 +149,7 @@ IMAGE_BOOT_FILES ?= "${BOOTFILES_DIR_NAME}/* \
>   ${RPI_EXTRA_IMAGE_BOOT_FILES} \
>   "
>  do_image_wic[depends] += " \
> +virtual/kernel:do_deploy \
>  rpi-bootfiles:do_deploy \
>  ${@bb.utils.contains('RPI_USE_U_BOOT', '1', 'u-boot:do_deploy',
> '',d)} \
>  "
> --
> 2.34.1
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#61129): https://lists.yoctoproject.org/g/yocto/message/61129
Mute This Topic: https://lists.yoctoproject.org/mt/101583229/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] rpi-libcamera-apps: fix Illegal Instruction

2023-07-21 Thread Andrei Gherzan
Hi,

On Thu, Jul 20, 2023 at 7:30 PM Vivien Didelot 
wrote:

> With armv8-neon being enforced for all ARM based machines, running
> any libcamera app on raspberrypi (e.g. Raspberry Pi B Rev 2) results
> in Illegal Instruction.
>
> To fix this, defaults to TARGET_ARCH for non-aarch64 machines.
>
> Signed-off-by: Vivien Didelot 
> ---
>  recipes-multimedia/libcamera-apps/rpi-libcamera-apps_git.bb | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/recipes-multimedia/libcamera-apps/rpi-libcamera-apps_git.bb
> b/recipes-multimedia/libcamera-apps/rpi-libcamera-apps_git.bb
> index 062ded9..3460065 100644
> --- a/recipes-multimedia/libcamera-apps/rpi-libcamera-apps_git.bb
> +++ b/recipes-multimedia/libcamera-apps/rpi-libcamera-apps_git.bb
> @@ -30,7 +30,6 @@ EXTRA_OECMAKE = "\
>
>  LIBCAMERA_ARCH = "${TARGET_ARCH}"
>  LIBCAMERA_ARCH:aarch64 = "arm64"
> -LIBCAMERA_ARCH:arm = "armv8-neon"
>  EXTRA_OECMAKE += "-DENABLE_COMPILE_FLAGS_FOR_TARGET=${LIBCAMERA_ARCH}"
>

Thanks for this. It looks good. Would you be able to send it as an MR in
Github so we can CI it as well?

Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#60629): https://lists.yoctoproject.org/g/yocto/message/60629
Mute This Topic: https://lists.yoctoproject.org/mt/100273523/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [linux-yocto] [yocto-kernel-cache][master/yocto-6.1 PATCH 2/2] efi: add ACPI enablement

2023-06-12 Thread Andrei Gherzan
Hi all,

On Tue, Jun 6, 2023 at 4:33 PM Clément Péron  wrote:

> Hi,
>
> On Tue, 6 Jun 2023 at 17:32, Clément Péron via lists.yoctoproject.org
>  wrote:
> >
> > Hi,
> >
> > On 03/03/2023 17:28, Jon Mason wrote:
> > > /ATA
> > >
> > > On Wed, Mar 1, 2023 at 10:38 AM Bruce Ashfield <
> bruce.ashfi...@gmail.com> wrote:
> > >>
> > >> Patch 1/2 looks fine, but 2/2 reverts the following commit:
> > >>
> > >> ==
> > >> commit 41751659d0650c4effdd598f26febba39aeaf082
> > >> Author: Andrei Gherzan 
> > >> Date:   Mon Aug 22 19:55:10 2022 +0200
> > >>
> > >>  efi.cfg: Drop ACPI dependency
> > >>
> > >>  On X86 this will have no impact as CONFIG_ACPI is enabled by
> default. On
> > >>  the other hand, ARM64 would be affected as they don't have the
> same
> > >>  default. The defconfig for arm64 recommends CONFIG_ACPI and this
> patch
> > >>  follows this recommendation in the qemuarm64 bsp configuration
> to fix
> > >>  ACPI-only EFI boots on this arch.
> > >>
> > >>  arm (32bit) would also be unaffected as there is no ACPI support
> there
> > >>  at all. And this unconditional drop (CONFIG_ACPI) will actually
> fix a
> > >>  configuration warning when enabling EFI on a arm (32bit) machine:
> > >>
> > >>  [INFO]: config 'CONFIG_ACPI' was set, but it wasn't assignable,
> check (parent) dependencies
> > >
> > > What's weird is that I'm not seeing this issue at all, and I'm
> > > compiling with and without efi enabled.  See
> > >
> https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-kernel/linux/linux-yocto_%25.bbappend
> > >
> https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-kernel/linux/files/efi.cfg
> > >
> > > with edk2 (uefi)
> > > https://gitlab.com/jonmason00/meta-arm/-/jobs/3868649253
> > > without edk2 (using u-boot)
> > > https://gitlab.com/jonmason00/meta-arm/-/jobs/3868649241
> > >
> > > For giggles, I added the same efi.cfg to qemuarmv5 to see if it would
> > > cause an issue (as maybe the sstate is hiding the warnings), and I
> > > don't see it there either.  Is there a better way than this to
> > > replicate it?
> > >
> > > Also, if this one is holding the other back, feel free to drop and
> > > I'll mess with it again later.
> >
> > +Andrei Gherzan to this mail,
> Resent with proper email.
>
> >
> > I'm also facing the same issue, with a qemuarm64 board MACHINE_FEATURES
> > have the EFI but it refuses to boot and I needed to manually set
> > CONFIG_ACPI as it was missing to my kernel config.
> >
> > @Andrei could you explain which ACPI-only ARM64 EFI boots would break
> > with this patch?
>

Hard for me to remember the details after so long. I'm pretty sure it was
for one of the QEMU EFI machines part of the Oniro project (
https://gitlab.eclipse.org/eclipse/oniro-core/oniro/-/tree/kirkstone/meta-oniro-core/conf/machine).
I am not active on that project anymore so I won't be able to assist more
with logs and reproducible steps. Still, I'll add Stefan to this thread,
who might be able to help.

Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#12739): 
https://lists.yoctoproject.org/g/linux-yocto/message/12739
Mute This Topic: https://lists.yoctoproject.org/mt/97296889/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi] Enable Libcamera

2023-03-08 Thread Andrei Gherzan
On Tue, Mar 7, 2023 at 8:48 PM punctuation via lists.yoctoproject.org
 wrote:

> Dear community,
>
> I am using yocto for my embedded image for a compute module 4. A camera
> sensor is connected to the CM4 and the camera module is loaded correctly as
> I can use v4l2-ctl to write frames.
>
> However, libcamera is not able to find the camera when I use the "cam -l"
> app.
> I include libcamera using:
>
> IMAGE_INSTALL += "libcamera"
>
https://meta-raspberrypi.readthedocs.io/en/latest/extra-build-config.html#enable-raspberrypi-camera-v2

This might help.

> Am I missing something? I haven't been able to find any documentation on
> libcamera in yocto.
>
> Kind regards
>
--
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#59364): https://lists.yoctoproject.org/g/yocto/message/59364
Mute This Topic: https://lists.yoctoproject.org/mt/97458767/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi] Is Preempt-rt still supported in master / latest releases? #raspberrypi

2023-01-23 Thread Andrei Gherzan
On Mon, Jan 23, 2023 at 11:47:59AM +0100, Alexander Kanavin wrote:
> meta-raspberrypi kernel comes from
> https://github.com/raspberrypi/linux and they stopped providing -rt
> options some time ago.
> 
> Your options are to apply the -rt patchset to regular rpi kernel and
> enable needed options via custom .bbappend, or take linux-yocto-rt and
> see how far you get.

That would be correct. There is no support out of the box in the BSP layer and
I am not aware of any layers providing that. If we find a person who wants to
maintain a fork with the RT patches, I'm happy to bring it as an optional
kernel provider in the layer.

-- 
Andrei Gherzan

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#59038): https://lists.yoctoproject.org/g/yocto/message/59038
Mute This Topic: https://lists.yoctoproject.org/mt/96470693/21656
Mute #raspberrypi:https://lists.yoctoproject.org/g/yocto/mutehashtag/raspberrypi
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 7/7] ci: Add raspberrypi-armv8 to the build matrix

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 .github/workflows/yocto-builds.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/workflows/yocto-builds.yml 
b/.github/workflows/yocto-builds.yml
index 8644b13..3f21242 100644
--- a/.github/workflows/yocto-builds.yml
+++ b/.github/workflows/yocto-builds.yml
@@ -28,6 +28,7 @@ jobs:
   - raspberrypi-cm3
   - raspberrypi-cm
   - raspberrypi-armv7
+  - raspberrypi-armv8
 image: [rpi-test-image]
 distro: [poky]
 runs-on: [self-hosted, Linux]
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58036): https://lists.yoctoproject.org/g/yocto/message/58036
Mute This Topic: https://lists.yoctoproject.org/mt/93665591/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 6/7] Add support for a ARMv8 machine supporting multiple Raspberry Pi boards

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

The new raspberrypi-armv8.conf aims at supporting all the ARMv8
Raspberry Pi boards.

This initial support was tested on:
* Raspberry Pi 4 Model B
* Raspberry Pi 3 Model B
* Raspberry Pi 0 2 WiFi

Signed-off-by: Andrei Gherzan 
---
 conf/machine/raspberrypi-armv8.conf| 43 ++
 docs/layer-contents.md |  6 +++
 recipes-kernel/linux/linux-raspberrypi.inc |  1 +
 3 files changed, 50 insertions(+)
 create mode 100644 conf/machine/raspberrypi-armv8.conf

diff --git a/conf/machine/raspberrypi-armv8.conf 
b/conf/machine/raspberrypi-armv8.conf
new file mode 100644
index 000..fb3ffa8
--- /dev/null
+++ b/conf/machine/raspberrypi-armv8.conf
@@ -0,0 +1,43 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+#@TYPE: Machine
+#@NAME: RaspberryPi Development Boards (64bit)
+#@DESCRIPTION: Machine configuration for the RaspberryPi boards in 64 bit mode
+
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
+include conf/machine/include/rpi-base.inc
+
+MACHINE_FEATURES += "pci"
+MACHINE_EXTRA_RRECOMMENDS += "\
+linux-firmware-rpidistro-bcm43430 \
+linux-firmware-rpidistro-bcm43455 \
+linux-firmware-rpidistro-bcm43456 \
+linux-firmware-rpidistro-bcm43436 \
+linux-firmware-rpidistro-bcm43436s \
+bluez-firmware-rpidistro-bcm43430a1-hcd \
+bluez-firmware-rpidistro-bcm43430b0-hcd \
+bluez-firmware-rpidistro-bcm4345c0-hcd \
+bluez-firmware-rpidistro-bcm4345c5-hcd \
+"
+
+RPI_KERNEL_DEVICETREE = " \
+broadcom/bcm2710-rpi-3-b.dtb \
+broadcom/bcm2710-rpi-3-b-plus.dtb \
+broadcom/bcm2837-rpi-3-b.dtb \
+broadcom/bcm2710-rpi-cm3.dtb \
+broadcom/bcm2710-rpi-zero-2.dtb \
+broadcom/bcm2711-rpi-4-b.dtb \
+broadcom/bcm2711-rpi-400.dtb \
+broadcom/bcm2711-rpi-cm4.dtb \
+"
+
+SDIMG_KERNELIMAGE ?= "kernel8.img"
+KERNEL_IMAGETYPE_UBOOT ?= "Image"
+KERNEL_IMAGETYPE_DIRECT ?= "Image"
+KERNEL_BOOTCMD ?= "booti"
+UBOOT_MACHINE = "rpi_arm64_config"
+SERIAL_CONSOLES ?= "115200;ttyS0"
+
+VC4DTBO ?= "vc4-fkms-v3d"
diff --git a/docs/layer-contents.md b/docs/layer-contents.md
index aa28a23..3882339 100644
--- a/docs/layer-contents.md
+++ b/docs/layer-contents.md
@@ -32,6 +32,12 @@ This machine targets support for all the ARMv7-based 
Raspberry Pi boards. It
 will pull in the firmware and deploy the kernel image and kernel modules for
 all the relevant boards.
 
+### raspberrypi-armv8
+
+This machine targets support for all the ARMv8-based Raspberry Pi boards. It
+will pull in the firmware and deploy the kernel image and kernel modules for
+all the relevant boards.
+
 ## Images
 
 * rpi-test-image
diff --git a/recipes-kernel/linux/linux-raspberrypi.inc 
b/recipes-kernel/linux/linux-raspberrypi.inc
index 2a651bd..be1883c 100644
--- a/recipes-kernel/linux/linux-raspberrypi.inc
+++ b/recipes-kernel/linux/linux-raspberrypi.inc
@@ -27,6 +27,7 @@ KBUILD_DEFCONFIG:raspberrypi3-64 ?= "bcmrpi3_defconfig"
 KBUILD_DEFCONFIG:raspberrypi4 ?= "bcm2711_defconfig"
 KBUILD_DEFCONFIG:raspberrypi4-64 ?= "bcm2711_defconfig"
 KBUILD_DEFCONFIG:raspberrypi-armv7 ?= "bcm2711_defconfig"
+KBUILD_DEFCONFIG:raspberrypi-armv8 ?= "bcm2711_defconfig"
 
 LINUX_VERSION_EXTENSION ?= ""
 
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58035): https://lists.yoctoproject.org/g/yocto/message/58035
Mute This Topic: https://lists.yoctoproject.org/mt/93665590/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 5/7] ci: Add raspberrypi-armv7 to the build matrix

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 .github/workflows/yocto-builds.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/workflows/yocto-builds.yml 
b/.github/workflows/yocto-builds.yml
index 824745c..8644b13 100644
--- a/.github/workflows/yocto-builds.yml
+++ b/.github/workflows/yocto-builds.yml
@@ -27,6 +27,7 @@ jobs:
   - raspberrypi4
   - raspberrypi-cm3
   - raspberrypi-cm
+  - raspberrypi-armv7
 image: [rpi-test-image]
 distro: [poky]
 runs-on: [self-hosted, Linux]
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58034): https://lists.yoctoproject.org/g/yocto/message/58034
Mute This Topic: https://lists.yoctoproject.org/mt/93665588/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 4/7] Add support for a ARMv7 machine supporting multiple Raspberry Pi boards

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

The new raspberrypi-armv7.conf aims at supporting all the ARMv7
Raspberry Pi boards.

This initial support was tested on:
* Raspberry Pi 4 Model B
* Raspberry Pi 3 Model B
* Raspberry Pi 0 2 WiFi

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-default-versions.inc |  1 +
 conf/machine/raspberrypi-armv7.conf   | 39 +++
 docs/layer-contents.md| 16 
 recipes-kernel/linux/linux-raspberrypi-v7.inc | 13 +++
 .../linux/linux-raspberrypi-v7_5.10.bb|  6 +++
 .../linux/linux-raspberrypi-v7_5.15.bb|  6 +++
 recipes-kernel/linux/linux-raspberrypi.inc|  1 +
 .../linux/linux-raspberrypi_5.15.bb   | 12 ++
 8 files changed, 94 insertions(+)
 create mode 100644 conf/machine/raspberrypi-armv7.conf
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7.inc
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.15.bb

diff --git a/conf/machine/include/rpi-default-versions.inc 
b/conf/machine/include/rpi-default-versions.inc
index 8ff2839..a29fd5e 100644
--- a/conf/machine/include/rpi-default-versions.inc
+++ b/conf/machine/include/rpi-default-versions.inc
@@ -1,3 +1,4 @@
 # RaspberryPi BSP default versions
 
 PREFERRED_VERSION_linux-raspberrypi ??= "5.15.%"
+PREFERRED_VERSION_linux-raspberrypi-v7 ??= 
"${PREFERRED_VERSION_linux-raspberrypi}"
diff --git a/conf/machine/raspberrypi-armv7.conf 
b/conf/machine/raspberrypi-armv7.conf
new file mode 100644
index 000..cb2e5a2
--- /dev/null
+++ b/conf/machine/raspberrypi-armv7.conf
@@ -0,0 +1,39 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+#@TYPE: Machine
+#@NAME: RaspberryPi Development Boards (32bit)
+#@DESCRIPTION: Machine configuration for the RaspberryPi boards in 32 bit mode
+
+DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
+require conf/machine/include/arm/armv7a/tune-cortexa7.inc
+include conf/machine/include/rpi-base.inc
+
+# This machine includes by default the kernel for v7l. We hook in support for
+# v7.
+RASPBERRYPI_v7_KERNEL = "linux-raspberrypi-v7"
+RASPBERRYPI_v7_KERNEL_PACKAGE_NAME = "kernel-v7"
+RASPBERRYPI_v7_KERNEL_FILE ?= "kernel7.img"
+# We don't need a lot for v7l because it is the default provider,
+# virtual/kernel.
+RASPBERRYPI_v7l_KERNEL_FILE ?= "kernel7l.img"
+
+MACHINE_FEATURES += "pci"
+MACHINE_EXTRA_RRECOMMENDS += "\
+linux-firmware-rpidistro-bcm43430 \
+linux-firmware-rpidistro-bcm43436 \
+linux-firmware-rpidistro-bcm43436s \
+linux-firmware-rpidistro-bcm43455 \
+linux-firmware-rpidistro-bcm43456 \
+bluez-firmware-rpidistro-bcm43430a1-hcd \
+bluez-firmware-rpidistro-bcm43430b0-hcd \
+bluez-firmware-rpidistro-bcm4345c0-hcd \
+bluez-firmware-rpidistro-bcm4345c5-hcd \
+"
+
+# FIXME: This machine doesn't support u-boot (yet)
+RPI_EXTRA_IMAGE_BOOT_FILES = " \
+   ${KERNEL_IMAGETYPE};${RASPBERRYPI_v7l_KERNEL_FILE} \
+   
${RASPBERRYPI_v7_KERNEL_PACKAGE_NAME}/${KERNEL_IMAGETYPE};${RASPBERRYPI_v7_KERNEL_FILE}
 \
+"
diff --git a/docs/layer-contents.md b/docs/layer-contents.md
index d12cb88..aa28a23 100644
--- a/docs/layer-contents.md
+++ b/docs/layer-contents.md
@@ -16,6 +16,22 @@
 
 Note: The raspberrypi3 machines include support for Raspberry Pi 3B+.
 
+## Multi-board Machines
+
+This layer generally provides support for machines that are targetting a single
+Raspberry Pi board (or a very few subsets of them). This is so that the build
+infrastructure can tune and tweak the configuration with the flexibility to
+optimise for both runtime performance and disk storage.
+
+For usecases where compatibility of more boards is required, the layer provides
+machines that are tagetting a wider support of Raspberry Pi boards.
+
+### raspberrypi-armv7
+
+This machine targets support for all the ARMv7-based Raspberry Pi boards. It
+will pull in the firmware and deploy the kernel image and kernel modules for
+all the relevant boards.
+
 ## Images
 
 * rpi-test-image
diff --git a/recipes-kernel/linux/linux-raspberrypi-v7.inc 
b/recipes-kernel/linux/linux-raspberrypi-v7.inc
new file mode 100644
index 000..77debc4
--- /dev/null
+++ b/recipes-kernel/linux/linux-raspberrypi-v7.inc
@@ -0,0 +1,13 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+KBUILD_DEFCONFIG:raspberrypi-armv7 = "bcm2709_defconfig"
+KERNEL_PACKAGE_NAME = "${RASPBERRYPI_v7_KERNEL_PACKAGE_NAME}"
+PROVIDES:remove = "virtual/kernel"
+
+KERNEL_IMAGETYPE_DIRECT ?= "zImage"
+
+COMPATIBLE_MACHINE = "^raspberrypi-armv7$"
+
+KERNEL_DEVICETREE = ""
diff --git a/recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb 
b/recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
new file mode 100644
index 000..d594b61
--- /dev/null
+++ b/recipes-kern

[yocto] [meta-raspberrypi][PATCH v2 3/7] rpi-base.inc: Split IMAGE_BOOT_FILES for kernel image

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

The kernel image deployment is now defined in IMAGE_BOOT_FILES as a
separate variable: RPI_EXTRA_IMAGE_BOOT_FILES. This allows a custom
kernel image deployment by redefining this variable when needed.

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-base.inc | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/conf/machine/include/rpi-base.inc 
b/conf/machine/include/rpi-base.inc
index beb1f08..313c7d9 100644
--- a/conf/machine/include/rpi-base.inc
+++ b/conf/machine/include/rpi-base.inc
@@ -134,12 +134,15 @@ def make_dtb_boot_files(d):
 
 return ' '.join([transform(dtb) for dtb in alldtbs.split(' ') if dtb])
 
+RPI_EXTRA_IMAGE_BOOT_FILES ?= " \
+   ${@bb.utils.contains('RPI_USE_U_BOOT', '1', \
+   '${KERNEL_IMAGETYPE} u-boot.bin;${SDIMG_KERNELIMAGE} boot.scr', 
\
+   '${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE}', d)} \
+   "
 
 IMAGE_BOOT_FILES ?= "${BOOTFILES_DIR_NAME}/* \
  ${@make_dtb_boot_files(d)} \
- ${@bb.utils.contains('RPI_USE_U_BOOT', '1', \
-'${KERNEL_IMAGETYPE} u-boot.bin;${SDIMG_KERNELIMAGE} 
boot.scr', \
-'${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE}', d)} \
+ ${RPI_EXTRA_IMAGE_BOOT_FILES} \
  "
 do_image_wic[depends] += " \
 rpi-bootfiles:do_deploy \
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58032): https://lists.yoctoproject.org/g/yocto/message/58032
Mute This Topic: https://lists.yoctoproject.org/mt/93665585/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 2/7] raspberrypi0-2w.conf: Include the RPi 0-2w dtb for all 32-bit machines

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

All 32-bit machines are sharing the list of machine dtbs with the
exception of raspberrypi0-2w. Move this away too to unify the
machine configurations.

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-base.inc | 1 +
 conf/machine/raspberrypi0-2w.conf | 4 
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/conf/machine/include/rpi-base.inc 
b/conf/machine/include/rpi-base.inc
index a2edf06..beb1f08 100644
--- a/conf/machine/include/rpi-base.inc
+++ b/conf/machine/include/rpi-base.inc
@@ -68,6 +68,7 @@ RPI_KERNEL_DEVICETREE ?= " \
 bcm2710-rpi-2-b.dtb \
 bcm2710-rpi-3-b.dtb \
 bcm2710-rpi-3-b-plus.dtb \
+bcm2710-rpi-zero-2.dtb \
 bcm2711-rpi-4-b.dtb \
 bcm2711-rpi-400.dtb \
 bcm2708-rpi-cm.dtb \
diff --git a/conf/machine/raspberrypi0-2w.conf 
b/conf/machine/raspberrypi0-2w.conf
index c360d90..63c7bfb 100644
--- a/conf/machine/raspberrypi0-2w.conf
+++ b/conf/machine/raspberrypi0-2w.conf
@@ -11,7 +11,3 @@ MACHINE_EXTRA_RRECOMMENDS += "\
 linux-firmware-rpidistro-bcm43436s \
 bluez-firmware-rpidistro-bcm43430b0-hcd \
 "
-
-RPI_KERNEL_DEVICETREE = " \
-bcm2710-rpi-zero-2.dtb \
-"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58031): https://lists.yoctoproject.org/g/yocto/message/58031
Mute This Topic: https://lists.yoctoproject.org/mt/93665584/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 1/7] sdcard_image-rpi.bbclass: Move SDIMG_KERNELIMAGE definitions to their machines

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

This unifies the configuration of SDIMG_KERNELIMAGE across machines.

Signed-off-by: Andrei Gherzan 
---
 classes/sdcard_image-rpi.bbclass  | 5 -
 conf/machine/raspberrypi.conf | 4 ++--
 conf/machine/raspberrypi2.conf| 2 +-
 conf/machine/raspberrypi3-64.conf | 7 +++
 4 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/classes/sdcard_image-rpi.bbclass b/classes/sdcard_image-rpi.bbclass
index a7b9ac8..178e4ef 100644
--- a/classes/sdcard_image-rpi.bbclass
+++ b/classes/sdcard_image-rpi.bbclass
@@ -25,11 +25,6 @@ inherit image_types
 # This image depends on the rootfs image
 IMAGE_TYPEDEP:rpi-sdimg = "${SDIMG_ROOTFS_TYPE}"
 
-# Kernel image name
-SDIMG_KERNELIMAGE:raspberrypi  ?= "kernel.img"
-SDIMG_KERNELIMAGE:raspberrypi2 ?= "kernel7.img"
-SDIMG_KERNELIMAGE:raspberrypi3-64 ?= "kernel8.img"
-
 # Boot partition volume id
 # Shorten raspberrypi to just rpi to keep it under 11 characters
 # now enforced by mkfs.vfat from dosfstools-4.2
diff --git a/conf/machine/raspberrypi.conf b/conf/machine/raspberrypi.conf
index b23687b..05263d7 100644
--- a/conf/machine/raspberrypi.conf
+++ b/conf/machine/raspberrypi.conf
@@ -7,8 +7,8 @@ DEFAULTTUNE ?= "arm1176jzfshf"
 require conf/machine/include/tune-arm1176jzf-s.inc
 include conf/machine/include/rpi-base.inc
 
-SERIAL_CONSOLES ?= "115200;ttyAMA0"
-
+SDIMG_KERNELIMAGE  ?= "kernel.img"
 UBOOT_MACHINE = "rpi_config"
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
 
 ARMSTUB ?= "armstub.bin"
diff --git a/conf/machine/raspberrypi2.conf b/conf/machine/raspberrypi2.conf
index 403d15e..8cb859e 100644
--- a/conf/machine/raspberrypi2.conf
+++ b/conf/machine/raspberrypi2.conf
@@ -7,8 +7,8 @@ DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
 require conf/machine/include/arm/armv7a/tune-cortexa7.inc
 include conf/machine/include/rpi-base.inc
 
+SDIMG_KERNELIMAGE ?= "kernel7.img"
 SERIAL_CONSOLES ?= "115200;ttyAMA0"
-
 UBOOT_MACHINE = "rpi_2_config"
 
 ARMSTUB ?= "armstub7.bin"
diff --git a/conf/machine/raspberrypi3-64.conf 
b/conf/machine/raspberrypi3-64.conf
index 95475f3..573b079 100644
--- a/conf/machine/raspberrypi3-64.conf
+++ b/conf/machine/raspberrypi3-64.conf
@@ -21,16 +21,15 @@ RPI_KERNEL_DEVICETREE = " \
 broadcom/bcm2710-rpi-cm3.dtb \
 "
 
-SERIAL_CONSOLES ?= "115200;ttyS0"
-
-UBOOT_MACHINE = "rpi_arm64_config"
-
+SDIMG_KERNELIMAGE ?= "kernel8.img"
 # When u-boot is enabled we need to use the "Image" format and the "booti"
 # command to load the kernel
 KERNEL_IMAGETYPE_UBOOT ?= "Image"
 # "zImage" not supported on arm64 and ".gz" images not supported by bootloader 
yet
 KERNEL_IMAGETYPE_DIRECT ?= "Image"
 KERNEL_BOOTCMD ?= "booti"
+UBOOT_MACHINE = "rpi_arm64_config"
+SERIAL_CONSOLES ?= "115200;ttyS0"
 
 VC4DTBO ?= "vc4-fkms-v3d"
 ARMSTUB ?= "armstub8.bin"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58030): https://lists.yoctoproject.org/g/yocto/message/58030
Mute This Topic: https://lists.yoctoproject.org/mt/93665583/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH v2 0/7] Add support for multi kernel Raspberry Pi machines

2022-09-13 Thread Andrei Gherzan
From: Andrei Gherzan 

PATCH v2:

* the patches (depmod fixes) below were merged in oe-core/master (FYI)
* added support for a similar (but simpler) armv8 machine - with CI

PATCH v1:

The new raspberrypi-armv7.conf aims at supporting all the armv7
Raspberry Pi boards.

This initial support was tested on:

- Raspberry Pi 4 Model B
- Raspberry Pi 3 Model B
- Raspberry Pi 0 2 WiFi

Tests:

- Boot
- WiFi
- BT
- Modules load

There is a known limitation of the fact that the core doesn't handle
image depmod for multiple kernels. A set of fixes were proposed for
that:

https://lists.openembedded.org/g/openembedded-core/message/170505
https://lists.openembedded.org/g/openembedded-core/message/170506
https://lists.openembedded.org/g/openembedded-core/message/170507
https://lists.openembedded.org/g/openembedded-core/message/170508

Without these (or similar patches) patches, an additional step is
needed on any board but Raspberry Pi 4: for example running `depmod -a`
at first boot.

Andrei Gherzan (7):
  sdcard_image-rpi.bbclass: Move SDIMG_KERNELIMAGE definitions to their
machines
  raspberrypi0-2w.conf: Include the RPi 0-2w dtb for all 32-bit machines
  rpi-base.inc: Split IMAGE_BOOT_FILES for kernel image
  Add support for a ARMv7 machine supporting multiple Raspberry Pi
boards
  ci: Add raspberrypi-armv7 to the build matrix
  Add support for a ARMv8 machine supporting multiple Raspberry Pi
boards
  ci: Add raspberrypi-armv8 to the build matrix

 .github/workflows/yocto-builds.yml|  2 +
 classes/sdcard_image-rpi.bbclass  |  5 ---
 conf/machine/include/rpi-base.inc | 10 +++--
 conf/machine/include/rpi-default-versions.inc |  1 +
 conf/machine/raspberrypi-armv7.conf   | 39 +
 conf/machine/raspberrypi-armv8.conf   | 43 +++
 conf/machine/raspberrypi.conf |  4 +-
 conf/machine/raspberrypi0-2w.conf |  4 --
 conf/machine/raspberrypi2.conf|  2 +-
 conf/machine/raspberrypi3-64.conf |  7 ++-
 docs/layer-contents.md| 22 ++
 recipes-kernel/linux/linux-raspberrypi-v7.inc | 13 ++
 .../linux/linux-raspberrypi-v7_5.10.bb|  6 +++
 .../linux/linux-raspberrypi-v7_5.15.bb|  6 +++
 recipes-kernel/linux/linux-raspberrypi.inc|  2 +
 .../linux/linux-raspberrypi_5.15.bb   | 12 ++
 16 files changed, 159 insertions(+), 19 deletions(-)
 create mode 100644 conf/machine/raspberrypi-armv7.conf
 create mode 100644 conf/machine/raspberrypi-armv8.conf
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7.inc
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.15.bb

-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58029): https://lists.yoctoproject.org/g/yocto/message/58029
Mute This Topic: https://lists.yoctoproject.org/mt/93665582/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 5/5] ci: Add raspberrypi-armv7 to the build matrix

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 .github/workflows/yocto-builds.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/workflows/yocto-builds.yml 
b/.github/workflows/yocto-builds.yml
index 824745c..8644b13 100644
--- a/.github/workflows/yocto-builds.yml
+++ b/.github/workflows/yocto-builds.yml
@@ -27,6 +27,7 @@ jobs:
   - raspberrypi4
   - raspberrypi-cm3
   - raspberrypi-cm
+  - raspberrypi-armv7
 image: [rpi-test-image]
 distro: [poky]
 runs-on: [self-hosted, Linux]
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58017): https://lists.yoctoproject.org/g/yocto/message/58017
Mute This Topic: https://lists.yoctoproject.org/mt/93603429/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 4/5] Add support for a multi kernel Raspberry Pi machine

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

The new raspberrypi-armv7.conf aims at supporting all the armv7
Raspberry Pi boards.

This initial support was tested on:
* Raspberry Pi 4 Model B
* Raspberry Pi 3 Model B
* Raspberry Pi 0 2 WiFi

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-default-versions.inc |  1 +
 conf/machine/raspberrypi-armv7.conf   | 39 +++
 docs/layer-contents.md| 16 
 recipes-kernel/linux/linux-raspberrypi-v7.inc | 13 +++
 .../linux/linux-raspberrypi-v7_5.10.bb|  6 +++
 .../linux/linux-raspberrypi-v7_5.15.bb|  6 +++
 recipes-kernel/linux/linux-raspberrypi.inc|  1 +
 .../linux/linux-raspberrypi_5.15.bb   | 12 ++
 8 files changed, 94 insertions(+)
 create mode 100644 conf/machine/raspberrypi-armv7.conf
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7.inc
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.15.bb

diff --git a/conf/machine/include/rpi-default-versions.inc 
b/conf/machine/include/rpi-default-versions.inc
index 8ff2839..a29fd5e 100644
--- a/conf/machine/include/rpi-default-versions.inc
+++ b/conf/machine/include/rpi-default-versions.inc
@@ -1,3 +1,4 @@
 # RaspberryPi BSP default versions
 
 PREFERRED_VERSION_linux-raspberrypi ??= "5.15.%"
+PREFERRED_VERSION_linux-raspberrypi-v7 ??= 
"${PREFERRED_VERSION_linux-raspberrypi}"
diff --git a/conf/machine/raspberrypi-armv7.conf 
b/conf/machine/raspberrypi-armv7.conf
new file mode 100644
index 000..cb2e5a2
--- /dev/null
+++ b/conf/machine/raspberrypi-armv7.conf
@@ -0,0 +1,39 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+#@TYPE: Machine
+#@NAME: RaspberryPi Development Boards (32bit)
+#@DESCRIPTION: Machine configuration for the RaspberryPi boards in 32 bit mode
+
+DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
+require conf/machine/include/arm/armv7a/tune-cortexa7.inc
+include conf/machine/include/rpi-base.inc
+
+# This machine includes by default the kernel for v7l. We hook in support for
+# v7.
+RASPBERRYPI_v7_KERNEL = "linux-raspberrypi-v7"
+RASPBERRYPI_v7_KERNEL_PACKAGE_NAME = "kernel-v7"
+RASPBERRYPI_v7_KERNEL_FILE ?= "kernel7.img"
+# We don't need a lot for v7l because it is the default provider,
+# virtual/kernel.
+RASPBERRYPI_v7l_KERNEL_FILE ?= "kernel7l.img"
+
+MACHINE_FEATURES += "pci"
+MACHINE_EXTRA_RRECOMMENDS += "\
+linux-firmware-rpidistro-bcm43430 \
+linux-firmware-rpidistro-bcm43436 \
+linux-firmware-rpidistro-bcm43436s \
+linux-firmware-rpidistro-bcm43455 \
+linux-firmware-rpidistro-bcm43456 \
+bluez-firmware-rpidistro-bcm43430a1-hcd \
+bluez-firmware-rpidistro-bcm43430b0-hcd \
+bluez-firmware-rpidistro-bcm4345c0-hcd \
+bluez-firmware-rpidistro-bcm4345c5-hcd \
+"
+
+# FIXME: This machine doesn't support u-boot (yet)
+RPI_EXTRA_IMAGE_BOOT_FILES = " \
+   ${KERNEL_IMAGETYPE};${RASPBERRYPI_v7l_KERNEL_FILE} \
+   
${RASPBERRYPI_v7_KERNEL_PACKAGE_NAME}/${KERNEL_IMAGETYPE};${RASPBERRYPI_v7_KERNEL_FILE}
 \
+"
diff --git a/docs/layer-contents.md b/docs/layer-contents.md
index d12cb88..aa28a23 100644
--- a/docs/layer-contents.md
+++ b/docs/layer-contents.md
@@ -16,6 +16,22 @@
 
 Note: The raspberrypi3 machines include support for Raspberry Pi 3B+.
 
+## Multi-board Machines
+
+This layer generally provides support for machines that are targetting a single
+Raspberry Pi board (or a very few subsets of them). This is so that the build
+infrastructure can tune and tweak the configuration with the flexibility to
+optimise for both runtime performance and disk storage.
+
+For usecases where compatibility of more boards is required, the layer provides
+machines that are tagetting a wider support of Raspberry Pi boards.
+
+### raspberrypi-armv7
+
+This machine targets support for all the ARMv7-based Raspberry Pi boards. It
+will pull in the firmware and deploy the kernel image and kernel modules for
+all the relevant boards.
+
 ## Images
 
 * rpi-test-image
diff --git a/recipes-kernel/linux/linux-raspberrypi-v7.inc 
b/recipes-kernel/linux/linux-raspberrypi-v7.inc
new file mode 100644
index 000..77debc4
--- /dev/null
+++ b/recipes-kernel/linux/linux-raspberrypi-v7.inc
@@ -0,0 +1,13 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+KBUILD_DEFCONFIG:raspberrypi-armv7 = "bcm2709_defconfig"
+KERNEL_PACKAGE_NAME = "${RASPBERRYPI_v7_KERNEL_PACKAGE_NAME}"
+PROVIDES:remove = "virtual/kernel"
+
+KERNEL_IMAGETYPE_DIRECT ?= "zImage"
+
+COMPATIBLE_MACHINE = "^raspberrypi-armv7$"
+
+KERNEL_DEVICETREE = ""
diff --git a/recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb 
b/recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
new file mode 100644
index 000..d594b61
--- /dev/null
+++ b/recipes-kern

[yocto] [meta-raspberrypi][PATCH 3/5] rpi-base.inc: Split IMAGE_BOOT_FILES for kernel image

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

The kernel image deployment is now defined in IMAGE_BOOT_FILES as a
separate variable: RPI_EXTRA_IMAGE_BOOT_FILES. This allows a custom
kernel image deployment by redefining this variable when needed.

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-base.inc | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/conf/machine/include/rpi-base.inc 
b/conf/machine/include/rpi-base.inc
index beb1f08..313c7d9 100644
--- a/conf/machine/include/rpi-base.inc
+++ b/conf/machine/include/rpi-base.inc
@@ -134,12 +134,15 @@ def make_dtb_boot_files(d):
 
 return ' '.join([transform(dtb) for dtb in alldtbs.split(' ') if dtb])
 
+RPI_EXTRA_IMAGE_BOOT_FILES ?= " \
+   ${@bb.utils.contains('RPI_USE_U_BOOT', '1', \
+   '${KERNEL_IMAGETYPE} u-boot.bin;${SDIMG_KERNELIMAGE} boot.scr', 
\
+   '${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE}', d)} \
+   "
 
 IMAGE_BOOT_FILES ?= "${BOOTFILES_DIR_NAME}/* \
  ${@make_dtb_boot_files(d)} \
- ${@bb.utils.contains('RPI_USE_U_BOOT', '1', \
-'${KERNEL_IMAGETYPE} u-boot.bin;${SDIMG_KERNELIMAGE} 
boot.scr', \
-'${KERNEL_IMAGETYPE};${SDIMG_KERNELIMAGE}', d)} \
+ ${RPI_EXTRA_IMAGE_BOOT_FILES} \
  "
 do_image_wic[depends] += " \
 rpi-bootfiles:do_deploy \
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58015): https://lists.yoctoproject.org/g/yocto/message/58015
Mute This Topic: https://lists.yoctoproject.org/mt/93603424/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 1/5] sdcard_image-rpi.bbclass: Move SDIMG_KERNELIMAGE definitions to their machines

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

This unifies the configuration of SDIMG_KERNELIMAGE across machines.

Signed-off-by: Andrei Gherzan 
---
 classes/sdcard_image-rpi.bbclass  | 5 -
 conf/machine/raspberrypi.conf | 4 ++--
 conf/machine/raspberrypi2.conf| 2 +-
 conf/machine/raspberrypi3-64.conf | 7 +++
 4 files changed, 6 insertions(+), 12 deletions(-)

diff --git a/classes/sdcard_image-rpi.bbclass b/classes/sdcard_image-rpi.bbclass
index a7b9ac8..178e4ef 100644
--- a/classes/sdcard_image-rpi.bbclass
+++ b/classes/sdcard_image-rpi.bbclass
@@ -25,11 +25,6 @@ inherit image_types
 # This image depends on the rootfs image
 IMAGE_TYPEDEP:rpi-sdimg = "${SDIMG_ROOTFS_TYPE}"
 
-# Kernel image name
-SDIMG_KERNELIMAGE:raspberrypi  ?= "kernel.img"
-SDIMG_KERNELIMAGE:raspberrypi2 ?= "kernel7.img"
-SDIMG_KERNELIMAGE:raspberrypi3-64 ?= "kernel8.img"
-
 # Boot partition volume id
 # Shorten raspberrypi to just rpi to keep it under 11 characters
 # now enforced by mkfs.vfat from dosfstools-4.2
diff --git a/conf/machine/raspberrypi.conf b/conf/machine/raspberrypi.conf
index b23687b..05263d7 100644
--- a/conf/machine/raspberrypi.conf
+++ b/conf/machine/raspberrypi.conf
@@ -7,8 +7,8 @@ DEFAULTTUNE ?= "arm1176jzfshf"
 require conf/machine/include/tune-arm1176jzf-s.inc
 include conf/machine/include/rpi-base.inc
 
-SERIAL_CONSOLES ?= "115200;ttyAMA0"
-
+SDIMG_KERNELIMAGE  ?= "kernel.img"
 UBOOT_MACHINE = "rpi_config"
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
 
 ARMSTUB ?= "armstub.bin"
diff --git a/conf/machine/raspberrypi2.conf b/conf/machine/raspberrypi2.conf
index 403d15e..8cb859e 100644
--- a/conf/machine/raspberrypi2.conf
+++ b/conf/machine/raspberrypi2.conf
@@ -7,8 +7,8 @@ DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
 require conf/machine/include/arm/armv7a/tune-cortexa7.inc
 include conf/machine/include/rpi-base.inc
 
+SDIMG_KERNELIMAGE ?= "kernel7.img"
 SERIAL_CONSOLES ?= "115200;ttyAMA0"
-
 UBOOT_MACHINE = "rpi_2_config"
 
 ARMSTUB ?= "armstub7.bin"
diff --git a/conf/machine/raspberrypi3-64.conf 
b/conf/machine/raspberrypi3-64.conf
index 95475f3..573b079 100644
--- a/conf/machine/raspberrypi3-64.conf
+++ b/conf/machine/raspberrypi3-64.conf
@@ -21,16 +21,15 @@ RPI_KERNEL_DEVICETREE = " \
 broadcom/bcm2710-rpi-cm3.dtb \
 "
 
-SERIAL_CONSOLES ?= "115200;ttyS0"
-
-UBOOT_MACHINE = "rpi_arm64_config"
-
+SDIMG_KERNELIMAGE ?= "kernel8.img"
 # When u-boot is enabled we need to use the "Image" format and the "booti"
 # command to load the kernel
 KERNEL_IMAGETYPE_UBOOT ?= "Image"
 # "zImage" not supported on arm64 and ".gz" images not supported by bootloader 
yet
 KERNEL_IMAGETYPE_DIRECT ?= "Image"
 KERNEL_BOOTCMD ?= "booti"
+UBOOT_MACHINE = "rpi_arm64_config"
+SERIAL_CONSOLES ?= "115200;ttyS0"
 
 VC4DTBO ?= "vc4-fkms-v3d"
 ARMSTUB ?= "armstub8.bin"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58014): https://lists.yoctoproject.org/g/yocto/message/58014
Mute This Topic: https://lists.yoctoproject.org/mt/93603423/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 2/5] raspberrypi0-2w.conf: Include the RPi 0-2w dtb for all 32-bit machines

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

All 32-bit machines are sharing the list of machine dtbs with the
exception of raspberrypi0-2w. Move this away too to unify the
machine configurations.

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-base.inc | 1 +
 conf/machine/raspberrypi0-2w.conf | 4 
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/conf/machine/include/rpi-base.inc 
b/conf/machine/include/rpi-base.inc
index a2edf06..beb1f08 100644
--- a/conf/machine/include/rpi-base.inc
+++ b/conf/machine/include/rpi-base.inc
@@ -68,6 +68,7 @@ RPI_KERNEL_DEVICETREE ?= " \
 bcm2710-rpi-2-b.dtb \
 bcm2710-rpi-3-b.dtb \
 bcm2710-rpi-3-b-plus.dtb \
+bcm2710-rpi-zero-2.dtb \
 bcm2711-rpi-4-b.dtb \
 bcm2711-rpi-400.dtb \
 bcm2708-rpi-cm.dtb \
diff --git a/conf/machine/raspberrypi0-2w.conf 
b/conf/machine/raspberrypi0-2w.conf
index c360d90..63c7bfb 100644
--- a/conf/machine/raspberrypi0-2w.conf
+++ b/conf/machine/raspberrypi0-2w.conf
@@ -11,7 +11,3 @@ MACHINE_EXTRA_RRECOMMENDS += "\
 linux-firmware-rpidistro-bcm43436s \
 bluez-firmware-rpidistro-bcm43430b0-hcd \
 "
-
-RPI_KERNEL_DEVICETREE = " \
-bcm2710-rpi-zero-2.dtb \
-"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58013): https://lists.yoctoproject.org/g/yocto/message/58013
Mute This Topic: https://lists.yoctoproject.org/mt/93603422/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 0/5] Add support for a multi kernel Raspberry Pi machine

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

The new raspberrypi-armv7.conf aims at supporting all the armv7
Raspberry Pi boards.

This initial support was tested on:

- Raspberry Pi 4 Model B
- Raspberry Pi 3 Model B
- Raspberry Pi 0 2 WiFi

Tests:

- Boot
- WiFi
- BT
- Modules load

There is a known limitation of the fact that the core doesn't handle
image depmod for multiple kernels. A set of fixes were proposed for
that:

https://lists.openembedded.org/g/openembedded-core/message/170505
https://lists.openembedded.org/g/openembedded-core/message/170506
https://lists.openembedded.org/g/openembedded-core/message/170507
https://lists.openembedded.org/g/openembedded-core/message/170508

Without these (or similar patches) patches, an additional step is
needed on any board but Raspberry Pi 4: for example running `depmod -a`
at first boot.

Andrei Gherzan (5):
  sdcard_image-rpi.bbclass: Move SDIMG_KERNELIMAGE definitions to their
machines
  raspberrypi0-2w.conf: Include the RPi 0-2w dtb for all 32-bit machines
  rpi-base.inc: Split IMAGE_BOOT_FILES for kernel image
  Add support for a multi kernel Raspberry Pi machine
  ci: Add raspberrypi-armv7 to the build matrix

 .github/workflows/yocto-builds.yml|  1 +
 classes/sdcard_image-rpi.bbclass  |  5 ---
 conf/machine/include/rpi-base.inc | 10 +++--
 conf/machine/include/rpi-default-versions.inc |  1 +
 conf/machine/raspberrypi-armv7.conf   | 39 +++
 conf/machine/raspberrypi.conf |  4 +-
 conf/machine/raspberrypi0-2w.conf |  4 --
 conf/machine/raspberrypi2.conf|  2 +-
 conf/machine/raspberrypi3-64.conf |  7 ++--
 docs/layer-contents.md| 16 
 recipes-kernel/linux/linux-raspberrypi-v7.inc | 13 +++
 .../linux/linux-raspberrypi-v7_5.10.bb|  6 +++
 .../linux/linux-raspberrypi-v7_5.15.bb|  6 +++
 recipes-kernel/linux/linux-raspberrypi.inc|  1 +
 .../linux/linux-raspberrypi_5.15.bb   | 12 ++
 15 files changed, 108 insertions(+), 19 deletions(-)
 create mode 100644 conf/machine/raspberrypi-armv7.conf
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7.inc
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.10.bb
 create mode 100644 recipes-kernel/linux/linux-raspberrypi-v7_5.15.bb

-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58012): https://lists.yoctoproject.org/g/yocto/message/58012
Mute This Topic: https://lists.yoctoproject.org/mt/93603418/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 1/1] linux-firmware-rpidistro: Fix wireless on Raspberry Pi 4

2022-09-10 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 ...t-43455-firmware-to-standard-variant.patch | 28 +++
 .../linux-firmware-rpidistro_git.bb   |  4 ++-
 2 files changed, 31 insertions(+), 1 deletion(-)
 create mode 100644 
recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro/0001-Default-43455-firmware-to-standard-variant.patch

diff --git 
a/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro/0001-Default-43455-firmware-to-standard-variant.patch
 
b/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro/0001-Default-43455-firmware-to-standard-variant.patch
new file mode 100644
index 000..f67d95b
--- /dev/null
+++ 
b/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro/0001-Default-43455-firmware-to-standard-variant.patch
@@ -0,0 +1,28 @@
+From b9db43e36ad0942d33cb4db5b394abd722862568 Mon Sep 17 00:00:00 2001
+From: Andrei Gherzan 
+Date: Fri, 9 Sep 2022 20:28:06 +0200
+Subject: [PATCH] Default 43455 firmware to standard variant
+
+The firmware for 43455 is loaded as a symlink: brcmfmac43455-sdio.bin.
+This symlink is now broken as the debian package handles the right
+target of this symlink through a postinstall. We don't have that logic
+here so we default to the standard variant.
+
+Upstream-Status: Inappropriate [issue reported at 
https://github.com/RPi-Distro/firmware-nonfree/issues/26]
+Signed-off-by: Andrei Gherzan 
+---
+ debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin 
b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
+index 9c39208..b914838 12
+--- a/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
 b/debian/config/brcm80211/brcm/brcmfmac43455-sdio.bin
+@@ -1 +1 @@
+-../cypress/cyfmac43455-sdio.bin
+\ No newline at end of file
++../cypress/cyfmac43455-sdio-standard.bin
+\ No newline at end of file
+-- 
+2.25.1
+
diff --git 
a/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb 
b/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
index d39340a..f491241 100644
--- a/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
+++ b/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
@@ -15,7 +15,9 @@ NO_GENERIC_LICENSE[binary-redist-Cypress-rpidistro] = 
"debian/config/brcm80211/c
 NO_GENERIC_LICENSE[Synaptics-rpidistro] = "debian/config/brcm80211/copyright"
 LICENSE_FLAGS = "synaptics-killswitch"
 
-SRC_URI = 
"git://github.com/RPi-Distro/firmware-nonfree;branch=bullseye;protocol=https"
+SRC_URI = 
"git://github.com/RPi-Distro/firmware-nonfree;branch=bullseye;protocol=https \
+file://0001-Default-43455-firmware-to-standard-variant.patch \
+"
 SRCREV = "541e5a05d152e7e6f0d9be45622e4a3741e51c02"
 PV = "20210315-3+rpt7"
 S = "${WORKDIR}/git"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58011): https://lists.yoctoproject.org/g/yocto/message/58011
Mute This Topic: https://lists.yoctoproject.org/mt/93602969/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 3/4] ci: Add jobs for multiconfig builds

2022-09-07 Thread Andrei Gherzan
From: Andrei Gherzan 

This also fixes a small typo in the normal build matrix.

Signed-off-by: Andrei Gherzan 
---
 .github/workflows/yocto-builds.yml | 68 +-
 1 file changed, 67 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/yocto-builds.yml 
b/.github/workflows/yocto-builds.yml
index 824745c..0f2dcf5 100644
--- a/.github/workflows/yocto-builds.yml
+++ b/.github/workflows/yocto-builds.yml
@@ -48,7 +48,7 @@ jobs:
 .github/workflows/docker-images/yocto-builder/**
 .github/workflows/docker-images/*.sh
 .github/workflows/yocto-builds.yml
-classes/**'
+classes/**
 conf/**
 dynamic-layers/**
 files/**
@@ -84,3 +84,69 @@ jobs:
   - name: Cleanup dangling docker images
 uses: ./.github/actions/docker-clean-dangling
 if: always()
+
+  build-multiconfig:
+strategy:
+  fail-fast: true
+  matrix:
+machine:
+  - raspberrypi4
+image: ['mc:raspberrypi:rpi-test-image']
+distro: [poky]
+runs-on: [self-hosted, Linux]
+name: ${{ matrix.machine }}/${{ matrix.image }}/poky/systemd
+env:
+  DL_DIR: /var/lib/ci/yocto/downloads
+  SSTATE_DIR: /var/lib/ci/yocto/sstate
+steps:
+  - name: Checkout the code
+uses: actions/checkout@v2
+with:
+  fetch-depth: 0
+  - name: Define Yocto build files
+id: changed-files-specific
+uses: tj-actions/changed-files@v24
+with:
+  files: |
+.github/actions/**
+.github/workflows/docker-images/yocto-builder/**
+.github/workflows/docker-images/*.sh
+.github/workflows/yocto-builds.yml
+classes/**
+conf/**
+dynamic-layers/**
+files/**
+lib/**
+recipes-**
+wic/**
+  - name: Build a temporary yocto-builder image
+uses: ./.github/actions/docker-build
+with:
+  docker_image: yocto-builder
+  id: ${{ github.event.number }}
+if: steps.changed-files-specific.outputs.any_changed == 'true'
+  - name: Build the image
+run: |
+  docker run --rm \
+-v "$GITHUB_WORKSPACE:/work:ro" \
+-v "$DL_DIR:$DL_DIR:rw" \
+-v "$SSTATE_DIR:$SSTATE_DIR:rw" \
+--env "BASE_REF=$GITHUB_BASE_REF" \
+--env "MACHINE=${{ matrix.machine }}" \
+--env "DISTRO=${{ matrix.distro }}" \
+--env "IMAGE=${{ matrix.image }}" \
+--env "DL_DIR=$DL_DIR" \
+--env "SSTATE_DIR=$SSTATE_DIR" \
+--env "BBMULTICONFIG=raspberrypi\ raspberrypi3" \
+--env "BB_ENV_PASSTHROUGH_ADDITIONS=BBMULTICONFIG" \
+"yocto-builder-${{ github.event.number }}" \
+/entrypoint-build.sh
+if: steps.changed-files-specific.outputs.any_changed == 'true'
+  - name: Cleanup temporary docker image
+uses: ./.github/actions/docker-clean-image
+with:
+  docker_image: yocto-builder-${{ github.event.number }}
+if: always()
+  - name: Cleanup dangling docker images
+uses: ./.github/actions/docker-clean-dangling
+if: always()
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58004): https://lists.yoctoproject.org/g/yocto/message/58004
Mute This Topic: https://lists.yoctoproject.org/mt/93535492/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 4/4] docs: Add multiconfig documentation

2022-09-07 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 docs/index.rst  |  1 +
 docs/multiconfig.md | 40 
 2 files changed, 41 insertions(+)
 create mode 100644 docs/multiconfig.md

diff --git a/docs/index.rst b/docs/index.rst
index 3f8a088..806ce87 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -14,6 +14,7 @@ Contents:
readme
layer-contents
extra-build-config
+   multiconfig
extra-apps
ipcompliance
contributing
diff --git a/docs/multiconfig.md b/docs/multiconfig.md
new file mode 100644
index 000..fecbfce
--- /dev/null
+++ b/docs/multiconfig.md
@@ -0,0 +1,40 @@
+
+
+# Multiconfig Support
+
+The build system provides functionality for building multiple configurations in
+the same build invocation while also supporting dependencies between them. For
+more info check the
+[official 
documentation](https://docs.yoctoproject.org/dev-manual/common-tasks.html#building-images-for-multiple-targets-using-multiple-configurations).
+`meta-raspberrypi` uses this to provide the ability to generate images that can
+boot on multiple targets (for example, being able to boot either a Raspberry Pi
+3 or a Raspberry Pi 4 in 32bit mode using the same image). This is in contrast
+to the classic builds where the `MACHINE` defines the only target intended for
+the final image artefact.
+
+## Generating an Image For Multiple Raspberry Pi Boards
+
+Once you've set up a build environment, the multiconfigs need to be enabled
+adding to the build's `local.conf` the following:
+
+BBMULTICONFIG += "raspberrypi raspberrypi3"
+
+With that configured, any image can now be build using the `raspberrypi`
+multiconfig.  Here is an example that will build the `core-image-base`:
+
+bitbake mc:raspberrypi:core-image-base
+
+The final image will be available in:
+
+/tmp-multi-raspberrypi/deploy/images/raspberrypi4/
+
+This image will boot and provide the support for all the machines listed below.
+
+## Supported Machines for Multiconfig Builds
+
+* raspberrypi3
+* raspberrypi4
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58005): https://lists.yoctoproject.org/g/yocto/message/58005
Mute This Topic: https://lists.yoctoproject.org/mt/93535493/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 1/4] machine: Define firmware packages from separate variables

2022-09-07 Thread Andrei Gherzan
From: Andrei Gherzan 

This approach allows someone to easily append firmware packages for
another target than the current set one. For now, we only define the
ones for Raspberry Pi 3 and Raspberry Pi 4 as they will be reused for
in multiconfig builds for generating images that support both of these
targets.

Signed-off-by: Andrei Gherzan 
---
 conf/machine/include/rpi-base.inc | 17 +
 conf/machine/raspberrypi3.conf|  9 ++---
 conf/machine/raspberrypi4.conf| 11 +++
 3 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/conf/machine/include/rpi-base.inc 
b/conf/machine/include/rpi-base.inc
index a2edf06..6998460 100644
--- a/conf/machine/include/rpi-base.inc
+++ b/conf/machine/include/rpi-base.inc
@@ -150,3 +150,20 @@ do_image_wic[recrdeps] = "do_build"
 # The kernel image is installed into the FAT32 boot partition and does not need
 # to also be installed into the rootfs.
 RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+RASPBERRYPI_3_FIRMWARE_PACKAGES += "\
+linux-firmware-rpidistro-bcm43430 \
+linux-firmware-rpidistro-bcm43455 \
+bluez-firmware-rpidistro-bcm43430a1-hcd \
+bluez-firmware-rpidistro-bcm4345c0-hcd \
+"
+RASPBERRYPI_4_FIRMWARE_PACKAGES += "\
+linux-firmware-rpidistro-bcm43455 \
+bluez-firmware-rpidistro-bcm4345c0-hcd \
+linux-firmware-rpidistro-bcm43456 \
+bluez-firmware-rpidistro-bcm4345c5-hcd \
+"
+
+RASPBERRYPI_3_KERNEL ?= "kernel7.img"
+# 'l' stands for LPAE
+RASPBERRYPI_4_KERNEL ?= "kernel7l.img"
diff --git a/conf/machine/raspberrypi3.conf b/conf/machine/raspberrypi3.conf
index 1212498..46961b8 100644
--- a/conf/machine/raspberrypi3.conf
+++ b/conf/machine/raspberrypi3.conf
@@ -6,14 +6,9 @@ DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4"
 require conf/machine/include/arm/armv7a/tune-cortexa7.inc
 include conf/machine/include/rpi-base.inc
 
-MACHINE_EXTRA_RRECOMMENDS += "\
-linux-firmware-rpidistro-bcm43430 \
-linux-firmware-rpidistro-bcm43455 \
-bluez-firmware-rpidistro-bcm43430a1-hcd \
-bluez-firmware-rpidistro-bcm4345c0-hcd \
-"
+MACHINE_EXTRA_RRECOMMENDS += "${RASPBERRYPI_3_FIRMWARE_PACKAGES}"
 
-SDIMG_KERNELIMAGE ?= "kernel7.img"
+SDIMG_KERNELIMAGE ?= "${RASPBERRYPI_3_KERNEL}"
 UBOOT_MACHINE = "rpi_3_32b_config"
 SERIAL_CONSOLES ?= "115200;ttyS0"
 
diff --git a/conf/machine/raspberrypi4.conf b/conf/machine/raspberrypi4.conf
index 86c57ed..56d0905 100644
--- a/conf/machine/raspberrypi4.conf
+++ b/conf/machine/raspberrypi4.conf
@@ -7,15 +7,10 @@ require conf/machine/include/arm/armv7a/tune-cortexa7.inc
 include conf/machine/include/rpi-base.inc
 
 MACHINE_FEATURES += "pci"
-MACHINE_EXTRA_RRECOMMENDS += "\
-linux-firmware-rpidistro-bcm43455 \
-bluez-firmware-rpidistro-bcm4345c0-hcd \
-linux-firmware-rpidistro-bcm43456 \
-bluez-firmware-rpidistro-bcm4345c5-hcd \
-"
 
-# 'l' stands for LPAE
-SDIMG_KERNELIMAGE ?= "kernel7l.img"
+MACHINE_EXTRA_RRECOMMENDS += "${RASPBERRYPI_4_FIRMWARE_PACKAGES}"
+
+SDIMG_KERNELIMAGE ?= "${RASPBERRYPI_4_KERNEL}"
 UBOOT_MACHINE = "rpi_4_32b_config"
 SERIAL_CONSOLES ?= "115200;ttyS0"
 
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58002): https://lists.yoctoproject.org/g/yocto/message/58002
Mute This Topic: https://lists.yoctoproject.org/mt/93535490/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH 2/4] multiconfig: Add multiconfig setup for Raspberry Pi 3+4 images

2022-09-07 Thread Andrei Gherzan
From: Andrei Gherzan 

This defines two multiconfigs:

- raspberrypi: can used to generate an image that support both
  Raspberypi 3 and Raspberrypi 4 booting
- raspberrypi3: used as a dependency for the above

Signed-off-by: Andrei Gherzan 
---
 conf/multiconfig/raspberrypi.conf  | 30 ++
 conf/multiconfig/raspberrypi3.conf |  7 +++
 2 files changed, 37 insertions(+)
 create mode 100644 conf/multiconfig/raspberrypi.conf
 create mode 100644 conf/multiconfig/raspberrypi3.conf

diff --git a/conf/multiconfig/raspberrypi.conf 
b/conf/multiconfig/raspberrypi.conf
new file mode 100644
index 000..2b6d6c3
--- /dev/null
+++ b/conf/multiconfig/raspberrypi.conf
@@ -0,0 +1,30 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+TMPDIR = "${TOPDIR}/tmp-multi-raspberrypi"
+
+# Base it on Raspberry Pi 4 (32 bit)
+MACHINE = "raspberrypi4"
+
+#
+# Add boot support for:
+#  - Raspberry Pi 3 (32 bit)
+#
+
+# Make sure the kernel is deployed for all the supported targets.
+do_image_wic[mcdepends] += " \
+   mc:${BB_CURRENT_MC}:raspberrypi3:virtual/kernel:do_deploy \
+"
+
+# Include firmware for all the supported targets.
+MACHINE_EXTRA_RRECOMMENDS:append = " \
+   ${RASPBERRYPI_3_FIRMWARE_PACKAGES} \
+"
+
+# Deploy the kernel images for all the supported targets in the boot partition.
+# FIXME: No support for u-boot (yet).
+RASPBERRYPI_3_MULTI_DEPLOY_DIR_IMAGE = 
"${TOPDIR}/tmp-multi-raspberrypi3/deploy/images/raspberrypi3"
+IMAGE_BOOT_FILES:append = " \
+   
${RASPBERRYPI_3_MULTI_DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE_DIRECT};${RASPBERRYPI_3_KERNEL}
 \
+"
diff --git a/conf/multiconfig/raspberrypi3.conf 
b/conf/multiconfig/raspberrypi3.conf
new file mode 100644
index 000..9fa6245
--- /dev/null
+++ b/conf/multiconfig/raspberrypi3.conf
@@ -0,0 +1,7 @@
+# SPDX-FileCopyrightText: Andrei Gherzan 
+#
+# SPDX-License-Identifier: MIT
+
+MACHINE = "raspberrypi3"
+
+TMPDIR = "${TOPDIR}/tmp-multi-raspberrypi3"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#58003): https://lists.yoctoproject.org/g/yocto/message/58003
Mute This Topic: https://lists.yoctoproject.org/mt/93535491/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI dependency

2022-08-26 Thread Andrei Gherzan
On Fri, 26 Aug 2022, at 03:43, Bruce Ashfield wrote:
> On Wed, Aug 24, 2022 at 4:30 AM Andrei Gherzan  wrote:
>>
>> On Wed, 24 Aug 2022, at 02:26, Bruce Ashfield wrote:
>> > In message: Re: [linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI
>> > dependency
>> > on 22/08/2022 Andrei Gherzan wrote:
>> >
>> >> On Mon, 22 Aug 2022, at 18:55, Andrei Gherzan wrote:
>> >> > From: Andrei Gherzan 
>> >> >
>> >> > On X86 this will have no impact as CONFIG_ACPI is enabled by default. On
>> >> > the other hand, ARM64 would be affected as they don't have the same
>> >> > default. The defconfig for arm64 recommends CONFIG_ACPI and this patch
>> >> > follows this recommendation in the qemuarm64 bsp configuration to fix
>> >> > ACPI-only EFI boots on this arch.
>> >> >
>> >> > arm (32bit) would also be unaffected as there is no ACPI support there
>> >> > at all. And this unconditional drop (CONFIG_ACPI) will actually fix a
>> >> > configuration warning when enabling EFI on a arm (32bit) machine:
>> >> >
>> >> > [INFO]: config 'CONFIG_ACPI' was set, but it wasn't assignable, check
>> >> > (parent) dependencies
>> >> >
>> >> > Upstream-status: Pending
>> >>
>> >> Please drop this when you apply the patch. It is from a layer local 
>> >> integration.
>> >
>> > No problem. Which kernel versions are you targetting for this ?
>>
>> I'm targeting 5.10 at this point but the later ones should be useful too.
>
> When I merge these sorts of things to an older kernel, they need to be
> on master (unless they really are version specific), and preferably on
> the intermediate versions, just so we have consistent behaviour.

It makes sense and that is why I've initially sent it against master so that 
when it gets merged there, I can ping you or propose it for the older versions. 
Nevertheless, it looks like it ended up everywhere now so all good.

Thanks,
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#11596): 
https://lists.yoctoproject.org/g/linux-yocto/message/11596
Mute This Topic: https://lists.yoctoproject.org/mt/93187197/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI dependency

2022-08-24 Thread Andrei Gherzan
On Wed, 24 Aug 2022, at 02:26, Bruce Ashfield wrote:
> In message: Re: [linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI 
> dependency
> on 22/08/2022 Andrei Gherzan wrote:
>
>> On Mon, 22 Aug 2022, at 18:55, Andrei Gherzan wrote:
>> > From: Andrei Gherzan 
>> >
>> > On X86 this will have no impact as CONFIG_ACPI is enabled by default. On
>> > the other hand, ARM64 would be affected as they don't have the same
>> > default. The defconfig for arm64 recommends CONFIG_ACPI and this patch
>> > follows this recommendation in the qemuarm64 bsp configuration to fix
>> > ACPI-only EFI boots on this arch.
>> >
>> > arm (32bit) would also be unaffected as there is no ACPI support there
>> > at all. And this unconditional drop (CONFIG_ACPI) will actually fix a
>> > configuration warning when enabling EFI on a arm (32bit) machine:
>> >
>> > [INFO]: config 'CONFIG_ACPI' was set, but it wasn't assignable, check
>> > (parent) dependencies
>> >
>> > Upstream-status: Pending
>> 
>> Please drop this when you apply the patch. It is from a layer local 
>> integration.
>
> No problem. Which kernel versions are you targetting for this ?

I'm targeting 5.10 at this point but the later ones should be useful too.

Thanks,
Andrei 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#11587): 
https://lists.yoctoproject.org/g/linux-yocto/message/11587
Mute This Topic: https://lists.yoctoproject.org/mt/93187197/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI dependency

2022-08-22 Thread Andrei Gherzan
On Mon, 22 Aug 2022, at 18:55, Andrei Gherzan wrote:
> From: Andrei Gherzan 
>
> On X86 this will have no impact as CONFIG_ACPI is enabled by default. On
> the other hand, ARM64 would be affected as they don't have the same
> default. The defconfig for arm64 recommends CONFIG_ACPI and this patch
> follows this recommendation in the qemuarm64 bsp configuration to fix
> ACPI-only EFI boots on this arch.
>
> arm (32bit) would also be unaffected as there is no ACPI support there
> at all. And this unconditional drop (CONFIG_ACPI) will actually fix a
> configuration warning when enabling EFI on a arm (32bit) machine:
>
> [INFO]: config 'CONFIG_ACPI' was set, but it wasn't assignable, check
> (parent) dependencies
>
> Upstream-status: Pending

Please drop this when you apply the patch. It is from a layer local integration.

Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#11580): 
https://lists.yoctoproject.org/g/linux-yocto/message/11580
Mute This Topic: https://lists.yoctoproject.org/mt/93187197/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[linux-yocto] [kernel-cache][PATCH] efi.cfg: Drop ACPI dependency

2022-08-22 Thread Andrei Gherzan
From: Andrei Gherzan 

On X86 this will have no impact as CONFIG_ACPI is enabled by default. On
the other hand, ARM64 would be affected as they don't have the same
default. The defconfig for arm64 recommends CONFIG_ACPI and this patch
follows this recommendation in the qemuarm64 bsp configuration to fix
ACPI-only EFI boots on this arch.

arm (32bit) would also be unaffected as there is no ACPI support there
at all. And this unconditional drop (CONFIG_ACPI) will actually fix a
configuration warning when enabling EFI on a arm (32bit) machine:

[INFO]: config 'CONFIG_ACPI' was set, but it wasn't assignable, check
(parent) dependencies

Upstream-status: Pending
Signed-off-by: Andrei Gherzan 
---
 bsp/qemuarm64/qemuarm64.cfg | 7 +++
 cfg/efi.cfg | 1 -
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/bsp/qemuarm64/qemuarm64.cfg b/bsp/qemuarm64/qemuarm64.cfg
index 2412d24e..81415cf9 100644
--- a/bsp/qemuarm64/qemuarm64.cfg
+++ b/bsp/qemuarm64/qemuarm64.cfg
@@ -33,3 +33,10 @@ CONFIG_RTC_DRV_PL031=y
 # PCI configs, needed for virtio-rng (and others)
 CONFIG_PCI=y
 CONFIG_PCI_HOST_GENERIC=y
+
+# arm64 defconfig suggests CONFIG_ACPI as default because it won't be enabled
+# with CONFIG_EFI - even though ACPI-only ARM64 EFI boots would break
+# otherwise. We also do the same here as a sane default.
+CONFIG_ARCH_SUPPORTS_ACPI=y
+CONFIG_ACPI=y
+
diff --git a/cfg/efi.cfg b/cfg/efi.cfg
index d3dfd603..d729cbe9 100644
--- a/cfg/efi.cfg
+++ b/cfg/efi.cfg
@@ -3,7 +3,6 @@
 
 # Dependencies
 CONFIG_PCI=y
-CONFIG_ACPI=y
 
 # Enable basic EFI support
 CONFIG_EFI=y
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#11579): 
https://lists.yoctoproject.org/g/linux-yocto/message/11579
Mute This Topic: https://lists.yoctoproject.org/mt/93187197/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] bluez-firmware-rpidistro: add compatibility to oe-core/create-spdx

2022-04-20 Thread Andrei Gherzan
Hi,

On Thu, 14 Apr 2022, at 13:36, Davide Gardenal wrote:
> Add do_create_spdx dependency to fix error when LICENCE is not found
>
> Signed-off-by: Davide Gardenal 

I have pulled this patch in 
https://github.com/agherzan/meta-raspberrypi/pull/1053.

Thanks,
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#56824): https://lists.yoctoproject.org/g/yocto/message/56824
Mute This Topic: https://lists.yoctoproject.org/mt/90463066/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] meta-raspberrypi: u-boot: remove the randundant patch

2022-04-20 Thread Andrei Gherzan
Hi,

On Wed, 20 Apr 2022, at 03:03, Meng Li wrote:
> This patch had been merged into u-boot upstream. Its commit is
> 29f7d05a347a("dm: core: Move ofdata_to_platdata() call earlier").
> So, remove the randundant patch to avoid building error.
>
> Signed-off-by: Meng Li 

I have pulled this patch in 
https://github.com/agherzan/meta-raspberrypi/pull/1053.

Thanks,
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#56823): https://lists.yoctoproject.org/g/yocto/message/56823
Mute This Topic: https://lists.yoctoproject.org/mt/90576652/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 1/1] python3-pyelftools: Drop recipe in favour of oe-core

2022-03-14 Thread Andrei Gherzan
From: Andrei Gherzan 

All the LAYERSERIES_COMPAT versions provide this recipe in oe-core.
Also, west seems to only depend on 0,26 which is provided even in
dunfell.

Signed-off-by: Andrei Gherzan 
---
 .../python/python3-pyelftools_0.27.bb  | 14 --
 1 file changed, 14 deletions(-)
 delete mode 100644 
meta-zephyr-core/recipes-devtools/python/python3-pyelftools_0.27.bb

diff --git 
a/meta-zephyr-core/recipes-devtools/python/python3-pyelftools_0.27.bb 
b/meta-zephyr-core/recipes-devtools/python/python3-pyelftools_0.27.bb
deleted file mode 100644
index 1405fc5..000
--- a/meta-zephyr-core/recipes-devtools/python/python3-pyelftools_0.27.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-# SPDX-License-Identifier: Apache-2.0
-
-SUMMARY = "Python pyelftools"
-HOMEPAGE = "https://pypi.org/project/pyelftools;
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=5ce2a2b07fca326bc7c146d10105ccfc"
-
-inherit pypi setuptools3
-
-PYPI_PACKAGE = "pyelftools"
-SRC_URI[md5sum] = "061d67c669a9b1f8d07f28c47fb6a65f"
-SRC_URI[sha256sum] = 
"cde854e662774c5457d688ca41615f6594187ba7067af101232df889a6b7a66b"
-BBCLASSEXTEND = "native nativesdk"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#56427): https://lists.yoctoproject.org/g/yocto/message/56427
Mute This Topic: https://lists.yoctoproject.org/mt/89770784/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 1/2] bossa-native: Add Arduino variant of the bossa flashing tool

2022-01-24 Thread Andrei Gherzan
From: Stefan Schmidt 

This native recipe will be used to streamline the flashing of out
Arduino Nano 33 BLE target. Until now we have pointed to the full
Arduino IDE to get it installed and setting the PATH correctly before
any flashing would work. Having the tool supplied under the hood for
flashing will simplify documentation and support.

Signed-off-by: Stefan Schmidt 
Signed-off-by: Andrei Gherzan 
---
 .../bossa/bossa-native_git.bb | 23 +++
 1 file changed, 23 insertions(+)
 create mode 100644 meta-zephyr-core/recipes-devtools/bossa/bossa-native_git.bb

diff --git a/meta-zephyr-core/recipes-devtools/bossa/bossa-native_git.bb 
b/meta-zephyr-core/recipes-devtools/bossa/bossa-native_git.bb
new file mode 100644
index 000..b645ecf
--- /dev/null
+++ b/meta-zephyr-core/recipes-devtools/bossa/bossa-native_git.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Arduino variant of the BOSSA flashing tool"
+HOMEPAGE = "https://github.com/arduino/BOSSA;
+SECTION = "devel"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bcf9399f7b9b96149837290bcdc3ad39"
+
+SRC_URI = "git://github.com/arduino/BOSSA.git;protocol=https;branch=nrf"
+
+PV = "1.9.1+git${SRCPV}"
+SRCREV = "89f3556a761833522cd93c199581265ad689310b"
+
+S = "${WORKDIR}/git"
+
+inherit native
+
+do_compile() {
+# We only compile the bossac commandline tool, not the graphical version.
+oe_runmake bossac
+}
+
+do_install() {
+install -D -m 0755 ${B}/bin/bossac ${D}${bindir}/bossac
+}
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55953): https://lists.yoctoproject.org/g/yocto/message/55953
Mute This Topic: https://lists.yoctoproject.org/mt/88645462/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 2/2] zephyr-flash-bossac.bbclass: Use internal bossac tool instead looking up PATH

2022-01-24 Thread Andrei Gherzan
From: Stefan Schmidt 

Instead of looking in PATH on the host to find bossac we now depend on the
native variant we build and set the path to our yocto build tool.

Signed-off-by: Stefan Schmidt 
Signed-off-by: Andrei Gherzan 
---
 meta-zephyr-core/classes/zephyr-flash-bossac.bbclass | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/meta-zephyr-core/classes/zephyr-flash-bossac.bbclass 
b/meta-zephyr-core/classes/zephyr-flash-bossac.bbclass
index 50222d5..51f2dd3 100644
--- a/meta-zephyr-core/classes/zephyr-flash-bossac.bbclass
+++ b/meta-zephyr-core/classes/zephyr-flash-bossac.bbclass
@@ -1,17 +1,17 @@
 #@DESCRIPTION: class file to flash boards like Arduino Nano BLE which depends 
on bossac for flashing
 
+DEPENDS += "bossa-native"
+
 python do_flash_usb() {
 import shutil
 import subprocess
 import serial.tools.list_ports
 
-# Note: make sure the installed bossac is set to PATH before running 
flash_usb()
 # Check if bossac is avaiable for flashing
-origbbenv = d.getVar("BB_ORIGENV", False)
-bossac_path = shutil.which("bossac", path=origbbenv.getVar('PATH'))
+bossac_path = shutil.which("bossac")
 
 if not bossac_path:
-   bb.fatal("ERROR: bossac not found, please install first and add to 
PATH")
+   bb.fatal("ERROR: bossac not found.")
 
 board = d.getVar('BOARD')
 
@@ -47,4 +47,3 @@ python do_flash_usb() {
 addtask do_flash_usb after do_deploy
 
 do_flash_usb[nostamp] = "1"
-do_flash_usb[vardepsexclude] = "BB_ORIGENV"
-- 
2.25.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55954): https://lists.yoctoproject.org/g/yocto/message/55954
Mute This Topic: https://lists.yoctoproject.org/mt/88645463/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] Use protocol=https for all github SRC_URIs

2022-01-12 Thread Andrei Gherzan
Hi,

On Wed, 12 Jan 2022, at 11:15, Janne Kiiskila wrote:
> Hei,
> 
> would not the "easier" approach be to change the bitbake tooling to use https 
> as the default git fetching protocol, rather than modify every single recipe 
> in the world?
Not really. Because this is a GitLab specific behaviour. Changing the default 
to https would change the general assumptions everyone has in their layers.

Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55813): https://lists.yoctoproject.org/g/yocto/message/55813
Mute This Topic: https://lists.yoctoproject.org/mt/86890763/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] userland: add dtc dependency

2022-01-04 Thread Andrei Gherzan
On Thu, 8 Jul 2021, at 09:45, massimo toscanelli via lists.yoctoproject.org 
wrote:
> When using dtparam, dtoverlay converts /proc/device-tree to a .dtb and
> loads it. However, if dtc is not installed, this operation cannot be
> done and every call to dtparam fails.
>
> Therefore, dtc needs to be added to the list of userland dependencies
> in order to properly call dtparam.
>
> Signed-off-by: massimo toscanelli 
> ---
>  recipes-graphics/userland/userland_git.bb | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/recipes-graphics/userland/userland_git.bb 
> b/recipes-graphics/userland/userland_git.bb
> index ead81f0..9ec57c9 100644
> --- a/recipes-graphics/userland/userland_git.bb
> +++ b/recipes-graphics/userland/userland_git.bb
> @@ -104,5 +104,5 @@ FILES_${PN}-dev += "${includedir} \
>  FILES_${PN}-doc += "${datadir}/install"
>  FILES_${PN}-dbg += "${libdir}/plugins/.debug"
> 
> -RDEPENDS_${PN} += "bash"
> +RDEPENDS_${PN} += "bash dtc"
>  RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", 
> "vc4graphics", "libegl-mesa", "", d)}"
> -- 
> 2.17.1

Hi Massimo,

Somehow I've managed to miss this patch. Could you review this on the current 
branch version? This looks good to me but would need to be rebased.

Thanks,
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55717): https://lists.yoctoproject.org/g/yocto/message/55717
Mute This Topic: https://lists.yoctoproject.org/mt/84063801/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] xserver-xorg: remove xshmfence configure option

2022-01-04 Thread Andrei Gherzan
On Thu, 9 Dec 2021, at 02:59, Yu, Mingli wrote:
> From: Mingli Yu 
>
> After the commit [1] introduced in openembedded-core layer,
> some configure options is't carried over include xshmfence
> option, so remove the xshmfence configure option to silence
> the below warning.
>   WARNING: xserver-xorg-2_21.1.1-r0 do_configure: QA Issue: 
> xserver-xorg: invalid PACKAGECONFIG: xshmfence [invalid-packageconfig]
>
> [1] 
> https://git.openembedded.org/openembedded-core/commit/?id=e05abd87ee5d23750c641d0129d9c83db68ee2e8
>
> Signed-off-by: Mingli Yu 

I have merged this to master.

Thanks,
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55716): https://lists.yoctoproject.org/g/yocto/message/55716
Mute This Topic: https://lists.yoctoproject.org/mt/87605115/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] linux-firmware-rpidistro: add branch in SRC_URI

2021-11-19 Thread Andrei Gherzan
On Fri, 19 Nov 2021, at 10:26, Devendra Tewari wrote:
> https://github.com/agherzan/meta-raspberrypi/pull/951

Looks good. Waiting for CI and I will merge.

---
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55375): https://lists.yoctoproject.org/g/yocto/message/55375
Mute This Topic: https://lists.yoctoproject.org/mt/87152290/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH] rpi-config: Take into consideration ENABLE_UART value of 0

2021-11-13 Thread Andrei Gherzan
Also, validate if the value of it is not 0 or 1.

Fixes: https://github.com/agherzan/meta-raspberrypi/issues/567

Signed-off-by: Andrei Gherzan 
---
 recipes-bsp/bootfiles/rpi-config_git.bb | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/recipes-bsp/bootfiles/rpi-config_git.bb 
b/recipes-bsp/bootfiles/rpi-config_git.bb
index 13a0714..fe18884 100644
--- a/recipes-bsp/bootfiles/rpi-config_git.bb
+++ b/recipes-bsp/bootfiles/rpi-config_git.bb
@@ -174,9 +174,11 @@ do_deploy() {
 fi
 
 # UART support
-if [ "${ENABLE_UART}" = "1" ]; then
+if [ "${ENABLE_UART}" = "1" ] || [ "${ENABLE_UART}" = "0" ] ; then
 echo "# Enable UART" >>$CONFIG
-echo "enable_uart=1" >>$CONFIG
+echo "enable_uart=${ENABLE_UART}" >>$CONFIG
+else
+bbfatal "Invalid value for ENABLE_UART [${ENABLE_UART}]. The value for 
ENABLE_UART can be 0 or 1."
 fi
 
 # Infrared support
-- 
2.33.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55327): https://lists.yoctoproject.org/g/yocto/message/55327
Mute This Topic: https://lists.yoctoproject.org/mt/87039673/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-raspberrypi][PATCH] libwpe: Migrate build workaround from oe-core

2021-11-13 Thread Andrei Gherzan
This was removed from oe-core[1] so we pull in the change here where it
should have been in the first place.

Fixes: https://github.com/agherzan/meta-raspberrypi/issues/893

[1] https://lists.openembedded.org/g/openembedded-core/topic/84653556

Signed-off-by: Andrei Gherzan 
---
 recipes-sato/libwpe_%.bbappend | 2 ++
 1 file changed, 2 insertions(+)
 create mode 100644 recipes-sato/libwpe_%.bbappend

diff --git a/recipes-sato/libwpe_%.bbappend b/recipes-sato/libwpe_%.bbappend
new file mode 100644
index 000..fe1e59b
--- /dev/null
+++ b/recipes-sato/libwpe_%.bbappend
@@ -0,0 +1,2 @@
+# Workaround build issue with RPi userland EGL libraries.
+CFLAGS:append:rpi = " ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', 
'', '-D_GNU_SOURCE', d)}"
-- 
2.33.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#55326): https://lists.yoctoproject.org/g/yocto/message/55326
Mute This Topic: https://lists.yoctoproject.org/mt/87039670/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-zephyr][PATCH 2/2] zephyr-kernel-src.inc: set default preferred version to 2.6.0-rc1

2021-05-19 Thread Andrei Gherzan
Hi,

On Wed, 19 May 2021, at 07:08, Naveen Saini wrote:
> 
> 
> > -Original Message-
> > From: yocto@lists.yoctoproject.org <mailto:yocto%40lists.yoctoproject.org> 
> > mailto:yocto%40lists.yoctoproject.org>> On
> > Behalf Of Jon Mason
> > Sent: Wednesday, May 19, 2021 12:00 AM
> > To: Zbigniew Bodek  > <mailto:zbigniew.bodek%40huawei.com>>
> > Cc: Wojciech Zmuda mailto:zmuda.w%40gmail.com>>; 
> > yocto@lists.yoctoproject.org <mailto:yocto%40lists.yoctoproject.org>
> > Subject: Re: [yocto] [meta-zephyr][PATCH 2/2] zephyr-kernel-src.inc: set
> > default preferred version to 2.6.0-rc1
> > 
> > On Tue, May 18, 2021 at 11:24 AM Zbigniew Bodek
> > mailto:zbigniew.bodek%40huawei.com>> wrote:
> > >
> > > Hello Jon,
> > >
> > > Thanks for your comment. I will try to answer.
> > > This change is to include following bug fix:
> > > https://github.com/zephyrproject-rtos/zephyr/pull/33251
> > > I can also see we've had multiple RC versions in the past but in 
> > > principle, I'm
> > not against your suggestion to have master-next, etc. So where should we go
> > from here?
> > 
> > My recommendation would be to pull that patch out and apply it directly on
> > top of v2.5.0 (assuming that is feasible).  Maybe even asking the upstream
> > zephyr project to port this to v2.5.0 and make it
> > v2.5.1 would be the optimal solution.
> 
> [Naveen]  We can wait for stable release. If it is urgent, we can carry 
> patches for bug fixes,  in case upstream does not give dot release !

Even if we don't have the 2.6.0-rc1 release default (to which I agree), I still 
think having support for it (as a non default) is beneficial. Especially given 
that 2.6.0 will be an LTS so people might want early (opt-in) support for the 
time being.

-- 
Andrei Gherzan 
gpg: rsa4096/D4D94F67AD0E9640


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53592): https://lists.yoctoproject.org/g/yocto/message/53592
Mute This Topic: https://lists.yoctoproject.org/mt/82910264/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-zephyr][PATCH 1/1] zephyr-qemuboot.bbclass: Fix runqemu dependency on qemu native sysroot

2021-05-13 Thread Andrei Gherzan
Hi Ross,

On Thu, 13 May 2021, at 13:37, Andrei Gherzan wrote:
> Hi,
> 
> On Thu, 13 May 2021, at 13:14, Ross Burton wrote:
> > Debugged, the patch is broken.
> > 
> > Using a little tool I have:
> > 
> > Task qemu-system-native-5.2.0-r0:do_addto_recipe_sysroot failed
> > Active tasks are:
> >  virglrenderer-native-0.9.1-r0:do_rm_work
> >  binutils-cross-arm-2.36.1-r0:do_patch
> >  qemu-system-native-5.2.0-r0:do_addto_recipe_sysroot
> >  qemu-system-native-5.2.0-r0:do_rm_work
> >  libepoxy-native-1.5.5-r0:do_rm_work
> >  gcc-source-11.1.0-11.1.0-r0:do_unpack
> > 
> > Note how qemu is simultaneously adding itself to the sysroot, whilst
> > rm_work is running and deleting the sysroot.
> > 
> > This patch isn't compatible with rm_work and should be reverted.
> > 
> 
> I'll look into it.


https://lists.yoctoproject.org/g/yocto/message/53508 should fix it.

-- 
Andrei Gherzan 
gpg: rsa4096/D4D94F67AD0E9640

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53509): https://lists.yoctoproject.org/g/yocto/message/53509
Mute This Topic: https://lists.yoctoproject.org/mt/82651448/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 2/2] zephyr-qemuboot.bbclass: Remove dependency on qemu-system-native

2021-05-13 Thread Andrei Gherzan
From: Andrei Gherzan 

runqemu only really needs the sysroot for qemu-helper-native. Pulling
other qemu dependency would get into a racing issue with rm_work. That
can also be fixed by tweaking the do_addto_recipe_sysroot order in
oe-core for qemu-system-native but that is just not needed for this
specific dependency requirement.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-qemuboot.bbclass | 15 +++
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/classes/zephyr-qemuboot.bbclass b/classes/zephyr-qemuboot.bbclass
index f508b45..c268e9e 100644
--- a/classes/zephyr-qemuboot.bbclass
+++ b/classes/zephyr-qemuboot.bbclass
@@ -36,19 +36,18 @@ python do_bootconf_write() {
 
 addtask do_bootconf_write before do_build after do_deploy
 
-# The runqemu script requires the native sysroot populated for the qemu
-# recipes. Usually, this is pulled in by a do_image dependency (see
-# baremetal-helloworld_git, for example), but in this case, there is no such
-# task, so we hook in the dependency to do_bootconf_write. This also ensures
-# that builds from sstate will also have this requirement satisfied.
+# The runqemu script requires the native sysroot populated for the
+# qemu-helper-native recipes. Usually, this is pulled in by a do_image
+# dependency (see baremetal-helloworld_git, for example), but in this case,
+# there is no such task, so we hook in the dependency to do_bootconf_write.
+# This also ensures that builds from sstate will also have this requirement
+# satisfied.
 python () {
-# do_addto_recipe_sysroot doesnt exist for all recipes, but we need it to 
have
-# /usr/bin on recipe-sysroot (qemu) populated
 def extraimage_getdepends(task):
 deps = ""
 for dep in (d.getVar('EXTRA_IMAGEDEPENDS') or "").split():
 # Make sure we only add it for qemu
-if 'qemu' in dep:
+if 'qemu-helper-native' in dep:
 deps += " %s:%s" % (dep, task)
 return deps
 d.appendVarFlag('do_bootconf_write', 'depends', 
extraimage_getdepends('do_addto_recipe_sysroot'))
-- 
2.31.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53508): https://lists.yoctoproject.org/g/yocto/message/53508
Mute This Topic: https://lists.yoctoproject.org/mt/82799671/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 1/2] zephyr-qemuboot.bbclass: Don't overwrite the entire elf dictionary key

2021-05-13 Thread Andrei Gherzan
From: Andrei Gherzan 

The nios2_machdata_setfunc was overwriting the elf key in matchdata for
arc done in arc_machdata_setfunc which in turn was overwriting the one
from oe-core. This is making qemu-x86 builds (as an example)
unbuildable:

Exception: KeyError: 'i586'

This patch makes sure that the changes complement the machdata
dictionary as opposed to overwriting the entire "elf" key.

Signed-off-by: Andrei Gherzan 
---
 classes/siteinfo-zephyr.bbclass | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/classes/siteinfo-zephyr.bbclass b/classes/siteinfo-zephyr.bbclass
index d84fd3a..b84a9b2 100644
--- a/classes/siteinfo-zephyr.bbclass
+++ b/classes/siteinfo-zephyr.bbclass
@@ -1,4 +1,3 @@
-
 def arc_siteinfo_setfunc(archinfo, osinfo, targetinfo, d):
 archinfo['arc'] = "endian-little bit-32 "
 osinfo['linux'] = "common-linux common-glibc"
@@ -8,7 +7,7 @@ def arc_siteinfo_setfunc(archinfo, osinfo, targetinfo, d):
 SITEINFO_EXTRA_DATAFUNCS += "arc_siteinfo_setfunc"
 
 def arc_machdata_setfunc(machdata, d):
-machdata["elf"] = { "arc" : (195, 0, 0, True, 32), }
+machdata["elf"]["arc"] = (195, 0, 0, True, 32)
 return machdata
 
 PACKAGEQA_EXTRA_MACHDEFFUNCS += "arc_machdata_setfunc"
@@ -22,7 +21,7 @@ def iamcu_siteinfo_setfunc(archinfo, osinfo, targetinfo, d):
 SITEINFO_EXTRA_DATAFUNCS += "iamcu_siteinfo_setfunc"
 
 def nios2_machdata_setfunc(machdata, d):
-machdata["elf"] = {"nios2":  (113, 0, 0, True, 32), }
+machdata["elf"]["nios2"] = (113, 0, 0, True, 32)
 return machdata
 
-PACKAGEQA_EXTRA_MACHDEFFUNCS += "nios2_machdata_setfunc"
\ No newline at end of file
+PACKAGEQA_EXTRA_MACHDEFFUNCS += "nios2_machdata_setfunc"
-- 
2.31.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53507): https://lists.yoctoproject.org/g/yocto/message/53507
Mute This Topic: https://lists.yoctoproject.org/mt/82799666/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-zephyr][PATCH 1/1] zephyr-qemuboot.bbclass: Fix runqemu dependency on qemu native sysroot

2021-05-13 Thread Andrei Gherzan
Hi,

On Thu, 13 May 2021, at 13:14, Ross Burton wrote:
> Debugged, the patch is broken.
> 
> Using a little tool I have:
> 
> Task qemu-system-native-5.2.0-r0:do_addto_recipe_sysroot failed
> Active tasks are:
>  virglrenderer-native-0.9.1-r0:do_rm_work
>  binutils-cross-arm-2.36.1-r0:do_patch
>  qemu-system-native-5.2.0-r0:do_addto_recipe_sysroot
>  qemu-system-native-5.2.0-r0:do_rm_work
>  libepoxy-native-1.5.5-r0:do_rm_work
>  gcc-source-11.1.0-11.1.0-r0:do_unpack
> 
> Note how qemu is simultaneously adding itself to the sysroot, whilst
> rm_work is running and deleting the sysroot.
> 
> This patch isn't compatible with rm_work and should be reverted.
> 

I'll look into it.

-- 
Andrei Gherzan 
gpg: rsa4096/D4D94F67AD0E9640

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53506): https://lists.yoctoproject.org/g/yocto/message/53506
Mute This Topic: https://lists.yoctoproject.org/mt/82651448/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 1/1] zephyr-qemuboot.bbclass: Fix runqemu dependency on qemu native sysroot

2021-05-07 Thread Andrei Gherzan
From: Andrei Gherzan 

The runqemu script depends on having the native sysroot populated for
the qemu recipes. Add the required dependency to the mix.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-qemuboot.bbclass | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/classes/zephyr-qemuboot.bbclass b/classes/zephyr-qemuboot.bbclass
index 5ac1c86..f508b45 100644
--- a/classes/zephyr-qemuboot.bbclass
+++ b/classes/zephyr-qemuboot.bbclass
@@ -35,3 +35,22 @@ python do_bootconf_write() {
 }
 
 addtask do_bootconf_write before do_build after do_deploy
+
+# The runqemu script requires the native sysroot populated for the qemu
+# recipes. Usually, this is pulled in by a do_image dependency (see
+# baremetal-helloworld_git, for example), but in this case, there is no such
+# task, so we hook in the dependency to do_bootconf_write. This also ensures
+# that builds from sstate will also have this requirement satisfied.
+python () {
+# do_addto_recipe_sysroot doesnt exist for all recipes, but we need it to 
have
+# /usr/bin on recipe-sysroot (qemu) populated
+def extraimage_getdepends(task):
+deps = ""
+for dep in (d.getVar('EXTRA_IMAGEDEPENDS') or "").split():
+# Make sure we only add it for qemu
+if 'qemu' in dep:
+deps += " %s:%s" % (dep, task)
+return deps
+d.appendVarFlag('do_bootconf_write', 'depends', 
extraimage_getdepends('do_addto_recipe_sysroot'))
+d.appendVarFlag('do_bootconf_write', 'depends', 
extraimage_getdepends('do_populate_sysroot'))
+}
-- 
2.31.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#53417): https://lists.yoctoproject.org/g/yocto/message/53417
Mute This Topic: https://lists.yoctoproject.org/mt/82651448/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH 1/1] zephyr-kernel-src.inc: Support samples from external layers

2021-03-29 Thread Andrei Gherzan
From: Andrei Gherzan 

The inc file references patch(es) local to the inc file. Including this
file from another recipe as part of an external layer, will make bitbake
fail finding the files referenced in zephyr-kernel-src.inc's SRC_URI.

By including an explicit path to the files directory in FILESEXTRAPATHS,
we make sure that any recipe including this inc file will inherit the
needed path.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc | 5 +
 1 file changed, 5 insertions(+)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc
index 39cbc10..8c987bb 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc
@@ -7,6 +7,11 @@ include 
zephyr-kernel-src-${PREFERRED_VERSION_zephyr-kernel}.inc
 
 inherit cmake
 
+# This file might be included from other places (like other layers) and not
+# having an explicit path to the patches directory, will make bitbake fail to
+# find the patch(es) in SRC_URI.
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
 SRC_URI = "\
 
git://github.com/zephyrproject-rtos/zephyr.git;protocol=https;branch=master;name=default
 \
 
git://github.com/zephyrproject-rtos/cmsis.git;protocol=https;destsuffix=git/modules/cmsis;name=cmsis
 \
-- 
2.31.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52951): https://lists.yoctoproject.org/g/yocto/message/52951
Mute This Topic: https://lists.yoctoproject.org/mt/81694508/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 15/15] README.txt: Fix small typo in email subject prefix

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 README.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.txt b/README.txt
index ce5338b..5a0ccc7 100644
--- a/README.txt
+++ b/README.txt
@@ -116,4 +116,4 @@ the patches are identifable.
 Git can be configured to send mails appropriately when using git send-email:
 
 $ git config --local sendemail.to yocto@lists.yoctoproject.org
-$ git config --local format.subjectPrefix meta-zephy][PATCH
+$ git config --local format.subjectPrefix meta-zephyr][PATCH
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52346): https://lists.yoctoproject.org/g/yocto/message/52346
Mute This Topic: https://lists.yoctoproject.org/mt/80680684/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 14/15] zephyr-kernel-src: Upgrade 2.5.0-rc3 to rc4

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 ...rnel-src-2.5.0-rc3.inc => zephyr-kernel-src-2.5.0-rc4.inc} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename recipes-kernel/zephyr-kernel/{zephyr-kernel-src-2.5.0-rc3.inc => 
zephyr-kernel-src-2.5.0-rc4.inc} (86%)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
similarity index 86%
rename from recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
rename to recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
index 4ee9883..b8aa4dc 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
@@ -1,5 +1,5 @@
 SRCREV_FORMAT = "default_cmsis"
-SRCREV_default = "v2.5.0-rc3"
+SRCREV_default = "v2.5.0-rc4"
 SRCREV_cmsis = "c3bd2094f92d574377f7af2aec147ae181aa5f8e"
 SRCREV_nordic = "f3434da6446380fcdd426dbe2866af21d0d549b6"
 SRCREV_stm32 = "cc8731dba4fd9c57d7fe8ea6149828b89c2bd635"
@@ -7,4 +7,4 @@ SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
 SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
 SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
 
-PV = "2.5.0-rc3+git${SRCPV}"
+PV = "2.5.0-rc4+git${SRCPV}"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52345): https://lists.yoctoproject.org/g/yocto/message/52345
Mute This Topic: https://lists.yoctoproject.org/mt/80680683/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 13/15] zephyr-flash-pyocd.bbclass: Implement configurable probe IDs to program

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Implement logic to configure what probes to program based on the
PYOCD_FLASH_IDS variable:
1. by default program all attached probes
2. change default behaviour by listing the probe IDs to flash

CONNECT_TIMEOUT_SECONDS was also renamed to maintain consistency with
the PYOCD_FLASH_IDS variable.

One can query the IDs using `pyocd list`.

The value of PYOCD_FLASH_IDS can also be injected into the datastore
using BB_ENV_EXTRAWHITE.

Signed-off-by: Andrei Gherzan 
---
 README.txt |  9 +
 classes/zephyr-flash-pyocd.bbclass | 61 --
 2 files changed, 50 insertions(+), 20 deletions(-)

diff --git a/README.txt b/README.txt
index bda872b..ce5338b 100644
--- a/README.txt
+++ b/README.txt
@@ -67,6 +67,15 @@ dfu-util and/or pyocd need to be installed in your system. 
If you observe
 permission errors or the flashing process seem to hang, follow those 
instructions:
 https://github.com/pyocd/pyOCD/tree/master/udev
 
+By default, pyocd tries to flash all the attached probes. This behaviour can be
+customised by defining the PYOCD_FLASH_IDS variable as a space-separated list
+of IDs. Once that is set, the tool will only try to program these IDs. You can
+query for the IDs by running `pyocd list` on your host while having the probes
+attached. Besides setting this variable through the build's configuration or
+metadata, you can also inject its value from command line with something like:
+
+$ PYOCD_FLASH_IDS='  ' 
BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE PYOCD_FLASH_IDS" bitbake  -c 
flash_usb
+
 Building and Running Zephyr Tests
 =
 Presently only toolchains for ARM, x86, IAMCU and Nios2 are supported.
diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index 4d24e6a..a873be4 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,4 +1,5 @@
-CONNECT_TIMEOUT_SECONDS ?= "30"
+PYOCD_CONNECT_TIMEOUT_SECONDS ?= "30"
+PYOCD_FLASH_IDS ?= "all"
 
 python do_flash_usb() {
 try:
@@ -7,26 +8,46 @@ python do_flash_usb() {
 except ImportError:
 bb.fatal("Flashing with pyocd needs the relevant python package. Make 
sure your host provides it or consult your distribution packages for how to 
install this prerequisite.")
 
-timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
+try:
+timeout = int(d.getVar('PYOCD_CONNECT_TIMEOUT_SECONDS'))
+except ValueError:
+bb.fatal(f"PYOCD_CONNECT_TIMEOUT_SECONDS was set to an invalid value: 
{d.getVar('PYOCD_CONNECT_TIMEOUT_SECONDS')}.")
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
-bb.plain(f"Attempting to flash {image} to board {d.getVar('BOARD')}")
-
-# Try to connect to a probe with a timeout
-now = 0
-step = 3
-while True:
-session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True)
-if session:
-break
-if now >= timeout:
-bb.fatal("Timeout while trying to connect to a probe. Make sure 
the target device is connected and the udev is configured accordingly. See 
<https://github.com/mbedmicro/pyOCD/tree/master/udev> for help.")
-bb.warn("Can't connect to the probe. Retrying in %d seconds..." % step)
-time.sleep(step)
-now += step
-
-with session:
-FileProgrammer(session).program(image)
-session.board.target.reset()
+ids = d.getVar('PYOCD_FLASH_IDS')
+
+# Compute the list of IDs to program
+if ids == 'all':
+ids = []
+for probe in ConnectHelper.get_all_connected_probes(blocking=False):
+ids.append(probe.unique_id)
+if not ids:
+bb.fatal("No probe detected. Make sure your target is connected.")
+else:
+ids = ids.split()
+if not ids:
+bb.fatal("No probe requested for programming. Make sure 
PYOCD_FLASH_IDS is set.")
+
+# Program each ID
+for id in ids:
+bb.plain(f"Attempting to flash {os.path.basename(image)} to board 
{d.getVar('BOARD')} [{id}]")
+
+# Try to connect to a probe with a timeout
+now = 0
+step = 3
+while True:
+session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True, unique_id=id)
+if session:
+break
+if now >= timeout:
+bb.fatal(f"Timeout while trying to connect to probe ID: {id}. 
Make sure the target device is connected and the udev is configured 
accordingly. See <https://github.com/mbedmicro/pyOCD/tree/master/udev> for 
help.")
+bb.warn(f"Can't connect to the probe ID: {id}. Retrying in {step} 
seconds...")
+time.sleep(step)
+now += step
+
+# Program 

[yocto] [meta-zephyr][PATCH V2 12/15] zephyr-flash-pyocd.bbclass: Handle import error for pyocd modules

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index df3b631..4d24e6a 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,8 +1,11 @@
 CONNECT_TIMEOUT_SECONDS ?= "30"
 
 python do_flash_usb() {
-from pyocd.core.helpers import ConnectHelper
-from pyocd.flash.file_programmer import FileProgrammer
+try:
+from pyocd.core.helpers import ConnectHelper
+from pyocd.flash.file_programmer import FileProgrammer
+except ImportError:
+bb.fatal("Flashing with pyocd needs the relevant python package. Make 
sure your host provides it or consult your distribution packages for how to 
install this prerequisite.")
 
 timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52343): https://lists.yoctoproject.org/g/yocto/message/52343
Mute This Topic: https://lists.yoctoproject.org/mt/80680679/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 11/15] zephyr-flash-pyocd.bbclass: Flash the first probe found with a timeout

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Currently the code flashes the firmware in a blocking way. If the host
is not configured accordingly (for example in terms of permissions),
this would hang undefinitely. This can easily confuse users and in order
to avoid this, the patch changes to unblocking session creation and
opening call, wrapping the tries in some relevant logging. The timeout
can be defined with `CONNECT_TIMEOUT_SECONDS` which defaults to 30
seconds.

Also, by default, when multiple probes are attached, the session call
will return a selection choice. This would obviously break under bitbake
with an exception:
Exception: EOFError: EOF when reading a line
Avoid this by selecting the first found probe.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 18 +-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index eca30c9..df3b631 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,11 +1,27 @@
+CONNECT_TIMEOUT_SECONDS ?= "30"
+
 python do_flash_usb() {
 from pyocd.core.helpers import ConnectHelper
 from pyocd.flash.file_programmer import FileProgrammer
 
+timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
 bb.plain(f"Attempting to flash {image} to board {d.getVar('BOARD')}")
 
-with ConnectHelper.session_with_chosen_probe() as session:
+# Try to connect to a probe with a timeout
+now = 0
+step = 3
+while True:
+session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True)
+if session:
+break
+if now >= timeout:
+bb.fatal("Timeout while trying to connect to a probe. Make sure 
the target device is connected and the udev is configured accordingly. See 
<https://github.com/mbedmicro/pyOCD/tree/master/udev> for help.")
+bb.warn("Can't connect to the probe. Retrying in %d seconds..." % step)
+time.sleep(step)
+now += step
+
+with session:
 FileProgrammer(session).program(image)
 session.board.target.reset()
 }
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52342): https://lists.yoctoproject.org/g/yocto/message/52342
Mute This Topic: https://lists.yoctoproject.org/mt/80680678/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 10/15] zephyr-peripheral-hr: Add recipe for BT HR sample

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb | 5 +
 1 file changed, 5 insertions(+)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb

diff --git a/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb 
b/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb
new file mode 100644
index 000..e6ef7b8
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb
@@ -0,0 +1,5 @@
+include zephyr-sample.inc
+
+ZEPHYR_SRC_DIR = "${S}/samples/bluetooth/peripheral_hr"
+
+ZEPHYR_MODULES_append = "\;${S}/modules/crypto/tinycrypt"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52341): https://lists.yoctoproject.org/g/yocto/message/52341
Mute This Topic: https://lists.yoctoproject.org/mt/80680676/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 04/15] zephyr-kernel-src: Restructure recipe

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

* Restructure recipe to use include files as opposed to a bbclass. The
  latter is unnatural when defining versions, sources etc.
* Make the zephyr-kernel-src follow the version as defined by
  PREFERRED_VERSION_zephyr-kernel.
* Make the setup of the zephyr-kernel-src.inc extensible for multiple
  versions.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-kernel-src.bbclass | 37 ---
 .../zephyr-kernel/zephyr-kernel-src-2.4.0.inc | 10 +
 ...kernel-src_2.4.bb => zephyr-kernel-src.bb} |  9 +
 .../zephyr-kernel/zephyr-kernel-src.inc   | 20 ++
 4 files changed, 32 insertions(+), 44 deletions(-)
 delete mode 100644 classes/zephyr-kernel-src.bbclass
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
 rename recipes-kernel/zephyr-kernel/{zephyr-kernel-src_2.4.bb => 
zephyr-kernel-src.bb} (80%)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc

diff --git a/classes/zephyr-kernel-src.bbclass 
b/classes/zephyr-kernel-src.bbclass
deleted file mode 100644
index c6c8d61..000
--- a/classes/zephyr-kernel-src.bbclass
+++ /dev/null
@@ -1,37 +0,0 @@
-#Set relevant variables based on Zephyr kernel version
-
-PREFERRED_VERSION_zephyr-kernel ??= "2.4.0"
-
-SRCREV_FORMAT = "default_cmsis"
-SRCREV_default = "7a3b253ced7333f5c0269387a7f3ed1dee69739d"
-SRCREV_cmsis = "542b2296e6d515b265e25c6b7208e8fea3014f90"
-SRCREV_nordic = "d8a6ea9695ddf792bb18bb6035c13b1daac5d79c"
-SRCREV_stm32 = "f0e11398128ac9abdff713da5d3035e6c96e9b86"
-SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
-SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
-SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
-
-SRC_URI = 
"git://github.com/zephyrproject-rtos/zephyr.git;protocol=https;branch=v2.4-branch;name=default
 \
-   
git://github.com/zephyrproject-rtos/cmsis.git;protocol=https;destsuffix=git/modules/cmsis;name=cmsis
 \
-   
git://github.com/zephyrproject-rtos/hal_nordic.git;protocol=https;destsuffix=git/modules/hal/nordic;name=nordic
 \
-   
git://github.com/zephyrproject-rtos/hal_stm32.git;protocol=https;destsuffix=git/modules/hal/stm32;name=stm32
 \
-   
git://github.com/zephyrproject-rtos/open-amp.git;protocol=https;destsuffix=git/modules/lib/open-amp;name=open-amp
 \
-   
git://github.com/zephyrproject-rtos/libmetal.git;protocol=https;destsuffix=git/modules/hal/libmetal;name=libmetal
 \
-   
git://github.com/zephyrproject-rtos/tinycrypt.git;protocol=https;destsuffix=git/modules/crypto/tinycrypt;name=tinycrypt
 \
-   file://0001-cmake-add-yocto-toolchain.patch \
-  "
-
-PV = "2.4.0+git${SRCPV}"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
-
-ZEPHYR_TEST_SRCDIR = "tests/legacy/kernel/"
-
-python () {
-src_pn = d.getVar('PREFERRED_VERSION_zephyr-kernel', True)
-if src_pn == '2.4.0':
-return
-else:
-bb.error("Unsupported Zephyr kernel version requested")
-}
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
new file mode 100644
index 000..d1ef80e
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
@@ -0,0 +1,10 @@
+SRCREV_FORMAT = "default_cmsis"
+SRCREV_default = "7a3b253ced7333f5c0269387a7f3ed1dee69739d"
+SRCREV_cmsis = "542b2296e6d515b265e25c6b7208e8fea3014f90"
+SRCREV_nordic = "d8a6ea9695ddf792bb18bb6035c13b1daac5d79c"
+SRCREV_stm32 = "f0e11398128ac9abdff713da5d3035e6c96e9b86"
+SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
+SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
+SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
+
+PV = "2.4.0+git${SRCPV}"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
similarity index 80%
rename from recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb
rename to recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
index 8e8b5b8..210cfa7 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
@@ -1,16 +1,12 @@
+include zephyr-kernel-src.inc
 
-inherit zephyr-kernel-src
-inherit cmake
-
-S = "${WORKDIR}/git"
+ZEPHYR_TEST_SRCDIR = "tests/legacy/kernel/"
 
 IMAGE_NO_MANIFEST = "1"
 INHIBIT_DEFAULT_DEPS = "1"
 
 do_configure[noexec] = "1"
 do_compile[noexec] = "1"
-
-
 do_install () {
 kerneldir=${D}/usr/src/zephyr
 install -d $kerneldir
@@ -21,4 +17,3 @@ PACKAGES = "${PN}"
 FILES_${PN} = "/usr/src/zephyr"
 
 SYSROOT_D

[yocto] [meta-zephyr][PATCH V2 03/15] Cleanup superflous new lines

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyrtest.bbclass  | 2 --
 conf/distro/zephyr.conf | 1 -
 conf/machine/include/tune-arc.inc   | 1 -
 conf/machine/include/tune-iamcu.inc | 1 -
 conf/machine/include/tune-nios2.inc | 1 -
 5 files changed, 6 deletions(-)

diff --git a/classes/zephyrtest.bbclass b/classes/zephyrtest.bbclass
index 3acc4c3..248fd15 100644
--- a/classes/zephyrtest.bbclass
+++ b/classes/zephyrtest.bbclass
@@ -51,5 +51,3 @@ python testdata_clean() {
 }
 
 addtask do_testdata_write before do_build after do_deploy
-
-
diff --git a/conf/distro/zephyr.conf b/conf/distro/zephyr.conf
index a98da32..6ecd421 100644
--- a/conf/distro/zephyr.conf
+++ b/conf/distro/zephyr.conf
@@ -1,4 +1,3 @@
-
 DISTRO = "zephyr"
 DISTRO_NAME = "Zephyr"
 DISTRO_VERSION = "1.0"
diff --git a/conf/machine/include/tune-arc.inc 
b/conf/machine/include/tune-arc.inc
index 4bb6f4f..ff841e7 100644
--- a/conf/machine/include/tune-arc.inc
+++ b/conf/machine/include/tune-arc.inc
@@ -18,4 +18,3 @@ AVAILTUNES += "no-sdata"
 TUNEVALID[nodata] = "ARC no-delete-null-pointer-checks"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 
'no-delete-null-pointer-checks', ' -fno-delete-null-pointer-checks', '', d)}"
 AVAILTUNES += "no-delete-null-pointer-checks"
-
diff --git a/conf/machine/include/tune-iamcu.inc 
b/conf/machine/include/tune-iamcu.inc
index 6935375..20a93a6 100644
--- a/conf/machine/include/tune-iamcu.inc
+++ b/conf/machine/include/tune-iamcu.inc
@@ -9,4 +9,3 @@ TUNE_ARCH = "i586"
 TUNEVALID[iamcu] = "Intel MCU"
 
 PACKAGE_EXTRA_ARCHS_tune-iamcu = "iamcu"
-
diff --git a/conf/machine/include/tune-nios2.inc 
b/conf/machine/include/tune-nios2.inc
index c74326d..e8662eb 100644
--- a/conf/machine/include/tune-nios2.inc
+++ b/conf/machine/include/tune-nios2.inc
@@ -1,4 +1,3 @@
-
 # Nios2 Architecture Definition
 
 DEFAULTTUNE ?= "nios2"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52334): https://lists.yoctoproject.org/g/yocto/message/52334
Mute This Topic: https://lists.yoctoproject.org/mt/80680666/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 08/15] zephyr-kernel.inc: Remove include file

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

This file has little advantage and can be easily replaced by just
directly including the src include file.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-image.inc  | 2 +-
 recipes-kernel/zephyr-kernel/zephyr-kernel.inc | 4 
 2 files changed, 1 insertion(+), 5 deletions(-)
 delete mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel.inc

diff --git a/recipes-kernel/zephyr-kernel/zephyr-image.inc 
b/recipes-kernel/zephyr-kernel/zephyr-image.inc
index e8b8871..c77692d 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-image.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-image.inc
@@ -1,4 +1,4 @@
-require zephyr-kernel.inc
+require zephyr-kernel-src.inc
 require zephyr-kernel-common.inc
 
 inherit testimage
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel.inc
deleted file mode 100644
index 903973d..000
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel.inc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-inherit zephyr-kernel-src
-
-S = "${WORKDIR}/git"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52339): https://lists.yoctoproject.org/g/yocto/message/52339
Mute This Topic: https://lists.yoctoproject.org/mt/80680674/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 06/15] zephyr-kernel-common.inc: Fix configuration CPPFLAGS warning

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Configure warns when CPPFLAGS is provided as environment variable and
expects its value to be passed to cmake. This patch does that to
surpress the warning.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
index 5313030..abc55ba 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
@@ -13,8 +13,7 @@ ZEPHYR_SYSROOT="${STAGING_DIR_TARGET}"
 
 ZEPHYR_MAKE_OUTPUT = "zephyr.elf"
 
-
-EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto"
+EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto 
-DEXTRA_CPPFLAGS=${CPPFLAGS}"
 
 ZEPHYR_MODULES = ""
 ZEPHYR_MODULES_append_arm = "\;${S}/modules/cmsis"
@@ -26,7 +25,6 @@ EXTRA_OECMAKE_append = " -DZEPHYR_MODULES=${ZEPHYR_MODULES}"
 
 export ZEPHYR_BASE="${S}"
 
-
 DEPENDS += "gperf-native python3-pyelftools-native python3-pyyaml-native 
python3-pykwalify-native"
 CROSS_COMPILE = "${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}"
 
@@ -51,3 +49,8 @@ OE_TERMINAL_EXPORTS += "ZEPHYR_SYSROOT"
 OE_TERMINAL_EXPORTS += "ZEPHYR_GCC_VARIANT"
 
 IMAGE_FSTYPES = "elf bin"
+
+do_configure_prepend() {
+# Zephyr expects CPPFLAGS as cmake argument as and ignores env variables.
+unset CPPFLAGS
+}
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52337): https://lists.yoctoproject.org/g/yocto/message/52337
Mute This Topic: https://lists.yoctoproject.org/mt/80680671/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 09/15] Use an include file for the common parts of the sample recipes

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-hci-uart.bb | 16 ++--
 .../zephyr-kernel/zephyr-helloworld.bb  | 13 +
 .../zephyr-kernel/zephyr-kernel-test.bb |  4 
 .../zephyr-kernel/zephyr-kernel-test.inc|  2 --
 .../zephyr-kernel/zephyr-peripheral-esp.bb  | 17 +++--
 .../zephyr-kernel/zephyr-philosophers.bb| 13 +
 recipes-kernel/zephyr-kernel/zephyr-sample.inc  | 13 +
 7 files changed, 20 insertions(+), 58 deletions(-)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-sample.inc

diff --git a/recipes-kernel/zephyr-kernel/zephyr-hci-uart.bb 
b/recipes-kernel/zephyr-kernel/zephyr-hci-uart.bb
index ec6b13e..c66c7ec 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-hci-uart.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-hci-uart.bb
@@ -1,17 +1,5 @@
-require zephyr-kernel.inc
-require zephyr-kernel-common.inc
-inherit deploy
-
-COMPATIBLE_MACHINE = "(96b-nitrogen)"
+include zephyr-sample.inc
 
 ZEPHYR_SRC_DIR = "${S}/samples/bluetooth/hci_uart"
-ZEPHYR_BASE = "${S}"
-
-OECMAKE_SOURCEPATH = "${ZEPHYR_SRC_DIR}"
 
-do_deploy () {
-install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf
-}
-
-addtask deploy after do_compile
-do_install[noexec] = "1"
+COMPATIBLE_MACHINE = "(96b-nitrogen)"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-helloworld.bb 
b/recipes-kernel/zephyr-kernel/zephyr-helloworld.bb
index 84db068..ac5ce62 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-helloworld.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-helloworld.bb
@@ -1,14 +1,3 @@
-require zephyr-kernel.inc
-require zephyr-kernel-common.inc
-inherit deploy
+include zephyr-sample.inc
 
 ZEPHYR_SRC_DIR = "${S}/samples/hello_world"
-ZEPHYR_BASE = "${S}"
-OECMAKE_SOURCEPATH = "${ZEPHYR_SRC_DIR}"
-
-do_deploy () {
-install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf
-}
-
-addtask deploy after do_compile
-do_install[noexec] = "1"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-test.bb 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-test.bb
index 46d93f0..2918d2d 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-test.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-test.bb
@@ -2,7 +2,3 @@ require zephyr-image.inc
 require zephyr-kernel-test.inc
 
 BBCLASSEXTEND = '${@" ".join(["zephyrtest:" + x for x in 
d.getVar("ZEPHYRTESTS", True).split()])}'
-
-
-
-
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-test.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-test.inc
index a1e62af..b6b4766 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-test.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-test.inc
@@ -2,11 +2,9 @@ ZEPHYRTESTS_remove = "fifo fpu_sharing lifo mbox mem_heap 
mem_pool \
 mem_protect mem_slab msgq mutex pipe profiling sched semaphore \
 stack threads tickless timer workq"
 
-
 # Exclude tests which does not build for various reasons
 ZEPHYRTESTS_remove = "gen_isr_table spinlock smp mp"
 
-
 # test_context will fail because QEMU for ARM does not emulate CortexM3 
BASEPRI register
 #ZEPHYRTESTS_remove_arm += ""
 
diff --git a/recipes-kernel/zephyr-kernel/zephyr-peripheral-esp.bb 
b/recipes-kernel/zephyr-kernel/zephyr-peripheral-esp.bb
index 24f030a..8be90d1 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-peripheral-esp.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-peripheral-esp.bb
@@ -1,16 +1,5 @@
-require zephyr-kernel.inc
-require zephyr-kernel-common.inc
-inherit deploy
+include zephyr-sample.inc
 
-ZEPHYR_SAMPLE_NAME="samples/bluetooth/peripheral_esp"
-ZEPHYR_SRC_DIR = "${S}/${ZEPHYR_SAMPLE_NAME}"
-ZEPHYR_BASE = "${S}"
-OECMAKE_SOURCEPATH = "${ZEPHYR_SRC_DIR}"
-ZEPHYR_MODULES_append = "\;${S}/modules/crypto/tinycrypt"
-
-do_deploy () {
-install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf
-}
+ZEPHYR_SRC_DIR = "${S}/samples/bluetooth/peripheral_esp"
 
-addtask deploy after do_compile
-do_install[noexec] = "1"
+ZEPHYR_MODULES_append = "\;${S}/modules/crypto/tinycrypt"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-philosophers.bb 
b/recipes-kernel/zephyr-kernel/zephyr-philosophers.bb
index b8262ca..a2afb57 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-philosophers.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-philosophers.bb
@@ -1,14 +1,3 @@
-require zephyr-kernel.inc
-require zephyr-kernel-common.inc
-inherit deploy
+include zephyr-sample.inc
 
 ZEPHYR_SRC_DIR = "${S}/samples/philosophers"
-ZEPHYR_BASE = "${S}"
-OECMAKE_SOURCEPATH = "${ZEPHYR_SRC_DIR}"
-
-do_deploy () {
-install -D ${B}/zephyr/${ZEPHYR_MAKE_OUTPUT} ${DEPLOYDIR}/${PN}.elf
-}
-
-addtask deploy after do_compile
-do_install[noexec] = "1"
diff

[yocto] [meta-zephyr][PATCH V2 07/15] zephyr-kernel-common.inc: Reformat EXTRA_OECMAKE

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

This will improve diffs readability in the future.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
index abc55ba..330fe59 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
@@ -13,7 +13,16 @@ ZEPHYR_SYSROOT="${STAGING_DIR_TARGET}"
 
 ZEPHYR_MAKE_OUTPUT = "zephyr.elf"
 
-EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto 
-DEXTRA_CPPFLAGS=${CPPFLAGS}"
+EXTRA_OECMAKE = "\
+-DZEPHYR_BASE=${S} \
+-DZEPHYR_GCC_VARIANT=yocto \
+-DBOARD=${BOARD} \
+-DARCH=${ARCH} \
+-DCROSS_COMPILE=${CROSS_COMPILE} \
+-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} \
+-DZEPHYR_TOOLCHAIN_VARIANT=yocto \
+-DEXTRA_CPPFLAGS=${CPPFLAGS} \
+"
 
 ZEPHYR_MODULES = ""
 ZEPHYR_MODULES_append_arm = "\;${S}/modules/cmsis"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52338): https://lists.yoctoproject.org/g/yocto/message/52338
Mute This Topic: https://lists.yoctoproject.org/mt/80680673/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 05/15] zephyr-kernel-src-2.5.0-rc3.inc: Add support for zephyr kernel version 2.5.0-rc3

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

This version can be selected defining
PREFERRED_VERSION_zephyr-kernel ??= "2.5.0-rc3"

Signed-off-by: Andrei Gherzan 
---
 .../zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc  | 10 ++
 1 file changed, 10 insertions(+)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
new file mode 100644
index 000..4ee9883
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
@@ -0,0 +1,10 @@
+SRCREV_FORMAT = "default_cmsis"
+SRCREV_default = "v2.5.0-rc3"
+SRCREV_cmsis = "c3bd2094f92d574377f7af2aec147ae181aa5f8e"
+SRCREV_nordic = "f3434da6446380fcdd426dbe2866af21d0d549b6"
+SRCREV_stm32 = "cc8731dba4fd9c57d7fe8ea6149828b89c2bd635"
+SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
+SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
+SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
+
+PV = "2.5.0-rc3+git${SRCPV}"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52336): https://lists.yoctoproject.org/g/yocto/message/52336
Mute This Topic: https://lists.yoctoproject.org/mt/80680670/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 02/15] zephyr-flash-pyocd.bbclass: Add missing do_flash_usb dependency on do_deploy

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index 04500af..eca30c9 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -10,7 +10,7 @@ python do_flash_usb() {
 session.board.target.reset()
 }
 
-addtask do_flash_usb
+addtask do_flash_usb after do_deploy
 
 do_flash_usb[nostamp] = "1"
 do_flash_usb[vardepsexclude] = "BB_ORIGENV"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52333): https://lists.yoctoproject.org/g/yocto/message/52333
Mute This Topic: https://lists.yoctoproject.org/mt/80680665/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephyr][PATCH V2 01/15] zephyr-flash-dfu.bbclass: Add missing do_flash_usb dependency on do_deploy

2021-02-16 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-dfu.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-dfu.bbclass b/classes/zephyr-flash-dfu.bbclass
index 32f589a..b4f3d49 100644
--- a/classes/zephyr-flash-dfu.bbclass
+++ b/classes/zephyr-flash-dfu.bbclass
@@ -59,7 +59,7 @@ python do_flash_usb() {
 bb.utils.unlockfile(lock)
 }
 
-addtask do_flash_usb
+addtask do_flash_usb after do_deploy
 
 do_flash_usb[nostamp] = "1"
 do_flash_usb[vardepsexclude] = "BB_ORIGENV"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52332): https://lists.yoctoproject.org/g/yocto/message/52332
Mute This Topic: https://lists.yoctoproject.org/mt/80680664/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 12/14] zephyr-flash-pyocd.bbclass: Handle import error for pyocd modules

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index df3b631..4d24e6a 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,8 +1,11 @@
 CONNECT_TIMEOUT_SECONDS ?= "30"
 
 python do_flash_usb() {
-from pyocd.core.helpers import ConnectHelper
-from pyocd.flash.file_programmer import FileProgrammer
+try:
+from pyocd.core.helpers import ConnectHelper
+from pyocd.flash.file_programmer import FileProgrammer
+except ImportError:
+bb.fatal("Flashing with pyocd needs the relevant python package. Make 
sure your host provides it or consult your distribution packages for how to 
install this prerequisite.")
 
 timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52319): https://lists.yoctoproject.org/g/yocto/message/52319
Mute This Topic: https://lists.yoctoproject.org/mt/80651042/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 13/14] zephyr-flash-pyocd.bbclass: Implement configurable probe IDs to program

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Implement logic to configure what probes to program based on the
PYOCD_FLASH_IDS variable:
1. by default program all attached probes
2. change default behaviour by listing the probe IDs to flash

CONNECT_TIMEOUT_SECONDS was also renamed to maintain consistency with
the PYOCD_FLASH_IDS variable.

One can query the IDs using `pyocd list`.

The value of PYOCD_FLASH_IDS can also be injected into the datastore
using BB_ENV_EXTRAWHITE.

Signed-off-by: Andrei Gherzan 
---
 README.txt |  9 +
 classes/zephyr-flash-pyocd.bbclass | 57 --
 2 files changed, 48 insertions(+), 18 deletions(-)

diff --git a/README.txt b/README.txt
index bda872b..ce5338b 100644
--- a/README.txt
+++ b/README.txt
@@ -67,6 +67,15 @@ dfu-util and/or pyocd need to be installed in your system. 
If you observe
 permission errors or the flashing process seem to hang, follow those 
instructions:
 https://github.com/pyocd/pyOCD/tree/master/udev
 
+By default, pyocd tries to flash all the attached probes. This behaviour can be
+customised by defining the PYOCD_FLASH_IDS variable as a space-separated list
+of IDs. Once that is set, the tool will only try to program these IDs. You can
+query for the IDs by running `pyocd list` on your host while having the probes
+attached. Besides setting this variable through the build's configuration or
+metadata, you can also inject its value from command line with something like:
+
+$ PYOCD_FLASH_IDS='  ' 
BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE PYOCD_FLASH_IDS" bitbake  -c 
flash_usb
+
 Building and Running Zephyr Tests
 =
 Presently only toolchains for ARM, x86, IAMCU and Nios2 are supported.
diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index 4d24e6a..7e1cec5 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,4 +1,5 @@
-CONNECT_TIMEOUT_SECONDS ?= "30"
+PYOCD_CONNECT_TIMEOUT_SECONDS ?= "30"
+PYOCD_FLASH_IDS ?= "all"
 
 python do_flash_usb() {
 try:
@@ -7,26 +8,46 @@ python do_flash_usb() {
 except ImportError:
 bb.fatal("Flashing with pyocd needs the relevant python package. Make 
sure your host provides it or consult your distribution packages for how to 
install this prerequisite.")
 
-timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
+try:
+timeout = int(d.getVar('PYOCD_CONNECT_TIMEOUT_SECONDS'))
+except ValueError:
+bb.fatal(f"PYOCD_CONNECT_TIMEOUT_SECONDS was set to an invalid value: 
{d.getVar('PYOCD_CONNECT_TIMEOUT_SECONDS')}.")
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
-bb.plain(f"Attempting to flash {image} to board {d.getVar('BOARD')}")
+ids = d.getVar('PYOCD_FLASH_IDS')
+
+# Compute the list of IDs to program
+if ids == 'all':
+ids = []
+for probe in ConnectHelper.get_all_connected_probes(blocking=False):
+ids.append(probe.unique_id)
+if not ids:
+bb.fatal("No probe detected. Make sure your target is connected.")
+else:
+ids = ids.split()
+if not ids:
+bb.fatal("No probe requested for programming. Make sure 
PYOCD_FLASH_IDS is set.")
 
-# Try to connect to a probe with a timeout
-now = 0
-step = 3
-while True:
-session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True)
-if session:
-break
-if now >= timeout:
-bb.fatal("Timeout while trying to connect to a probe. Make sure 
the target device is connected and the udev is configured accordingly. See 
<https://github.com/mbedmicro/pyOCD/tree/master/udev> for help.")
-bb.warn("Can't connect to the probe. Retrying in %d seconds..." % step)
-time.sleep(step)
-now += step
+# Program each ID
+for id in ids:
+bb.plain(f"Attempting to flash {os.path.basename(image)} to board 
{d.getVar('BOARD')} [{id}]")
 
-with session:
-FileProgrammer(session).program(image)
-session.board.target.reset()
+# Try to connect to a probe with a timeout
+now = 0
+step = 3
+while True:
+session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True, unique_id=id)
+if session:
+break
+if now >= timeout:
+bb.fatal(f"Timeout while trying to connect to probe ID: {id}. 
Make sure the target device is connected and the udev is configured 
accordingly. See <https://github.com/mbedmicro/pyOCD/tree/master/udev> for 
help.")
+bb.warn(f"Can't connect to the probe ID: {id}. Retrying in {step} 
seconds...")
+time.sleep(step)
+now += step
+
+# Program 

[yocto] [meta-zephy][PATCH 10/14] zephyr-peripheral-hr: Add recipe for BT HR sample

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb | 5 +
 1 file changed, 5 insertions(+)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb

diff --git a/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb 
b/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb
new file mode 100644
index 000..e6ef7b8
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-peripheral-hr.bb
@@ -0,0 +1,5 @@
+include zephyr-sample.inc
+
+ZEPHYR_SRC_DIR = "${S}/samples/bluetooth/peripheral_hr"
+
+ZEPHYR_MODULES_append = "\;${S}/modules/crypto/tinycrypt"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52317): https://lists.yoctoproject.org/g/yocto/message/52317
Mute This Topic: https://lists.yoctoproject.org/mt/80651040/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 14/14] zephyr-kernel-src: Upgrade 2.5.0-rc3 to rc4

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 ...rnel-src-2.5.0-rc3.inc => zephyr-kernel-src-2.5.0-rc4.inc} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
 rename recipes-kernel/zephyr-kernel/{zephyr-kernel-src-2.5.0-rc3.inc => 
zephyr-kernel-src-2.5.0-rc4.inc} (86%)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
similarity index 86%
rename from recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
rename to recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
index 4ee9883..b8aa4dc 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc4.inc
@@ -1,5 +1,5 @@
 SRCREV_FORMAT = "default_cmsis"
-SRCREV_default = "v2.5.0-rc3"
+SRCREV_default = "v2.5.0-rc4"
 SRCREV_cmsis = "c3bd2094f92d574377f7af2aec147ae181aa5f8e"
 SRCREV_nordic = "f3434da6446380fcdd426dbe2866af21d0d549b6"
 SRCREV_stm32 = "cc8731dba4fd9c57d7fe8ea6149828b89c2bd635"
@@ -7,4 +7,4 @@ SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
 SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
 SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
 
-PV = "2.5.0-rc3+git${SRCPV}"
+PV = "2.5.0-rc4+git${SRCPV}"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52321): https://lists.yoctoproject.org/g/yocto/message/52321
Mute This Topic: https://lists.yoctoproject.org/mt/80651044/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 11/14] zephyr-flash-pyocd.bbclass: Flash the first probe found with a timeout

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Currently the code flashes the firmware in a blocking way. If the host
is not configured accordingly (for example in terms of permissions),
this would hang undefinitely. This can easily confuse users and in order
to avoid this, the patch changes to unblocking session creation and
opening call, wrapping the tries in some relevant logging. The timeout
can be defined with `CONNECT_TIMEOUT_SECONDS` which defaults to 30
seconds.

Also, by default, when multiple probes are attached, the session call
will return a selection choice. This would obviously break under bitbake
with an exception:
Exception: EOFError: EOF when reading a line
Avoid this by selecting the first found probe.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 18 +-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index eca30c9..df3b631 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -1,11 +1,27 @@
+CONNECT_TIMEOUT_SECONDS ?= "30"
+
 python do_flash_usb() {
 from pyocd.core.helpers import ConnectHelper
 from pyocd.flash.file_programmer import FileProgrammer
 
+timeout = int(d.getVar('CONNECT_TIMEOUT_SECONDS'))
 image = f"{d.getVar('DEPLOY_DIR_IMAGE')}/{d.getVar('PN')}.elf"
 bb.plain(f"Attempting to flash {image} to board {d.getVar('BOARD')}")
 
-with ConnectHelper.session_with_chosen_probe() as session:
+# Try to connect to a probe with a timeout
+now = 0
+step = 3
+while True:
+session = ConnectHelper.session_with_chosen_probe(blocking=False, 
return_first=True)
+if session:
+break
+if now >= timeout:
+bb.fatal("Timeout while trying to connect to a probe. Make sure 
the target device is connected and the udev is configured accordingly. See 
<https://github.com/mbedmicro/pyOCD/tree/master/udev> for help.")
+bb.warn("Can't connect to the probe. Retrying in %d seconds..." % step)
+time.sleep(step)
+now += step
+
+with session:
 FileProgrammer(session).program(image)
 session.board.target.reset()
 }
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52318): https://lists.yoctoproject.org/g/yocto/message/52318
Mute This Topic: https://lists.yoctoproject.org/mt/80651041/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 08/14] zephyr-kernel.inc: Remove include file

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

This file has little advantage and can be easily replaced by just
directly including the src include file.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-image.inc  | 2 +-
 recipes-kernel/zephyr-kernel/zephyr-kernel.inc | 4 
 2 files changed, 1 insertion(+), 5 deletions(-)
 delete mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel.inc

diff --git a/recipes-kernel/zephyr-kernel/zephyr-image.inc 
b/recipes-kernel/zephyr-kernel/zephyr-image.inc
index e8b8871..c77692d 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-image.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-image.inc
@@ -1,4 +1,4 @@
-require zephyr-kernel.inc
+require zephyr-kernel-src.inc
 require zephyr-kernel-common.inc
 
 inherit testimage
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel.inc
deleted file mode 100644
index 903973d..000
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel.inc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-inherit zephyr-kernel-src
-
-S = "${WORKDIR}/git"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52315): https://lists.yoctoproject.org/g/yocto/message/52315
Mute This Topic: https://lists.yoctoproject.org/mt/80651038/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 07/14] zephyr-kernel-common.inc: Reformat EXTRA_OECMAKE

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

This will improve diffs readability in the future.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
index abc55ba..330fe59 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
@@ -13,7 +13,16 @@ ZEPHYR_SYSROOT="${STAGING_DIR_TARGET}"
 
 ZEPHYR_MAKE_OUTPUT = "zephyr.elf"
 
-EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto 
-DEXTRA_CPPFLAGS=${CPPFLAGS}"
+EXTRA_OECMAKE = "\
+-DZEPHYR_BASE=${S} \
+-DZEPHYR_GCC_VARIANT=yocto \
+-DBOARD=${BOARD} \
+-DARCH=${ARCH} \
+-DCROSS_COMPILE=${CROSS_COMPILE} \
+-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} \
+-DZEPHYR_TOOLCHAIN_VARIANT=yocto \
+-DEXTRA_CPPFLAGS=${CPPFLAGS} \
+"
 
 ZEPHYR_MODULES = ""
 ZEPHYR_MODULES_append_arm = "\;${S}/modules/cmsis"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52314): https://lists.yoctoproject.org/g/yocto/message/52314
Mute This Topic: https://lists.yoctoproject.org/mt/80651035/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 06/14] zephyr-kernel-common.inc: Fix configuration CPPFLAGS warning

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Configure warns when CPPFLAGS is provided as environment variable and
expects its value to be passed to cmake. This patch does that to
surpress the warning.

Signed-off-by: Andrei Gherzan 
---
 recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
index 5313030..abc55ba 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-common.inc
@@ -13,8 +13,7 @@ ZEPHYR_SYSROOT="${STAGING_DIR_TARGET}"
 
 ZEPHYR_MAKE_OUTPUT = "zephyr.elf"
 
-
-EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto"
+EXTRA_OECMAKE = " -DZEPHYR_BASE=${S} -DZEPHYR_GCC_VARIANT=yocto 
-DBOARD=${BOARD} -DARCH=${ARCH} -DCROSS_COMPILE=${CROSS_COMPILE} 
-DZEPHYR_SYSROOT=${ZEPHYR_SYSROOT} -DZEPHYR_TOOLCHAIN_VARIANT=yocto 
-DEXTRA_CPPFLAGS=${CPPFLAGS}"
 
 ZEPHYR_MODULES = ""
 ZEPHYR_MODULES_append_arm = "\;${S}/modules/cmsis"
@@ -26,7 +25,6 @@ EXTRA_OECMAKE_append = " -DZEPHYR_MODULES=${ZEPHYR_MODULES}"
 
 export ZEPHYR_BASE="${S}"
 
-
 DEPENDS += "gperf-native python3-pyelftools-native python3-pyyaml-native 
python3-pykwalify-native"
 CROSS_COMPILE = "${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}"
 
@@ -51,3 +49,8 @@ OE_TERMINAL_EXPORTS += "ZEPHYR_SYSROOT"
 OE_TERMINAL_EXPORTS += "ZEPHYR_GCC_VARIANT"
 
 IMAGE_FSTYPES = "elf bin"
+
+do_configure_prepend() {
+# Zephyr expects CPPFLAGS as cmake argument as and ignores env variables.
+unset CPPFLAGS
+}
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52313): https://lists.yoctoproject.org/g/yocto/message/52313
Mute This Topic: https://lists.yoctoproject.org/mt/80651034/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 05/14] zephyr-kernel-src-2.5.0-rc3.inc: Add support for zephyr kernel version 2.5.0-rc3

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

This version can be selected defining
PREFERRED_VERSION_zephyr-kernel ??= "2.5.0-rc3"

Signed-off-by: Andrei Gherzan 
---
 .../zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc  | 10 ++
 1 file changed, 10 insertions(+)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc

diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
new file mode 100644
index 000..4ee9883
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.5.0-rc3.inc
@@ -0,0 +1,10 @@
+SRCREV_FORMAT = "default_cmsis"
+SRCREV_default = "v2.5.0-rc3"
+SRCREV_cmsis = "c3bd2094f92d574377f7af2aec147ae181aa5f8e"
+SRCREV_nordic = "f3434da6446380fcdd426dbe2866af21d0d549b6"
+SRCREV_stm32 = "cc8731dba4fd9c57d7fe8ea6149828b89c2bd635"
+SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
+SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
+SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
+
+PV = "2.5.0-rc3+git${SRCPV}"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52312): https://lists.yoctoproject.org/g/yocto/message/52312
Mute This Topic: https://lists.yoctoproject.org/mt/80651033/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 04/14] zephyr-kernel-src: Restructure recipe

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

* Restructure recipe to use include files as opposed to a bbclass. The
  latter is unnatural when defining versions, sources etc.
* Make the zephyr-kernel-src follow the version as defined by
  PREFERRED_VERSION_zephyr-kernel.
* Make the setup of the zephyr-kernel-src.inc extensible for multiple
  versions.

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-kernel-src.bbclass | 37 ---
 .../zephyr-kernel/zephyr-kernel-src-2.4.0.inc | 10 +
 ...kernel-src_2.4.bb => zephyr-kernel-src.bb} |  9 +
 .../zephyr-kernel/zephyr-kernel-src.inc   | 20 ++
 4 files changed, 32 insertions(+), 44 deletions(-)
 delete mode 100644 classes/zephyr-kernel-src.bbclass
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
 rename recipes-kernel/zephyr-kernel/{zephyr-kernel-src_2.4.bb => 
zephyr-kernel-src.bb} (80%)
 create mode 100644 recipes-kernel/zephyr-kernel/zephyr-kernel-src.inc

diff --git a/classes/zephyr-kernel-src.bbclass 
b/classes/zephyr-kernel-src.bbclass
deleted file mode 100644
index c6c8d61..000
--- a/classes/zephyr-kernel-src.bbclass
+++ /dev/null
@@ -1,37 +0,0 @@
-#Set relevant variables based on Zephyr kernel version
-
-PREFERRED_VERSION_zephyr-kernel ??= "2.4.0"
-
-SRCREV_FORMAT = "default_cmsis"
-SRCREV_default = "7a3b253ced7333f5c0269387a7f3ed1dee69739d"
-SRCREV_cmsis = "542b2296e6d515b265e25c6b7208e8fea3014f90"
-SRCREV_nordic = "d8a6ea9695ddf792bb18bb6035c13b1daac5d79c"
-SRCREV_stm32 = "f0e11398128ac9abdff713da5d3035e6c96e9b86"
-SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
-SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
-SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
-
-SRC_URI = 
"git://github.com/zephyrproject-rtos/zephyr.git;protocol=https;branch=v2.4-branch;name=default
 \
-   
git://github.com/zephyrproject-rtos/cmsis.git;protocol=https;destsuffix=git/modules/cmsis;name=cmsis
 \
-   
git://github.com/zephyrproject-rtos/hal_nordic.git;protocol=https;destsuffix=git/modules/hal/nordic;name=nordic
 \
-   
git://github.com/zephyrproject-rtos/hal_stm32.git;protocol=https;destsuffix=git/modules/hal/stm32;name=stm32
 \
-   
git://github.com/zephyrproject-rtos/open-amp.git;protocol=https;destsuffix=git/modules/lib/open-amp;name=open-amp
 \
-   
git://github.com/zephyrproject-rtos/libmetal.git;protocol=https;destsuffix=git/modules/hal/libmetal;name=libmetal
 \
-   
git://github.com/zephyrproject-rtos/tinycrypt.git;protocol=https;destsuffix=git/modules/crypto/tinycrypt;name=tinycrypt
 \
-   file://0001-cmake-add-yocto-toolchain.patch \
-  "
-
-PV = "2.4.0+git${SRCPV}"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=fa818a259cbed7ce8bc2a22d35a464fc"
-
-ZEPHYR_TEST_SRCDIR = "tests/legacy/kernel/"
-
-python () {
-src_pn = d.getVar('PREFERRED_VERSION_zephyr-kernel', True)
-if src_pn == '2.4.0':
-return
-else:
-bb.error("Unsupported Zephyr kernel version requested")
-}
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
new file mode 100644
index 000..d1ef80e
--- /dev/null
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src-2.4.0.inc
@@ -0,0 +1,10 @@
+SRCREV_FORMAT = "default_cmsis"
+SRCREV_default = "7a3b253ced7333f5c0269387a7f3ed1dee69739d"
+SRCREV_cmsis = "542b2296e6d515b265e25c6b7208e8fea3014f90"
+SRCREV_nordic = "d8a6ea9695ddf792bb18bb6035c13b1daac5d79c"
+SRCREV_stm32 = "f0e11398128ac9abdff713da5d3035e6c96e9b86"
+SRCREV_open-amp = "de1b85a13032a2de1d8b6695ae5f800b613e739d"
+SRCREV_libmetal = "9d4ee2c3cfd5f49861939447990f3b7d7bf9bf94"
+SRCREV_tinycrypt = "3e9a49d2672ec01435ffbf0d788db6d95ef28de0"
+
+PV = "2.4.0+git${SRCPV}"
diff --git a/recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb 
b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
similarity index 80%
rename from recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb
rename to recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
index 8e8b5b8..210cfa7 100644
--- a/recipes-kernel/zephyr-kernel/zephyr-kernel-src_2.4.bb
+++ b/recipes-kernel/zephyr-kernel/zephyr-kernel-src.bb
@@ -1,16 +1,12 @@
+include zephyr-kernel-src.inc
 
-inherit zephyr-kernel-src
-inherit cmake
-
-S = "${WORKDIR}/git"
+ZEPHYR_TEST_SRCDIR = "tests/legacy/kernel/"
 
 IMAGE_NO_MANIFEST = "1"
 INHIBIT_DEFAULT_DEPS = "1"
 
 do_configure[noexec] = "1"
 do_compile[noexec] = "1"
-
-
 do_install () {
 kerneldir=${D}/usr/src/zephyr
 install -d $kerneldir
@@ -21,4 +17,3 @@ PACKAGES = "${PN}"
 FILES_${PN} = "/usr/src/zephyr"
 
 SYSROOT_D

[yocto] [meta-zephy][PATCH 02/14] zephyr-flash-pyocd.bbclass: Add missing do_flash_usb dependency on do_deploy

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-pyocd.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-pyocd.bbclass 
b/classes/zephyr-flash-pyocd.bbclass
index 04500af..eca30c9 100644
--- a/classes/zephyr-flash-pyocd.bbclass
+++ b/classes/zephyr-flash-pyocd.bbclass
@@ -10,7 +10,7 @@ python do_flash_usb() {
 session.board.target.reset()
 }
 
-addtask do_flash_usb
+addtask do_flash_usb after do_deploy
 
 do_flash_usb[nostamp] = "1"
 do_flash_usb[vardepsexclude] = "BB_ORIGENV"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52309): https://lists.yoctoproject.org/g/yocto/message/52309
Mute This Topic: https://lists.yoctoproject.org/mt/80651030/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 03/14] Cleanup superflous new lines

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyrtest.bbclass  | 2 --
 conf/distro/zephyr.conf | 1 -
 conf/machine/include/tune-arc.inc   | 1 -
 conf/machine/include/tune-iamcu.inc | 1 -
 conf/machine/include/tune-nios2.inc | 1 -
 5 files changed, 6 deletions(-)

diff --git a/classes/zephyrtest.bbclass b/classes/zephyrtest.bbclass
index 3acc4c3..248fd15 100644
--- a/classes/zephyrtest.bbclass
+++ b/classes/zephyrtest.bbclass
@@ -51,5 +51,3 @@ python testdata_clean() {
 }
 
 addtask do_testdata_write before do_build after do_deploy
-
-
diff --git a/conf/distro/zephyr.conf b/conf/distro/zephyr.conf
index a98da32..6ecd421 100644
--- a/conf/distro/zephyr.conf
+++ b/conf/distro/zephyr.conf
@@ -1,4 +1,3 @@
-
 DISTRO = "zephyr"
 DISTRO_NAME = "Zephyr"
 DISTRO_VERSION = "1.0"
diff --git a/conf/machine/include/tune-arc.inc 
b/conf/machine/include/tune-arc.inc
index 4bb6f4f..ff841e7 100644
--- a/conf/machine/include/tune-arc.inc
+++ b/conf/machine/include/tune-arc.inc
@@ -18,4 +18,3 @@ AVAILTUNES += "no-sdata"
 TUNEVALID[nodata] = "ARC no-delete-null-pointer-checks"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 
'no-delete-null-pointer-checks', ' -fno-delete-null-pointer-checks', '', d)}"
 AVAILTUNES += "no-delete-null-pointer-checks"
-
diff --git a/conf/machine/include/tune-iamcu.inc 
b/conf/machine/include/tune-iamcu.inc
index 6935375..20a93a6 100644
--- a/conf/machine/include/tune-iamcu.inc
+++ b/conf/machine/include/tune-iamcu.inc
@@ -9,4 +9,3 @@ TUNE_ARCH = "i586"
 TUNEVALID[iamcu] = "Intel MCU"
 
 PACKAGE_EXTRA_ARCHS_tune-iamcu = "iamcu"
-
diff --git a/conf/machine/include/tune-nios2.inc 
b/conf/machine/include/tune-nios2.inc
index c74326d..e8662eb 100644
--- a/conf/machine/include/tune-nios2.inc
+++ b/conf/machine/include/tune-nios2.inc
@@ -1,4 +1,3 @@
-
 # Nios2 Architecture Definition
 
 DEFAULTTUNE ?= "nios2"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52310): https://lists.yoctoproject.org/g/yocto/message/52310
Mute This Topic: https://lists.yoctoproject.org/mt/80651031/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[yocto] [meta-zephy][PATCH 01/14] zephyr-flash-dfu.bbclass: Add missing do_flash_usb dependency on do_deploy

2021-02-15 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 classes/zephyr-flash-dfu.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/classes/zephyr-flash-dfu.bbclass b/classes/zephyr-flash-dfu.bbclass
index 32f589a..b4f3d49 100644
--- a/classes/zephyr-flash-dfu.bbclass
+++ b/classes/zephyr-flash-dfu.bbclass
@@ -59,7 +59,7 @@ python do_flash_usb() {
 bb.utils.unlockfile(lock)
 }
 
-addtask do_flash_usb
+addtask do_flash_usb after do_deploy
 
 do_flash_usb[nostamp] = "1"
 do_flash_usb[vardepsexclude] = "BB_ORIGENV"
-- 
2.30.1


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#52308): https://lists.yoctoproject.org/g/yocto/message/52308
Mute This Topic: https://lists.yoctoproject.org/mt/80651029/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] [meta-raspberrypi][PATCH] userland: add knob for ALL_APPS

2020-11-30 Thread Andrei Gherzan
Hi,

On Fri, Nov 27, 2020 at 10:16 AM Trevor Woerner  wrote:

> The userland sources include a bunch of sample applications. Add an
> "allapps"
> PACKAGECONFIG to allow the user to build the additional optional
> applications.
>
> Signed-off-by: Trevor Woerner 
>

Merged to master. Thanks, Trevor.

---
Andrei

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#51594): https://lists.yoctoproject.org/g/yocto/message/51594
Mute This Topic: https://lists.yoctoproject.org/mt/78544800/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [yocto] Certificate expired, https://git.yoctoproject.org/

2020-04-28 Thread Andrei Gherzan
Hi, 

On 28 April 2020 09:54:41 BST, Stefano Babic  wrote:
>Hi,
>
>certificate is expired - someone having the same issue ?

It did expire, indeed. 

git.yoctoproject.org uses an invalid security certificate. The certificate 
expired on 28 April 2020, 07:51:54 GMT+1. The current time is 28 April 2020, 
10:21. Error code: SEC_ERROR_EXPIRED_CERTIFICATE
--
Andrei Gherzan
gpg: rsa4096/D4D94F67AD0E9640 | t: @agherzan
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#49262): https://lists.yoctoproject.org/g/yocto/message/49262
Mute This Topic: https://lists.yoctoproject.org/mt/73323373/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: 
https://lists.yoctoproject.org/g/yocto/leave/6691583/737036229/xyzzy  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


[yocto] [psplash][PATCH 1/1] psplash-fb: Avoid racing issues on reading fb0

2020-02-13 Thread Andrei Gherzan
When starting psplash as early as possible in the boot process, the fb
device node might not be ready. This patch adds a loop on reading the
fb0 device with a timeout of 5 seconds.

Signed-off-by: Andrei Gherzan 
---
 psplash-fb.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/psplash-fb.c b/psplash-fb.c
index 6603572..6700a3b 100644
--- a/psplash-fb.c
+++ b/psplash-fb.c
@@ -137,6 +137,7 @@ psplash_fb_new (int angle, int fbdev_id)
   struct fb_fix_screeninfo fb_fix;
   int  off;
   char fbdev[9] = "/dev/fb0";
+  int retries = 0;
 
   PSplashFB *fb = NULL;
 
@@ -156,7 +157,9 @@ psplash_fb_new (int angle, int fbdev_id)
 
   fb->fd = -1;
 
-  if ((fb->fd = open (fbdev, O_RDWR)) < 0)
+  while ((fb->fd = open(fbdev, O_RDWR)) < 0 && retries++ <= 100)
+ usleep(5);
+  if (fb->fd < 0)
 {
   fprintf(stderr,
   "Error opening %s\n",
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#48389): https://lists.yoctoproject.org/g/yocto/message/48389
Mute This Topic: https://lists.yoctoproject.org/mt/71238022/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [yocto] [psplash][PATCH 1/3] Support --with-font configure option to use other font headers

2020-01-15 Thread Andrei Gherzan
Hi,

On Tue, Dec 17, 2019 at 10:22 AM  wrote:

> From: David Steinberg 
>
> Signed-off-by: David Steinberg 
>

Small ping for this patch set.


> ---
>  Makefile.am  | 4 ++--
>  configure.ac | 6 ++
>  psplash.c| 6 +++---
>  3 files changed, 11 insertions(+), 5 deletions(-)
>
> diff --git a/Makefile.am b/Makefile.am
> index a14152a..3721a6e 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -1,11 +1,11 @@
>  bin_PROGRAMS=psplash psplash-write
>
> -AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE
> +AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE
> -DFONT_HEADER=\"$(FONT_NAME)-font.h\" -DFONT_DEF=$(FONT_NAME)_font
>
>  psplash_SOURCES = psplash.c psplash.h psplash-fb.c psplash-fb.h \
>psplash-console.c psplash-console.h   \
>   psplash-colors.h psplash-config.h \
> - psplash-poky-img.h psplash-bar-img.h radeon-font.h
> + psplash-poky-img.h psplash-bar-img.h $(FONT_NAME)-font.h
>
>  psplash_write_SOURCES = psplash-write.c psplash.h
>
> diff --git a/configure.ac b/configure.ac
> index 1c4d919..9e78ac0 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -14,6 +14,12 @@ fi
>
>  AC_SUBST(GCC_FLAGS)
>
> +AC_ARG_WITH([font],
> +AS_HELP_STRING([--with-font], [Set font to use (default is
> 'radeon')]),
> +[FONT_NAME=$withval],
> +[FONT_NAME=radeon])
> +AC_SUBST([FONT_NAME])
> +
>  AC_OUTPUT([
>  Makefile
>  ])
> diff --git a/psplash.c b/psplash.c
> index 992e199..f6442f1 100644
> --- a/psplash.c
> +++ b/psplash.c
> @@ -23,7 +23,7 @@
>  #include "psplash-colors.h"
>  #include "psplash-poky-img.h"
>  #include "psplash-bar-img.h"
> -#include "radeon-font.h"
> +#include FONT_HEADER
>
>  #define SPLIT_LINE_POS(fb)  \
> (  (fb)->height \
> @@ -45,7 +45,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
>  {
>int w, h;
>
> -  psplash_fb_text_size (, , _font, msg);
> +  psplash_fb_text_size (, , _DEF, msg);
>
>DBG("displaying '%s' %ix%i\n", msg, w, h);
>
> @@ -62,7 +62,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
> (fb->width-w)/2,
> SPLIT_LINE_POS(fb) - h,
> PSPLASH_TEXT_COLOR,
> -   _font,
> +   _DEF,
> msg);
>  }
>
> --
> 2.17.1
>
>
--
Andrei Gherzan
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#47977): https://lists.yoctoproject.org/g/yocto/message/47977
Mute This Topic: https://lists.yoctoproject.org/mt/68757449/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [yocto] [PATCH 1/3] Support --with-font configure option to use other font headers

2019-12-17 Thread Andrei Gherzan
Hello,

On Tue, Dec 17, 2019 at 10:19 AM  wrote:

> From: David Steinberg 
>
> Signed-off-by: David Steinberg 
>

Please ignore this series. I've re-sent it with the correct "psplash" email
subject tag. Sorry for the extra noise.

Regards,
Andrei
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#47725): https://lists.yoctoproject.org/g/yocto/message/47725
Mute This Topic: https://lists.yoctoproject.org/mt/68757435/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


[yocto] [psplash][PATCH 2/3] Double buffering support

2019-12-17 Thread Andrei Gherzan
From: Andrei Gherzan 

'psplash' uses only one buffer which can cause tearing artifacts. This
change uses the FBIOPAN_DISPLAY ioctl as a way to handle page flipping
and also does that after a vsync interrupt to remove any tearing issues.

Signed-off-by: Andrei Gherzan 
---
 psplash-fb.c | 121 ++-
 psplash-fb.h |   8 
 psplash.c|  10 -
 3 files changed, 118 insertions(+), 21 deletions(-)

diff --git a/psplash-fb.c b/psplash-fb.c
index c064d18..3cb5d2d 100644
--- a/psplash-fb.c
+++ b/psplash-fb.c
@@ -18,6 +18,46 @@
 #include 
 #include "psplash.h"
 
+static void
+psplash_wait_for_vsync(PSplashFB *fb)
+{
+  int err = ioctl(fb->fd, FBIO_WAITFORVSYNC, 0);
+  if (err != 0)
+fprintf(stderr, "Error, FB vsync ioctl [%d]\n", err);
+}
+
+void
+psplash_fb_flip(PSplashFB *fb, int sync)
+{
+  char *tmp;
+
+  if (fb->double_buffering) {
+
+/* Carry out the flip after a vsync */
+psplash_wait_for_vsync(fb);
+
+/* Switch the current activate area in fb */
+if (fb->fb_var.yoffset == 0 ) {
+  fb->fb_var.yoffset = fb->real_height;
+} else {
+  fb->fb_var.yoffset = 0;
+}
+if (ioctl(fb->fd, FBIOPAN_DISPLAY, >fb_var) == -1 ) {
+  fprintf(stderr, "psplash_fb_flip: FBIOPAN_DISPLAY failed\n");
+}
+
+/* Switch the front and back data pointers */
+tmp = fb->fdata;
+fb->fdata = fb->bdata;
+fb->bdata = tmp;
+
+/* Sync new front to new back when requested */
+if (sync) {
+  memcpy(fb->bdata, fb->fdata, fb->stride * fb->real_height);
+}
+  }
+}
+
 void
 psplash_fb_destroy (PSplashFB *fb)
 {
@@ -163,6 +203,29 @@ psplash_fb_new (int angle, int fbdev_id)
   goto fail;
 }
 
+  /* Setup double virtual resolution for double buffering */
+  if (ioctl(fb->fd, FBIOPAN_DISPLAY, _var) == -1) {
+fprintf(stderr, "FBIOPAN_DISPLAY not supported, double buffering 
disabled");
+  } else {
+if (fb_var.yres_virtual == fb_var.yres * 2) {
+  DBG("Virtual resolution already double");
+  fb->double_buffering = 1;
+} else {
+  fb_var.yres_virtual = fb_var.yres * 2;
+  if (ioctl(fb->fd, FBIOPUT_VSCREENINFO, _var) == -1) {
+fprintf(stderr, "FBIOPUT_VSCREENINFO failed, double buffering 
disabled");
+  } else {
+if (ioctl(fb->fd, FBIOGET_FSCREENINFO, _fix) == -1) {
+  perror(" Error getting the fixed framebuffer info");
+  goto fail;
+} else {
+  DBG("Virtual resolution set to double");
+  fb->double_buffering = 1;
+}
+  }
+}
+  }
+
   fb->real_width  = fb->width  = fb_var.xres;
   fb->real_height = fb->height = fb_var.yres;
   fb->bpp= fb_var.bits_per_pixel;
@@ -201,8 +264,7 @@ psplash_fb_new (int angle, int fbdev_id)
   fb->width, fb->height, fb->bpp, fb->stride);
 
   fb->base = (char *) mmap ((caddr_t) NULL,
-   /*fb_fix.smem_len */
-   fb->stride * fb->height,
+   fb_fix.smem_len,
PROT_READ|PROT_WRITE,
MAP_SHARED,
fb->fd, 0);
@@ -217,6 +279,23 @@ psplash_fb_new (int angle, int fbdev_id)
 
   fb->data = fb->base + off;
 
+  if (fb->double_buffering) {
+/* fb_var is needed when flipping the buffers */
+memcpy(>fb_var, _var, sizeof(struct fb_var_screeninfo));
+if (fb->fb_var.yoffset == 0) {
+  printf("to back\n");
+  fb->fdata = fb->data;
+  fb->bdata = fb->data + fb->stride * fb->height;
+} else {
+  printf("to front\n");
+  fb->fdata = fb->data + fb->stride * fb->height;
+  fb->bdata = fb->data;
+}
+  } else {
+fb->fdata = fb->data;
+fb->bdata = fb->data;
+  }
+
 #if 0
   /* FIXME: No support for 8pp as yet  */
   if (visual == FB_VISUAL_PSEUDOCOLOR
@@ -274,6 +353,8 @@ psplash_fb_plot_pixel (PSplashFB*fb,
   uint8green,
   uint8blue)
 {
+  /* Always write to back data (bdata) which points to the right data with or
+   * without double buffering support */
   int off;
 
   if (x < 0 || x > fb->width-1 || y < 0 || y > fb->height-1)
@@ -301,22 +382,22 @@ psplash_fb_plot_pixel (PSplashFB*fb,
   {
   case 24:
 #if __BYTE_ORDER == __BIG_ENDIAN
-*(fb->data + off + 0) = red;
-*(fb->data + off + 1) = green;
-*(fb->data + off + 2) = blue;
+*(fb->bdata + off + 0) = red;
+*(fb->bdata + off + 1) = green;
+*(fb->bdata + off + 2) = blue;
 #else
-*(fb->data + off + 0) = blue;
-*(fb->data + off + 1) = green;
-*(fb->data + off + 2) = red;
+*(fb->bdata + off +

[yocto] [psplash][PATCH 1/3] Support --with-font configure option to use other font headers

2019-12-17 Thread Andrei Gherzan
From: David Steinberg 

Signed-off-by: David Steinberg 
---
 Makefile.am  | 4 ++--
 configure.ac | 6 ++
 psplash.c| 6 +++---
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index a14152a..3721a6e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,11 +1,11 @@
 bin_PROGRAMS=psplash psplash-write
 
-AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE
+AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE -DFONT_HEADER=\"$(FONT_NAME)-font.h\" 
-DFONT_DEF=$(FONT_NAME)_font
 
 psplash_SOURCES = psplash.c psplash.h psplash-fb.c psplash-fb.h \
   psplash-console.c psplash-console.h   \
  psplash-colors.h psplash-config.h \
- psplash-poky-img.h psplash-bar-img.h radeon-font.h
+ psplash-poky-img.h psplash-bar-img.h $(FONT_NAME)-font.h
 
 psplash_write_SOURCES = psplash-write.c psplash.h
 
diff --git a/configure.ac b/configure.ac
index 1c4d919..9e78ac0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -14,6 +14,12 @@ fi
 
 AC_SUBST(GCC_FLAGS)
 
+AC_ARG_WITH([font],
+AS_HELP_STRING([--with-font], [Set font to use (default is 'radeon')]),
+[FONT_NAME=$withval],
+[FONT_NAME=radeon])
+AC_SUBST([FONT_NAME])
+
 AC_OUTPUT([
 Makefile
 ])
diff --git a/psplash.c b/psplash.c
index 992e199..f6442f1 100644
--- a/psplash.c
+++ b/psplash.c
@@ -23,7 +23,7 @@
 #include "psplash-colors.h"
 #include "psplash-poky-img.h"
 #include "psplash-bar-img.h"
-#include "radeon-font.h"
+#include FONT_HEADER
 
 #define SPLIT_LINE_POS(fb)  \
(  (fb)->height \
@@ -45,7 +45,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
 {
   int w, h;
 
-  psplash_fb_text_size (, , _font, msg);
+  psplash_fb_text_size (, , _DEF, msg);
 
   DBG("displaying '%s' %ix%i\n", msg, w, h);
 
@@ -62,7 +62,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
(fb->width-w)/2, 
SPLIT_LINE_POS(fb) - h,
PSPLASH_TEXT_COLOR,
-   _font,
+   _DEF,
msg);
 }
 
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#47722): https://lists.yoctoproject.org/g/yocto/message/47722
Mute This Topic: https://lists.yoctoproject.org/mt/68757449/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


[yocto] [PATCH 2/3] Double buffering support

2019-12-17 Thread Andrei Gherzan
From: Andrei Gherzan 

'psplash' uses only one buffer which can cause tearing artifacts. This
change uses the FBIOPAN_DISPLAY ioctl as a way to handle page flipping
and also does that after a vsync interrupt to remove any tearing issues.

Signed-off-by: Andrei Gherzan 
---
 psplash-fb.c | 121 ++-
 psplash-fb.h |   8 
 psplash.c|  10 -
 3 files changed, 118 insertions(+), 21 deletions(-)

diff --git a/psplash-fb.c b/psplash-fb.c
index c064d18..3cb5d2d 100644
--- a/psplash-fb.c
+++ b/psplash-fb.c
@@ -18,6 +18,46 @@
 #include 
 #include "psplash.h"
 
+static void
+psplash_wait_for_vsync(PSplashFB *fb)
+{
+  int err = ioctl(fb->fd, FBIO_WAITFORVSYNC, 0);
+  if (err != 0)
+fprintf(stderr, "Error, FB vsync ioctl [%d]\n", err);
+}
+
+void
+psplash_fb_flip(PSplashFB *fb, int sync)
+{
+  char *tmp;
+
+  if (fb->double_buffering) {
+
+/* Carry out the flip after a vsync */
+psplash_wait_for_vsync(fb);
+
+/* Switch the current activate area in fb */
+if (fb->fb_var.yoffset == 0 ) {
+  fb->fb_var.yoffset = fb->real_height;
+} else {
+  fb->fb_var.yoffset = 0;
+}
+if (ioctl(fb->fd, FBIOPAN_DISPLAY, >fb_var) == -1 ) {
+  fprintf(stderr, "psplash_fb_flip: FBIOPAN_DISPLAY failed\n");
+}
+
+/* Switch the front and back data pointers */
+tmp = fb->fdata;
+fb->fdata = fb->bdata;
+fb->bdata = tmp;
+
+/* Sync new front to new back when requested */
+if (sync) {
+  memcpy(fb->bdata, fb->fdata, fb->stride * fb->real_height);
+}
+  }
+}
+
 void
 psplash_fb_destroy (PSplashFB *fb)
 {
@@ -163,6 +203,29 @@ psplash_fb_new (int angle, int fbdev_id)
   goto fail;
 }
 
+  /* Setup double virtual resolution for double buffering */
+  if (ioctl(fb->fd, FBIOPAN_DISPLAY, _var) == -1) {
+fprintf(stderr, "FBIOPAN_DISPLAY not supported, double buffering 
disabled");
+  } else {
+if (fb_var.yres_virtual == fb_var.yres * 2) {
+  DBG("Virtual resolution already double");
+  fb->double_buffering = 1;
+} else {
+  fb_var.yres_virtual = fb_var.yres * 2;
+  if (ioctl(fb->fd, FBIOPUT_VSCREENINFO, _var) == -1) {
+fprintf(stderr, "FBIOPUT_VSCREENINFO failed, double buffering 
disabled");
+  } else {
+if (ioctl(fb->fd, FBIOGET_FSCREENINFO, _fix) == -1) {
+  perror(" Error getting the fixed framebuffer info");
+  goto fail;
+} else {
+  DBG("Virtual resolution set to double");
+  fb->double_buffering = 1;
+}
+  }
+}
+  }
+
   fb->real_width  = fb->width  = fb_var.xres;
   fb->real_height = fb->height = fb_var.yres;
   fb->bpp= fb_var.bits_per_pixel;
@@ -201,8 +264,7 @@ psplash_fb_new (int angle, int fbdev_id)
   fb->width, fb->height, fb->bpp, fb->stride);
 
   fb->base = (char *) mmap ((caddr_t) NULL,
-   /*fb_fix.smem_len */
-   fb->stride * fb->height,
+   fb_fix.smem_len,
PROT_READ|PROT_WRITE,
MAP_SHARED,
fb->fd, 0);
@@ -217,6 +279,23 @@ psplash_fb_new (int angle, int fbdev_id)
 
   fb->data = fb->base + off;
 
+  if (fb->double_buffering) {
+/* fb_var is needed when flipping the buffers */
+memcpy(>fb_var, _var, sizeof(struct fb_var_screeninfo));
+if (fb->fb_var.yoffset == 0) {
+  printf("to back\n");
+  fb->fdata = fb->data;
+  fb->bdata = fb->data + fb->stride * fb->height;
+} else {
+  printf("to front\n");
+  fb->fdata = fb->data + fb->stride * fb->height;
+  fb->bdata = fb->data;
+}
+  } else {
+fb->fdata = fb->data;
+fb->bdata = fb->data;
+  }
+
 #if 0
   /* FIXME: No support for 8pp as yet  */
   if (visual == FB_VISUAL_PSEUDOCOLOR
@@ -274,6 +353,8 @@ psplash_fb_plot_pixel (PSplashFB*fb,
   uint8green,
   uint8blue)
 {
+  /* Always write to back data (bdata) which points to the right data with or
+   * without double buffering support */
   int off;
 
   if (x < 0 || x > fb->width-1 || y < 0 || y > fb->height-1)
@@ -301,22 +382,22 @@ psplash_fb_plot_pixel (PSplashFB*fb,
   {
   case 24:
 #if __BYTE_ORDER == __BIG_ENDIAN
-*(fb->data + off + 0) = red;
-*(fb->data + off + 1) = green;
-*(fb->data + off + 2) = blue;
+*(fb->bdata + off + 0) = red;
+*(fb->bdata + off + 1) = green;
+*(fb->bdata + off + 2) = blue;
 #else
-*(fb->data + off + 0) = blue;
-*(fb->data + off + 1) = green;
-*(fb->data + off + 2) = red;
+*(fb->bdata + off +

[yocto] [PATCH 1/3] Support --with-font configure option to use other font headers

2019-12-17 Thread Andrei Gherzan
From: David Steinberg 

Signed-off-by: David Steinberg 
---
 Makefile.am  | 4 ++--
 configure.ac | 6 ++
 psplash.c| 6 +++---
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index a14152a..3721a6e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,11 +1,11 @@
 bin_PROGRAMS=psplash psplash-write
 
-AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE
+AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE -DFONT_HEADER=\"$(FONT_NAME)-font.h\" 
-DFONT_DEF=$(FONT_NAME)_font
 
 psplash_SOURCES = psplash.c psplash.h psplash-fb.c psplash-fb.h \
   psplash-console.c psplash-console.h   \
  psplash-colors.h psplash-config.h \
- psplash-poky-img.h psplash-bar-img.h radeon-font.h
+ psplash-poky-img.h psplash-bar-img.h $(FONT_NAME)-font.h
 
 psplash_write_SOURCES = psplash-write.c psplash.h
 
diff --git a/configure.ac b/configure.ac
index 1c4d919..9e78ac0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -14,6 +14,12 @@ fi
 
 AC_SUBST(GCC_FLAGS)
 
+AC_ARG_WITH([font],
+AS_HELP_STRING([--with-font], [Set font to use (default is 'radeon')]),
+[FONT_NAME=$withval],
+[FONT_NAME=radeon])
+AC_SUBST([FONT_NAME])
+
 AC_OUTPUT([
 Makefile
 ])
diff --git a/psplash.c b/psplash.c
index 992e199..f6442f1 100644
--- a/psplash.c
+++ b/psplash.c
@@ -23,7 +23,7 @@
 #include "psplash-colors.h"
 #include "psplash-poky-img.h"
 #include "psplash-bar-img.h"
-#include "radeon-font.h"
+#include FONT_HEADER
 
 #define SPLIT_LINE_POS(fb)  \
(  (fb)->height \
@@ -45,7 +45,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
 {
   int w, h;
 
-  psplash_fb_text_size (, , _font, msg);
+  psplash_fb_text_size (, , _DEF, msg);
 
   DBG("displaying '%s' %ix%i\n", msg, w, h);
 
@@ -62,7 +62,7 @@ psplash_draw_msg (PSplashFB *fb, const char *msg)
(fb->width-w)/2, 
SPLIT_LINE_POS(fb) - h,
PSPLASH_TEXT_COLOR,
-   _font,
+   _DEF,
msg);
 }
 
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#47719): https://lists.yoctoproject.org/g/yocto/message/47719
Mute This Topic: https://lists.yoctoproject.org/mt/68757435/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


[yocto] [PATCH 3/3] Add configure flags for fullscreen logo and no startup message

2019-12-17 Thread Andrei Gherzan
From: Andrei Gherzan 

Signed-off-by: Andrei Gherzan 
---
 Makefile.am  |  2 +-
 configure.ac | 18 ++
 psplash-config.h |  4 
 3 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index 3721a6e..3f1cfc2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
 bin_PROGRAMS=psplash psplash-write
 
-AM_CFLAGS = $(GCC_FLAGS) -D_GNU_SOURCE -DFONT_HEADER=\"$(FONT_NAME)-font.h\" 
-DFONT_DEF=$(FONT_NAME)_font
+AM_CFLAGS = $(GCC_FLAGS) $(EXTRA_GCC_FLAGS) -D_GNU_SOURCE 
-DFONT_HEADER=\"$(FONT_NAME)-font.h\" -DFONT_DEF=$(FONT_NAME)_font
 
 psplash_SOURCES = psplash.c psplash.h psplash-fb.c psplash-fb.h \
   psplash-console.c psplash-console.h   \
diff --git a/configure.ac b/configure.ac
index 9e78ac0..e2b7f58 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,6 +20,24 @@ AC_ARG_WITH([font],
 [FONT_NAME=radeon])
 AC_SUBST([FONT_NAME])
 
+AC_ARG_ENABLE([startup-msg],
+AS_HELP_STRING([--disable-startup-msg], [Disable text banner output on 
startup]),
+[disable_startup_msg=true],
+[disable_startup_msg=false])
+AS_IF([test x$disable_startup_msg = xtrue], [
+EXTRA_GCC_FLAGS="$EXTRA_GCC_FLAGS -DPSPLASH_DISABLE_STARTUP_MSG"
+])
+
+AC_ARG_ENABLE([img-fullscreen],
+AS_HELP_STRING([--enable-img-fullscreen], [Enable the logo image in 
fullscreen mode)]),
+[img_fullscreen=true],
+[img_fullscreen=false])
+AS_IF([test x$img_fullscreen = xtrue], [
+EXTRA_GCC_FLAGS="$EXTRA_GCC_FLAGS -DPSPLASH_IMG_FULLSCREEN=1"
+])
+
+AC_SUBST(EXTRA_GCC_FLAGS)
+
 AC_OUTPUT([
 Makefile
 ])
diff --git a/psplash-config.h b/psplash-config.h
index 82bb76d..ecbf3df 100644
--- a/psplash-config.h
+++ b/psplash-config.h
@@ -20,10 +20,14 @@
 #define _HAVE_PSPLASH_CONFIG_H
 
 /* Text to output on program start; if undefined, output nothing */
+#ifndef PSPLASH_DISABLE_STARTUP_MSG
 #define PSPLASH_STARTUP_MSG ""
+#endif
 
 /* Bool indicating if the image is fullscreen, as opposed to split screen */
+#ifndef PSPLASH_IMG_FULLSCREEN
 #define PSPLASH_IMG_FULLSCREEN 0
+#endif
 
 /* Position of the image split from top edge, numerator of fraction */
 #define PSPLASH_IMG_SPLIT_NUMERATOR 5
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#47721): https://lists.yoctoproject.org/g/yocto/message/47721
Mute This Topic: https://lists.yoctoproject.org/mt/68757437/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-