meta-raspberrypi: subtree update:8cffbf5e85..ffc402ef5e

Andrei Gherzan (1):
      layer.conf: Define LAYERDEPENDS

Changqing Li (1):
      99-com.rules: fix error invalid substitution type

Khem Raj (2):
      linux-firmware-rpidistro: Update to 20190114-1+rpt11
      bluez-firmware-rpidistro: Update to 1.2-4+rpt8

Martin Jansa (3):
      linux-raspberrypi: allow to change the yocto-kernel-cache branch with LINUX_RPI_KMETA_BRANCH
      linux-raspberrypi-dev: drop protocol=git and add LINUX_RPI_KMETA_BRANCH
      linux-raspberrypi-dev: use static SRCREV when not selected with PREFERRED_PROVIDER_virtual/kernel

Pierre-Jean Texier (1):
      rpi-base: make SPLASH overridable from outside

SCVready (1):
      rpi-config: comment updated

matt-hammond-bbc (1):
      libva: Fix for when using `userland`

sss22213 (1):
      recipes-bsp: Add support for Raspberry Pi HD quality camera

Change-Id: I631fa1d4c12b9f91d5044712b6c2e712fcebd98b
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/meta-raspberrypi/conf/layer.conf b/meta-raspberrypi/conf/layer.conf
index 0f08196..2518379 100644
--- a/meta-raspberrypi/conf/layer.conf
+++ b/meta-raspberrypi/conf/layer.conf
@@ -10,6 +10,7 @@
 BBFILE_PRIORITY_raspberrypi = "9"
 
 LAYERSERIES_COMPAT_raspberrypi = "hardknott honister"
+LAYERDEPENDS_raspberrypi = "core"
 
 # Additional license directories.
 LICENSE_PATH += "${LAYERDIR}/files/custom-licenses"
diff --git a/meta-raspberrypi/conf/machine/include/rpi-base.inc b/meta-raspberrypi/conf/machine/include/rpi-base.inc
index 572fe22..a800078 100644
--- a/meta-raspberrypi/conf/machine/include/rpi-base.inc
+++ b/meta-raspberrypi/conf/machine/include/rpi-base.inc
@@ -31,6 +31,7 @@
     overlays/justboom-digi.dtbo \
     overlays/i2c-rtc.dtbo \
     overlays/imx219.dtbo \
+    overlays/imx477.dtbo \
     overlays/iqaudio-dac.dtbo \
     overlays/iqaudio-dacplus.dtbo \
     overlays/mcp2515-can0.dtbo \
@@ -102,7 +103,7 @@
 BOOTFILES_DIR_NAME ?= "bootfiles"
 
 # Set Raspberrypi splash image
-SPLASH = "psplash-raspberrypi"
+SPLASH ?= "psplash-raspberrypi"
 
 def make_dtb_boot_files(d):
     # Generate IMAGE_BOOT_FILES entries for device tree files listed in
diff --git a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-cmdline.bb b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-cmdline.bb
index 40a9949..3ebd1e6 100644
--- a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-cmdline.bb
+++ b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-cmdline.bb
@@ -13,6 +13,8 @@
 
 CMDLINE_CMA ?= "${@oe.utils.conditional("RASPBERRYPI_CAMERA_V2", "1", "cma=64M", "", d)}"
 
+CMDLINE_CMA ?= "${@oe.utils.conditional("RASPBERRYPI_HD_CAMERA", "1", "cma=64M", "", d)}"
+
 CMDLINE_PITFT ?= "${@bb.utils.contains("MACHINE_FEATURES", "pitft", "fbcon=map:10 fbcon=font:VGA8x8", "", d)}"
 
 # Add the kernel debugger over console kernel command line option if enabled
diff --git a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb
index de43c4b..052206a 100644
--- a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb
+++ b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb
@@ -118,10 +118,15 @@
 
     # Video camera support
     if [ "${VIDEO_CAMERA}" = "1" ]; then
-        # TODO: It has been observed that Raspberry Pi 4B 4GB may fail to enable the camera if "start_x=1" is at the end
-        #       of the file. The underlying cause is unknown, but it can be related with a file size limitation affecting
-        #       this variable. Therefore, "start_x=1" has been set to replace the original occurrence in config.txt,
-        #       which is at the middle of the file.
+        #   It has been observed that Raspberry Pi 4B 4GB may fail to enable the
+        # camera if "start_x=1" is at the end of the file. Therefore,
+        # "start_x=1" has been set to replace the original occurrence in
+        # config.txt, which is at the middle of the file.
+        #   The exact underlying cause is unknown. There are similar issues
+        # reported in the raspberrypi/firware repo and the conclusion reached
+        # was that there could be a file size limitation affecting certain
+        # variables. It was commented that this limitation could be 4k but
+        # not proved.
         sed -i '/#start_x=/ c\start_x=1' $CONFIG
     fi
 
@@ -184,10 +189,16 @@
 
     # Choose Camera Sensor to be used, default imx219 sensor
     if [ "${RASPBERRYPI_CAMERA_V2}" = "1" ]; then
-        echo "# Enable Sony RaspberryPi Camera" >> $CONFIG
+        echo "# Enable Sony RaspberryPi Camera(imx219)" >> $CONFIG
         echo "dtoverlay=imx219" >> $CONFIG
     fi
 
+    # Choose Camera Sensor to be used, default imx477 sensor
+    #if [ "${RASPBERRYPI_HD_CAMERA}" = "1" ]; then
+    #    echo "# Enable Sony RaspberryPi Camera(imx477)" >> $CONFIG
+    #    echo "dtoverlay=imx477" >> $CONFIG
+    #fi
+
     # Waveshare "C" 1024x600 7" Rev2.1 IPS capacitive touch (http://www.waveshare.com/7inch-HDMI-LCD-C.htm)
     if [ "${WAVESHARE_1024X600_C_2_1}" = "1" ]; then
         echo "# Waveshare \"C\" 1024x600 7\" Rev2.1 IPS capacitive touch screen" >> $CONFIG
diff --git a/meta-raspberrypi/recipes-core/udev/udev-rules-rpi/99-com.rules b/meta-raspberrypi/recipes-core/udev/udev-rules-rpi/99-com.rules
index 6bf019b..ddd1e17 100644
--- a/meta-raspberrypi/recipes-core/udev/udev-rules-rpi/99-com.rules
+++ b/meta-raspberrypi/recipes-core/udev/udev-rules-rpi/99-com.rules
@@ -1,8 +1,8 @@
 KERNEL=="ttyAMA[01]", PROGRAM="/bin/sh -c '\
 	ALIASES=/proc/device-tree/aliases; \
-	if cmp -s $ALIASES/uart0 $ALIASES/serial0; then \
+	if cmp -s $$ALIASES/uart0 $$ALIASES/serial0; then \
 		echo 0;\
-	elif cmp -s $ALIASES/uart0 $ALIASES/serial1; then \
+	elif cmp -s $$ALIASES/uart0 $$ALIASES/serial1; then \
 		echo 1; \
 	else \
 		exit 1; \
@@ -11,9 +11,9 @@
 
 KERNEL=="ttyS0", PROGRAM="/bin/sh -c '\
 	ALIASES=/proc/device-tree/aliases; \
-	if cmp -s $ALIASES/uart1 $ALIASES/serial0; then \
+	if cmp -s $$ALIASES/uart1 $$ALIASES/serial0; then \
 		echo 0; \
-	elif cmp -s $ALIASES/uart1 $ALIASES/serial1; then \
+	elif cmp -s $$ALIASES/uart1 $$ALIASES/serial1; then \
 		echo 1; \
 	else \
 		exit 1; \
diff --git a/meta-raspberrypi/recipes-graphics/libva/libva_%.bbappend b/meta-raspberrypi/recipes-graphics/libva/libva_%.bbappend
new file mode 100644
index 0000000..56ff421
--- /dev/null
+++ b/meta-raspberrypi/recipes-graphics/libva/libva_%.bbappend
@@ -0,0 +1,3 @@
+# when using userland graphic KHR/khrplatform.h is provided by userland but virtual/libgl is provided by mesa-gl where
+# we explicitly delete KHR/khrplatform.h since its already coming from userland package
+DEPENDS_append_rpi = " ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', 'userland', d)}"
diff --git a/meta-raspberrypi/recipes-kernel/bluez-firmware-rpidistro/bluez-firmware-rpidistro_git.bb b/meta-raspberrypi/recipes-kernel/bluez-firmware-rpidistro/bluez-firmware-rpidistro_git.bb
index 310d2f8..d28e2c1 100644
--- a/meta-raspberrypi/recipes-kernel/bluez-firmware-rpidistro/bluez-firmware-rpidistro_git.bb
+++ b/meta-raspberrypi/recipes-kernel/bluez-firmware-rpidistro/bluez-firmware-rpidistro_git.bb
@@ -16,7 +16,7 @@
 # [^1]: https://github.com/RPi-Distro/bluez-firmware/issues/1
 LICENSE = "Firmware-cypress-rpidistro"
 LIC_FILES_CHKSUM = "\
-    file://LICENCE.cypress-rpidistro;md5=852f9d10cbedba1f6c439729bd0617b4 \
+    file://LICENCE.cypress-rpidistro;md5=c5d12ae0b24ef7177902a8e288751a4e \
 "
 
 # These are not common licenses, set NO_GENERIC_LICENSE for them
@@ -24,8 +24,8 @@
 NO_GENERIC_LICENSE[Firmware-cypress-rpidistro] = "LICENCE.cypress-rpidistro"
 
 SRC_URI = "git://github.com/RPi-Distro/bluez-firmware"
-SRCREV = "96eefffcccc725425fd83be5e0704a5c32b79e54"
-PV = "0.0+git${SRCPV}"
+SRCREV = "e7fd166981ab4bb9a36c2d1500205a078a35714d"
+PV = "1.2-4+rpt8"
 
 S = "${WORKDIR}/git"
 
@@ -55,11 +55,15 @@
 PACKAGES = "\
     ${PN}-cypress-license \
     ${PN}-bcm43430a1-hcd \
+    ${PN}-bcm43430b0-hcd \
     ${PN}-bcm4345c0-hcd \
+    ${PN}-bcm4345c5-hcd \
 "
 
 LICENSE_${PN}-bcm43430a1-hcd = "Firmware-cypress-rpidistro"
+LICENSE_${PN}-bcm43430b0-hcd = "Firmware-cypress-rpidistro"
 LICENSE_${PN}-bcm4345c0-hcd = "Firmware-cypress-rpidistro"
+LICENSE_${PN}-bcm4345c5-hcd = "Firmware-cypress-rpidistro"
 LICENSE_${PN}-cypress-license = "Firmware-cypress-rpidistro"
 
 FILES_${PN}-cypress-license = "\
@@ -68,16 +72,28 @@
 FILES_${PN}-bcm43430a1-hcd = "\
     ${nonarch_base_libdir}/firmware/brcm/BCM43430A1.hcd \
 "
+FILES_${PN}-bcm43430b0-hcd = "\
+    ${nonarch_base_libdir}/firmware/brcm/BCM43430B0.hcd \
+"
 FILES_${PN}-bcm4345c0-hcd = "\
     ${nonarch_base_libdir}/firmware/brcm/BCM4345C0.hcd \
 "
+FILES_${PN}-bcm4345c5-hcd = "\
+    ${nonarch_base_libdir}/firmware/brcm/BCM4345C5.hcd \
+"
 
 RDEPENDS_${PN}-bcm43430a1-hcd += "${PN}-cypress-license"
+RDEPENDS_${PN}-bcm43430b0-hcd += "${PN}-cypress-license"
 RDEPENDS_${PN}-bcm4345c0-hcd += "${PN}-cypress-license"
+RDEPENDS_${PN}-bcm4345c5-hcd += "${PN}-cypress-license"
 RCONFLICTS_${PN}-bcm43430a1-hcd = "linux-firmware-bcm43430a1-hcd"
 RREPLACES_${PN}-bcm43430a1-hcd = "linux-firmware-bcm43430a1-hcd"
+RCONFLICTS_${PN}-bcm43430b0-hcd = "linux-firmware-bcm43430b0-hcd"
+RREPLACES_${PN}-bcm43430b0-hcd = "linux-firmware-bcm43430b0-hcd"
 RCONFLICTS_${PN}-bcm43435c0-hcd = "linux-firmware-bcm4345c0-hcd"
 RREPLACES_${PN}-bcm43435c0-hcd = "linux-firmware-bcm4345c0-hcd"
+RCONFLICTS_${PN}-bcm43435c5-hcd = "linux-firmware-bcm4345c5-hcd"
+RREPLACES_${PN}-bcm43435c5-hcd = "linux-firmware-bcm4345c5-hcd"
 
 # Firmware files are generally not run on the CPU, so they can be
 # allarch despite being architecture specific
diff --git a/meta-raspberrypi/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb b/meta-raspberrypi/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
index 671dfa2..a091585 100644
--- a/meta-raspberrypi/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
+++ b/meta-raspberrypi/recipes-kernel/linux-firmware-rpidistro/linux-firmware-rpidistro_git.bb
@@ -36,8 +36,8 @@
 
 SRC_URI = "git://github.com/RPi-Distro/firmware-nonfree"
 
-SRCREV = "b66ab26cebff689d0d3257f56912b9bb03c20567"
-PV = "20190114-1+rpt10"
+SRCREV = "83938f78ca2d5a0ffe0c223bb96d72ccc7b71ca5"
+PV = "20190114-1+rpt11"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi-dev.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi-dev.bb
index ff8ce79..0dfa451 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi-dev.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi-dev.bb
@@ -7,15 +7,21 @@
 
 LINUX_VERSION ?= "5.10.y"
 LINUX_RPI_BRANCH ?= "rpi-5.10.y"
+LINUX_RPI_KMETA_BRANCH ?= "yocto-5.10"
 
-SRCREV_machine = "${AUTOREV}"
-SRCREV_meta = "${AUTOREV}"
+# Set default SRCREVs. Both the machine and meta SRCREVs are statically set
+# to the as in 5.10 recipe, and hence prevent network access during parsing. If
+# linux-yocto-dev is the preferred provider, they will be overridden to
+# AUTOREV in following anonymous python routine and resolved when the
+# variables are finalized.
+SRCREV_machine ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-raspberrypi-dev", "${AUTOREV}", "89399e6e7e33d6260a954603ca03857df594ffd3", d)}'
+SRCREV_meta ?= '${@oe.utils.conditional("PREFERRED_PROVIDER_virtual/kernel", "linux-raspberrypi-dev", "${AUTOREV}", "a19886b00ea7d874fdd60d8e3435894bb16e6434", d)}'
 
 KMETA = "kernel-meta"
 
 SRC_URI = " \
-    git://github.com/raspberrypi/linux.git;name=machine;protocol=git;branch=${LINUX_RPI_BRANCH} \
-    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=master;destsuffix=${KMETA} \
+    git://github.com/raspberrypi/linux.git;name=machine;branch=${LINUX_RPI_BRANCH} \
+    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=${LINUX_RPI_KMETA_BRANCH};destsuffix=${KMETA} \
     file://powersave.cfg \
     file://android-drivers.cfg \
     "
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
index fa3a8fc..fc33559 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.10.bb
@@ -1,5 +1,6 @@
 LINUX_VERSION ?= "5.10.31"
 LINUX_RPI_BRANCH ?= "rpi-5.10.y"
+LINUX_RPI_KMETA_BRANCH ?= "yocto-5.10"
 
 SRCREV_machine = "89399e6e7e33d6260a954603ca03857df594ffd3"
 SRCREV_meta = "a19886b00ea7d874fdd60d8e3435894bb16e6434"
@@ -8,7 +9,7 @@
 
 SRC_URI = " \
     git://github.com/raspberrypi/linux.git;name=machine;branch=${LINUX_RPI_BRANCH} \
-    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA} \
+    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=${LINUX_RPI_KMETA_BRANCH};destsuffix=${KMETA} \
     file://powersave.cfg \
     file://android-drivers.cfg \
     "
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb
index ba97ed5..3432283 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb
@@ -1,5 +1,6 @@
 LINUX_VERSION ?= "5.4.83"
 LINUX_RPI_BRANCH ?= "rpi-5.4.y"
+LINUX_RPI_KMETA_BRANCH ?= "yocto-5.4"
 
 SRCREV_machine = "08ae2dd9e7dc89c20bff823a3ef045de09bfd090"
 SRCREV_meta = "d676bf5ff7b7071e14f44498d2482c0a596f14cd"
@@ -8,7 +9,7 @@
 
 SRC_URI = " \
     git://github.com/raspberrypi/linux.git;name=machine;branch=${LINUX_RPI_BRANCH} \
-    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA} \
+    git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=${LINUX_RPI_KMETA_BRANCH};destsuffix=${KMETA} \
     file://0001-Revert-selftests-bpf-Skip-perf-hw-events-test-if-the.patch \
     file://0002-Revert-selftests-bpf-Fix-perf_buffer-test-on-systems.patch \
     file://powersave.cfg \