From 19b4e6c6daefcbe72afe57874d2e48c43c418321 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 18 Sep 2020 13:33:52 -0500 Subject: meta-raspberrypi: subtree update:cc6074c660..0e9c32c816 Andrzej Bednarski (1): docs: Correct minor spelling issues Khem Raj (6): linux-raspberrypi: Update to 5.4.59 raspberrypi-firmware: Upgrade to 20200819 xserver-xorg: Depend on userland when vc4graphics is disabled libsdl2: Add userland dependency when not using vc4graphics linux-raspberrypi_5.4.bb: Build ashmem and binder drivers README: Mention Yoe distro in supported distro list Luis Alfredo da Silva (1): Revert "mesa: querying dma_buf modifiers for specific formats" Martin Jansa (5): linux-raspberrypi-5.4: backport a fix for perf build with -fno-common from gcc-10 rpi-gpio: add -fcommon temporarily linux-raspberrypi-5.4: revert 1 commit from upstream to fix lttng-modules build raspberrypi-{firmware,tools}: set downloadfilename Revert "linux-raspberrypi-5.4: revert 1 commit from upstream to fix lttng-modules build" Pierre-Jean Texier (2): raspberrypi-firmware: update to current HEAD linux-raspberrypi: bump to Linux version 5.4.64 Signed-off-by: Andrew Geissler Change-Id: I5acc97c6612dd01922b1577537e555220f3b77e6 --- meta-raspberrypi/README.md | 2 +- meta-raspberrypi/docs/extra-build-config.md | 8 +-- .../recipes-bsp/common/raspberrypi-firmware.inc | 9 ++- .../recipes-bsp/common/raspberrypi-tools.inc | 2 +- .../recipes-devtools/python/rpi-gpio_0.7.0.bb | 4 ++ .../recipes-graphics/libsdl2/libsdl2_%.bbappend | 5 ++ .../files/0001-dri2-query-dma-buf-modifiers.patch | 43 -------------- .../recipes-graphics/mesa/mesa_%.bbappend | 4 -- .../xorg-xserver/xserver-xorg_%.bbappend | 4 ++ ...-Move-definition-of-traceid_list-global-v.patch | 68 ++++++++++++++++++++++ .../recipes-kernel/linux/files/android-drivers.cfg | 8 +++ .../recipes-kernel/linux/linux-raspberrypi_5.4.bb | 6 +- 12 files changed, 103 insertions(+), 60 deletions(-) create mode 100644 meta-raspberrypi/recipes-graphics/libsdl2/libsdl2_%.bbappend delete mode 100644 meta-raspberrypi/recipes-graphics/mesa/files/0001-dri2-query-dma-buf-modifiers.patch create mode 100644 meta-raspberrypi/recipes-kernel/linux/files/0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch create mode 100644 meta-raspberrypi/recipes-kernel/linux/files/android-drivers.cfg (limited to 'meta-raspberrypi') diff --git a/meta-raspberrypi/README.md b/meta-raspberrypi/README.md index 898426d8f..e69b0effb 100644 --- a/meta-raspberrypi/README.md +++ b/meta-raspberrypi/README.md @@ -28,7 +28,7 @@ The core BSP part of meta-raspberrypi should work with different OpenEmbedded/Yocto distributions and layer stacks, such as: * Distro-less (only with OE-Core). -* Angstrom. +* Yoe Disto (Video and Camera Products). * Yocto/Poky (main focus of testing). ## Dependencies diff --git a/meta-raspberrypi/docs/extra-build-config.md b/meta-raspberrypi/docs/extra-build-config.md index b8813222c..84601848e 100644 --- a/meta-raspberrypi/docs/extra-build-config.md +++ b/meta-raspberrypi/docs/extra-build-config.md @@ -1,6 +1,6 @@ # Optional build configuration -There are a set of ways in which a user can influence different paramenters of +There are a set of ways in which a user can influence different parameters of the build. We list here the ones that are closely related to this BSP or specific to it. For the rest please check: @@ -37,7 +37,7 @@ By default, each machine uses `vc4` for graphics. This will in turn sets mesa as ## Add purchased license codecs -To add you own licenses use variables `KEY_DECODE_MPG2` and `KEY_DECODE_WVC1` in +To add your own licenses use variables `KEY_DECODE_MPG2` and `KEY_DECODE_WVC1` in local.conf. Example: KEY_DECODE_MPG2 = "12345678" @@ -77,7 +77,7 @@ To remove (or adjust) this delay set these variables in local.conf: ## Set overclocking options The Raspberry Pi can be overclocked. As of now overclocking up to the "Turbo -Mode" is officially supported by the raspbery and does not void warranty. Check +Mode" is officially supported by the Raspberry Pi and does not void warranty. Check the config.txt for a detailed description of options and modes. The following variables are supported in local.conf: `ARM_FREQ`, `GPU_FREQ`, `CORE_FREQ`, `SDRAM_FREQ` and `OVER_VOLTAGE`. @@ -249,7 +249,7 @@ Screen LCD, HDMI interface () Rev RaspberryPi 0, 1, 2 and CM will have UART console enabled by default. RaspberryPi 0 WiFi and 3 does not have the UART enabled by default because this -needs a fixed core frequency and enable_uart wil set it to the minimum. Certain +needs a fixed core frequency and enable_uart will set it to the minimum. Certain operations - 60fps h264 decode, high quality deinterlace - which aren't performed on the ARM may be affected, and we wouldn't want to do that to users who don't want to use the serial port. Users who want serial console support on diff --git a/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc b/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc index 3919c9f2e..3b54d1898 100644 --- a/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc +++ b/meta-raspberrypi/recipes-bsp/common/raspberrypi-firmware.inc @@ -1,10 +1,9 @@ -RPIFW_DATE ?= "20200812" -SRCREV ?= "18aa72c5e05677b8a8af835bd60409e3253817aa" -RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/${SRCREV}.tar.gz" +RPIFW_DATE ?= "20200911" +SRCREV ?= "a490197f0672d948860b2b807884ae65eabc4d4f" +RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/${SRCREV}.tar.gz;downloadfilename=raspberrypi-firmware-${SRCREV}.tar.gz" RPIFW_S ?= "${WORKDIR}/firmware-${SRCREV}" SRC_URI = "${RPIFW_SRC_URI}" -SRC_URI[md5sum] = "285453979ec7730f9547445056d58e44" -SRC_URI[sha256sum] = "9e946f96aff5791150703ea3510f26724e80048ba7c2985e28fbba6a2e1406d2" +SRC_URI[sha256sum] = "be06015688f415fa1b87850d51a4188a766f2a618001f70e7c69b07cbdf9d6ab" PV = "${RPIFW_DATE}" diff --git a/meta-raspberrypi/recipes-bsp/common/raspberrypi-tools.inc b/meta-raspberrypi/recipes-bsp/common/raspberrypi-tools.inc index 0d4c627cb..1588264ac 100644 --- a/meta-raspberrypi/recipes-bsp/common/raspberrypi-tools.inc +++ b/meta-raspberrypi/recipes-bsp/common/raspberrypi-tools.inc @@ -1,5 +1,5 @@ SRCREV ?= "b0c869bc929587a7e1d20a98e2dc828a24ca396a" -RPITOOLS_SRC_URI ?= "https://github.com/raspberrypi/tools/archive/${SRCREV}.tar.gz" +RPITOOLS_SRC_URI ?= "https://github.com/raspberrypi/tools/archive/${SRCREV}.tar.gz;downloadfilename=raspberrypi-tools-${SRCREV}.tar.gz" RPITOOLS_S ?= "${WORKDIR}/tools-${SRCREV}" SRC_URI = "${RPITOOLS_SRC_URI}" diff --git a/meta-raspberrypi/recipes-devtools/python/rpi-gpio_0.7.0.bb b/meta-raspberrypi/recipes-devtools/python/rpi-gpio_0.7.0.bb index fcce88f83..8b13d53a6 100644 --- a/meta-raspberrypi/recipes-devtools/python/rpi-gpio_0.7.0.bb +++ b/meta-raspberrypi/recipes-devtools/python/rpi-gpio_0.7.0.bb @@ -12,3 +12,7 @@ SRC_URI[md5sum] = "777617f9dea9a1680f9af43db0cf150e" SRC_URI[sha256sum] = "7424bc6c205466764f30f666c18187a0824077daf20b295c42f08aea2cb87d3f" COMPATIBLE_MACHINE = "^rpi$" + +# ignore issues with -fno-common from gcc-10 until it's fixed in upstream: +# https://sourceforge.net/p/raspberry-gpio-python/tickets/187/ +CFLAGS += "-fcommon" diff --git a/meta-raspberrypi/recipes-graphics/libsdl2/libsdl2_%.bbappend b/meta-raspberrypi/recipes-graphics/libsdl2/libsdl2_%.bbappend new file mode 100644 index 000000000..cb9c24e4d --- /dev/null +++ b/meta-raspberrypi/recipes-graphics/libsdl2/libsdl2_%.bbappend @@ -0,0 +1,5 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +# 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-graphics/mesa/files/0001-dri2-query-dma-buf-modifiers.patch b/meta-raspberrypi/recipes-graphics/mesa/files/0001-dri2-query-dma-buf-modifiers.patch deleted file mode 100644 index 0bda01450..000000000 --- a/meta-raspberrypi/recipes-graphics/mesa/files/0001-dri2-query-dma-buf-modifiers.patch +++ /dev/null @@ -1,43 +0,0 @@ -mesa: querying dma_buf_modifiers for specific formats - -mesa wl_drm protocol is the backend for wayland server side which requires -the dmabuf modifiers for some DRM formats on specific devices like RPI. -Currently there is no support of giving any dmabuf modifiers on wl_drm protocol. -This dma_buf modifiers allows EGL implementations to add extra attributes -to drm_fourcc format. - -Upstream-Status: Pending - -Signed-off-by: Balaji Velmurugan - ---- a/src/gallium/state_trackers/dri/dri2.c -+++ b/src/gallium/state_trackers/dri/dri2.c -@@ -1366,14 +1366,28 @@ dri2_from_planar(__DRIimage *image, int - return img; - } - -+static boolean -+dri2_query_dma_buf_modifiers(__DRIscreen *_screen, int fourcc, int max, -+ uint64_t *modifiers, unsigned int *external_only, -+ int *count); - static __DRIimage * - dri2_from_fds(__DRIscreen *screen, int width, int height, int fourcc, - int *fds, int num_fds, int *strides, int *offsets, - void *loaderPrivate) - { -+ uint64_t modifier= DRM_FORMAT_MOD_INVALID; -+ unsigned int external_only= 0; -+ int count= 0; -+ boolean result; -+ result= dri2_query_dma_buf_modifiers( screen, fourcc, 1, &modifier, &external_only, &count); -+ return dri2_create_image_from_fd(screen, width, height, fourcc, -+ modifier, fds, num_fds, -+ strides, offsets, NULL, loaderPrivate); -+ #if 0 - return dri2_create_image_from_fd(screen, width, height, fourcc, - DRM_FORMAT_MOD_INVALID, fds, num_fds, - strides, offsets, NULL, loaderPrivate); -+ #endif - } - - static boolean diff --git a/meta-raspberrypi/recipes-graphics/mesa/mesa_%.bbappend b/meta-raspberrypi/recipes-graphics/mesa/mesa_%.bbappend index d3435e720..eaa46f27b 100644 --- a/meta-raspberrypi/recipes-graphics/mesa/mesa_%.bbappend +++ b/meta-raspberrypi/recipes-graphics/mesa/mesa_%.bbappend @@ -1,10 +1,6 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" # DRI3 note: # With oe-core commit 8509e2e1a87578882b71948ccef3b50ccf1228b3 dri3 is set # as default. To state out clearly that Raspi needs dri3 and to avoid surprises # in case oe-core changes this default, we set dri3 explicitly. - -SRC_URI_append_rpi = " file://0001-dri2-query-dma-buf-modifiers.patch " - PACKAGECONFIG_append_rpi = " gallium vc4 v3d kmsro ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11 dri3', '', d)}" DRIDRIVERS_class-target_rpi = "" diff --git a/meta-raspberrypi/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend b/meta-raspberrypi/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend index fba163219..9574fa5b8 100644 --- a/meta-raspberrypi/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend +++ b/meta-raspberrypi/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend @@ -1 +1,5 @@ OPENGL_PKGCONFIGS_rpi = "dri glx ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', 'dri3 xshmfence glamor', '', d)}" + +# 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/linux/files/0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch b/meta-raspberrypi/recipes-kernel/linux/files/0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch new file mode 100644 index 000000000..0d86947ee --- /dev/null +++ b/meta-raspberrypi/recipes-kernel/linux/files/0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch @@ -0,0 +1,68 @@ +From 168200b6d6ea0cb5765943ec5da5b8149701f36a Mon Sep 17 00:00:00 2001 +From: Leo Yan +Date: Tue, 5 May 2020 21:36:42 +0800 +Subject: [PATCH] perf cs-etm: Move definition of 'traceid_list' global + variable from header file + +The variable 'traceid_list' is defined in the header file cs-etm.h, +if multiple C files include cs-etm.h the compiler might complaint for +multiple definition of 'traceid_list'. + +To fix multiple definition error, move the definition of 'traceid_list' +into cs-etm.c. + +Upstream-Status: Backport [v5.8-rc1] + +Fixes: cd8bfd8c973e ("perf tools: Add processing of coresight metadata") +Reported-by: Thomas Backlund +Signed-off-by: Leo Yan +Reviewed-by: Mathieu Poirier +Reviewed-by: Mike Leach +Tested-by: Mike Leach +Tested-by: Thomas Backlund +Cc: Alexander Shishkin +Cc: Jiri Olsa +Cc: Mark Rutland +Cc: Namhyung Kim +Cc: Peter Zijlstra +Cc: Suzuki Poulouse +Cc: Tor Jeremiassen +Cc: linux-arm-kernel@lists.infradead.org +Link: http://lore.kernel.org/lkml/20200505133642.4756-1-leo.yan@linaro.org +Signed-off-by: Arnaldo Carvalho de Melo +--- + tools/perf/util/cs-etm.c | 3 +++ + tools/perf/util/cs-etm.h | 3 --- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c +index 3c802fde4954..c283223fb31f 100644 +--- a/tools/perf/util/cs-etm.c ++++ b/tools/perf/util/cs-etm.c +@@ -94,6 +94,9 @@ struct cs_etm_queue { + struct cs_etm_traceid_queue **traceid_queues; + }; + ++/* RB tree for quick conversion between traceID and metadata pointers */ ++static struct intlist *traceid_list; ++ + static int cs_etm__update_queues(struct cs_etm_auxtrace *etm); + static int cs_etm__process_queues(struct cs_etm_auxtrace *etm); + static int cs_etm__process_timeless_queues(struct cs_etm_auxtrace *etm, +diff --git a/tools/perf/util/cs-etm.h b/tools/perf/util/cs-etm.h +index 650ecc2a6349..4ad925d6d799 100644 +--- a/tools/perf/util/cs-etm.h ++++ b/tools/perf/util/cs-etm.h +@@ -114,9 +114,6 @@ enum cs_etm_isa { + CS_ETM_ISA_T32, + }; + +-/* RB tree for quick conversion between traceID and metadata pointers */ +-struct intlist *traceid_list; +- + struct cs_etm_queue; + + struct cs_etm_packet { +-- +2.25.1 + diff --git a/meta-raspberrypi/recipes-kernel/linux/files/android-drivers.cfg b/meta-raspberrypi/recipes-kernel/linux/files/android-drivers.cfg new file mode 100644 index 000000000..f74ac0e1c --- /dev/null +++ b/meta-raspberrypi/recipes-kernel/linux/files/android-drivers.cfg @@ -0,0 +1,8 @@ +CONFIG_ANDROID=y + +#CONFIG_ANDROID_BINDERFS is not set +CONFIG_ANDROID_BINDER_IPC=y +CONFIG_ANDROID_BINDER_DEVICES="binder" + +CONFIG_ASHMEM=y + 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 7fea9dd55..594694cba 100644 --- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb +++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_5.4.bb @@ -1,11 +1,13 @@ -LINUX_VERSION ?= "5.4.58" +LINUX_VERSION ?= "5.4.64" LINUX_RPI_BRANCH ?= "rpi-5.4.y" -SRCREV = "4592a094787fa6a2ac1e95e96abfe4d7124dbb3a" +SRCREV = "65caf603f3b1c43f4c92939f7fbb7149e054f486" require linux-raspberrypi_5.4.inc SRC_URI += "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://0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch \ file://powersave.cfg \ + file://android-drivers.cfg \ " -- cgit v1.2.3