Yellow screen on meta-mender using warrior branch with DISABLE_VC4GRAPHICS + u-boot patch

I experienced a Yellow screen when using the warrior build for Raspberry Pi 3 and Pi 4 when setting DISABLE_VC4GRAPHICS to 1. I set this variable to 1 because tvservice and libcec (hdmi) was not working and this was the only way to get it to work. There is a fix for this yellow issue but it’s not available in the meta-mender repo, see here for the patch Yellow Screen on Raspbian Buster 2019-06-20. Here is a patch for u-boot for the meta-mender layer I made that fixes the yellow u-boot issue:

Copy the file to a new directory meta-mender/meta-mender-core/recipes-bsp/u-boot/u-boot/0001-Disable-addition-of-simple-framebuffer-by-U-boot.patch

From cad2c92cd03558461cc16c6d69035009c153ff61 Mon Sep 17 00:00:00 2001
From: Jorge Corona
Date: Tue, 14 Jan 2020 12:46:48 -0800
Subject: [PATCH] Disable addition of simple-framebuffer by U-boot

board/raspberrypi/rpi/rpi.c | 7 -------
include/configs/rpi.h | 3 —
2 files changed, 10 deletions(-)

diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c
index 8f964d6…71633b4 100644
— a/board/raspberrypi/rpi/rpi.c
+++ b/board/raspberrypi/rpi/rpi.c
@@ -474,13 +474,6 @@ void *board_fdt_blob_setup(void)

int ft_board_setup(void *blob, bd_t *bd)

  •   /*
  •    * For now, we simply always add the simplefb DT node. Later, we
  •    * should be more intelligent, and e.g. only do this if no enabled DT
  •    * node exists for the "real" graphics driver.
  •    */
  •   lcd_dt_simplefb_add_node(blob);

/* Reserve the spin table /
efi_add_memory_map(0, 1, EFI_RESERVED_MEMORY_TYPE, 0);
diff --git a/include/configs/rpi.h b/include/configs/rpi.h
index e9c80e2…2033516 100644
— a/include/configs/rpi.h
+++ b/include/configs/rpi.h
@@ -59,9 +59,6 @@
Devices /
#define CONFIG_BCM2835_GPIO
LCD */
-#define CONFIG_VIDEO_BCM2835


Next, make a new file called u-boot_2019.01.bbappend in meta-mender/meta-mender-core/recipes-bsp/u-boot/


SRC_URI += “file://0001-Disable-addition-of-simple-framebuffer-by-U-boot.patch”

I also had to force u-boot to load by adding these lines to my local conf

MENDER_FEATURES_ENABLE_append = " mender-uboot mender-image-sd"
MENDER_FEATURES_DISABLE_append = " mender-grub mender-image-uefi"



We see the same issue with Yocto Warrior on Raspberry Pi 3 B+, although we don’t disable VC4GRAPHICS.

I couldn’t get the patch to work as is, possibly because Discourse bungled the formatting, so here is the patch regenerated from the original commit if anyone else needs it :