From 1c349149c6a4dd1b5bc36c2d24b65da7dfdf3fe7 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Tue, 19 Feb 2019 19:49:56 -0600 Subject: meta-raspberrypi: refresh thud: d5d92f2cb7..c71d79efc5 Update meta-raspberrypi to thud HEAD. Andrei Gherzan (2): raspberrypi-cm3.conf: Define it as a stand alone machine docs/layer-contents.md: raspberrypi-cm3 is a stand alone machine now Drew Moseley (1): linux-raspberrypi: Update to 4.14.85 Hugo Hromic (1): docs: improve the contributing section Khem Raj (8): dynamic-layers/qt5-layer: Append to oe-device-extra.pri instead of rewriting bpftool: Disable for rpi until kernel is not > 4.14 packagegroup-meta-oe.bbappend: remove bpftool for rpi Add meta-oe to dynamic-layers layer.conf: Fix typo for openembedded-layer dynamic layer addition bpftool: Move under meta-oe dynamic layer qtbase: Get eglfs/kms working with vc4graphics userland: Use original name libegl-mesa in rdeps Marek Belisko (1): devtools: Added raspi-gpio Ming Liu (2): rpi-default-providers.inc: use virtual/libgbm instead of libgbm userland: do not provide libgl1 Pepijn de Vos (2): firmware.inc: Update to 20181211 linux-raspberrypi: Update to 4.14.87 Ricardo Salveti (1): bluez-firmware-rpidistro: update bluez-firmware Richard Osterloh (1): sdcard_image-rpi: Format boot partition as FAT32 Zahari Petkov (2): linux-raspberrypi: Update to 4.14.98 firmware.inc: Update to 20190212 memox_5 (1): rpi-config: used printf to escape properly Change-Id: I36c776929c0ca91f06ab0f9bd93f1e2ce19cdf8b Signed-off-by: Andrew Geissler --- meta-raspberrypi/classes/sdcard_image-rpi.bbclass | 2 +- meta-raspberrypi/conf/layer.conf | 2 + .../conf/machine/include/rpi-default-providers.inc | 2 +- meta-raspberrypi/conf/machine/raspberrypi-cm3.conf | 10 +- meta-raspberrypi/docs/contributing.md | 109 +++++++++++++++++---- meta-raspberrypi/docs/layer-contents.md | 2 +- .../packagegroups/packagegroup-meta-oe.bbappend | 1 + .../recipes-kernel/linux/bpftool.bbappend | 3 + .../qt5-layer/recipes-qt/qt5/qtbase_%.bbappend | 8 +- .../recipes-bsp/bootfiles/rpi-config_git.bb | 2 +- meta-raspberrypi/recipes-bsp/common/firmware.inc | 8 +- .../recipes-devtools/raspi-gpio/raspi-gpio_git.bb | 16 +++ .../recipes-graphics/userland/userland_git.bb | 4 +- .../bluez-firmware-rpidistro_git.bb | 2 +- .../recipes-kernel/linux/linux-raspberrypi_4.14.bb | 4 +- 15 files changed, 137 insertions(+), 38 deletions(-) create mode 100644 meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend create mode 100644 meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-kernel/linux/bpftool.bbappend create mode 100644 meta-raspberrypi/recipes-devtools/raspi-gpio/raspi-gpio_git.bb (limited to 'meta-raspberrypi') diff --git a/meta-raspberrypi/classes/sdcard_image-rpi.bbclass b/meta-raspberrypi/classes/sdcard_image-rpi.bbclass index 6244ee55b..d63a24028 100644 --- a/meta-raspberrypi/classes/sdcard_image-rpi.bbclass +++ b/meta-raspberrypi/classes/sdcard_image-rpi.bbclass @@ -118,7 +118,7 @@ IMAGE_CMD_rpi-sdimg () { # Create a vfat image with boot files BOOT_BLOCKS=$(LC_ALL=C parted -s ${SDIMG} unit b print | awk '/ 1 / { print substr($4, 1, length($4 -1)) / 512 /2 }') rm -f ${WORKDIR}/boot.img - mkfs.vfat -n "${BOOTDD_VOLUME_ID}" -S 512 -C ${WORKDIR}/boot.img $BOOT_BLOCKS + mkfs.vfat -F32 -n "${BOOTDD_VOLUME_ID}" -S 512 -C ${WORKDIR}/boot.img $BOOT_BLOCKS mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/bcm2835-bootfiles/* ::/ if test -n "${DTS}"; then # Copy board device trees to root folder diff --git a/meta-raspberrypi/conf/layer.conf b/meta-raspberrypi/conf/layer.conf index 6e2fdf663..67eb98ff5 100644 --- a/meta-raspberrypi/conf/layer.conf +++ b/meta-raspberrypi/conf/layer.conf @@ -25,6 +25,8 @@ BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' % layer for layer in BBFILE_COLLECTIONS.split())}" BBFILES_DYNAMIC += " \ + openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \ + openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \ qt5-layer:${LAYERDIR}/dynamic-layers/qt5-layer/*/*/*.bb \ qt5-layer:${LAYERDIR}/dynamic-layers/qt5-layer/*/*/*.bbappend \ " diff --git a/meta-raspberrypi/conf/machine/include/rpi-default-providers.inc b/meta-raspberrypi/conf/machine/include/rpi-default-providers.inc index 5b2658ba3..5231a84e1 100644 --- a/meta-raspberrypi/conf/machine/include/rpi-default-providers.inc +++ b/meta-raspberrypi/conf/machine/include/rpi-default-providers.inc @@ -6,5 +6,5 @@ PREFERRED_PROVIDER_virtual/egl ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4 PREFERRED_PROVIDER_virtual/libgles2 ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "mesa", "userland", d)}" PREFERRED_PROVIDER_virtual/libgl ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "mesa", "mesa-gl", d)}" PREFERRED_PROVIDER_virtual/mesa ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "mesa", "mesa-gl", d)}" -PREFERRED_PROVIDER_libgbm ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "mesa", "mesa-gl", d)}" +PREFERRED_PROVIDER_virtual/libgbm ?= "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "mesa", "mesa-gl", d)}" PREFERRED_PROVIDER_jpeg ?= "jpeg" diff --git a/meta-raspberrypi/conf/machine/raspberrypi-cm3.conf b/meta-raspberrypi/conf/machine/raspberrypi-cm3.conf index 5f6d3b6bf..c8677b4ff 100644 --- a/meta-raspberrypi/conf/machine/raspberrypi-cm3.conf +++ b/meta-raspberrypi/conf/machine/raspberrypi-cm3.conf @@ -2,5 +2,11 @@ #@NAME: RaspberryPi Compute Module 3 (CM3) #@DESCRIPTION: Machine configuration for the RaspberryPi Compute Module 3 (CM3) -MACHINEOVERRIDES = "raspberrypi3:${MACHINE}" -include conf/machine/raspberrypi3.conf +DEFAULTTUNE ?= "cortexa7thf-neon-vfpv4" +require conf/machine/include/tune-cortexa7.inc +include conf/machine/include/rpi-base.inc + +KBUILD_DEFCONFIG ?= "bcm2709_defconfig" +SDIMG_KERNELIMAGE ?= "kernel7.img" +UBOOT_MACHINE = "rpi_3_32b_config" +SERIAL_CONSOLES ?= "115200;ttyAMA0" diff --git a/meta-raspberrypi/docs/contributing.md b/meta-raspberrypi/docs/contributing.md index 94dbf49ab..7d18400d4 100644 --- a/meta-raspberrypi/docs/contributing.md +++ b/meta-raspberrypi/docs/contributing.md @@ -2,37 +2,108 @@ ## Mailing list -The main communication tool we use is a mailing list: +The main communication tool in use is the Yocto Project mailing list: + * * -Feel free to ask any kind of questions but always prepend your email subject -with "[meta-raspberrypi]". This is because we use the 'yocto' mailing list and -not a perticular 'meta-raspberrypi' mailing list. +Feel free to ask any kind of questions but please always prepend your email +subject with `[meta-raspberrypi]` as this is the global *Yocto* mailing +list and not a dedicated *meta-raspberrypi* mailing list. + +## Formatting patches + +First and foremost, all of the contributions to the layer must be compliant +with the standard openembedded patch guidelines: + +* + +In summary, your commit log messages should be formatted as follows: + + : + + (Optional pointers to external resources, such as defect tracking) + + The intent of your change. + + (Optional: if it's not clear from above, how your change resolves + the issues in the first part) + + Signed-off-by: Your Name + +The `` is the layer component name that your changes affect. +It is important that you choose it correctly. A simple guide for selecting a +a good component name is the following: + +* For changes that affect *layer recipes*, please just use the **base names** + of the affected recipes, separated by commas (`,`), as the component name. + For example: use `omxplayer` instead of `omxplayer_git.bb`. If you are + adding new recipe(s), just use the new recipe(s) base name(s). An example + for changes to multiple recipes would be `userland,vc-graphics,wayland`. +* For changes that affect the *layer documentation*, please just use `docs` + as the component name. +* For changes that affect *other files*, i.e. under the `conf` directory, + please use the full path as the component name, e.g. `conf/layer.conf`. +* For changes that affect the *layer itself* and do not fall into any of + the above cases, please use `meta-raspberrypi` as the component name. + +A full example of a suitable commit log message is below: -## Patches and pull requests + foobar: Adjusted the foo setting in bar -All the contributions should be compliant with the openembedded patch -guidelines: + When using foobar on systems with less than a gigabyte of RAM common + usage patterns often result in an Out-of-memory condition causing + slowdowns and unexpected application termination. -To contribute to this project you should send pull requests to the github mirror -(). **Additionally** you can send -the patches for review to the above specified mailing list. + Low-memory systems should continue to function without running into + memory-starvation conditions with minimal cost to systems with more + available memory. High-memory systems will be less able to use the + full extent of the system, a dynamically tunable option may be best, + long-term. -When creating patches for the mailing list, please use something like: + The foo setting in bar was decreased from X to X-50% in order to + ensure we don't exhaust all system memory with foobar threads. + + Signed-off-by: Joe Developer + +A common issue during patch reviewing is commit log formatting, please review +the above formatting guidelines carefully before sending your patches. + +## Sending patches + +The preferred method to contribute to this project is to send pull +requests to the GitHub mirror of the layer: + +* + +**In addition**, you may send patches for review to the above specified +mailing list. In this case, when creating patches using `git` please make +sure to use the following formatting for the message subject: git format-patch -s --subject-prefix='meta-raspberrypi][PATCH' origin -When sending patches to the mailing list, please use something like: +Then, for sending patches to the mailing list, you may use this command: git send-email --to yocto@yoctoproject.org -## Github issues +## GitHub issues + +In order to manage and track the layer issues more efficiently, the +GitHub issues facility is used by this project: + +* + +If you submit patches that have a GitHub issue associated, please make sure to +use standard GitHub keywords, e.g. `closes`, `resolves` or `fixes`, before the +"Signed-off-by" tag to close the relevant issues automatically: + + foobar: Adjusted the foo setting in bar + + Fixes: #324 + + Signed-off-by: Joe Developer + +More information on the available GitHub close keywords can be found here: -In order to manage and trace the meta-raspberrypi issues, we use github issues: - +* -If you push patches which have a github issue associated, please provide the -issue number in the commit log just before "Signed-off-by" line(s). Example line -for a bug: -`[Issue #13]` diff --git a/meta-raspberrypi/docs/layer-contents.md b/meta-raspberrypi/docs/layer-contents.md index f71d396aa..14e6b996e 100644 --- a/meta-raspberrypi/docs/layer-contents.md +++ b/meta-raspberrypi/docs/layer-contents.md @@ -9,7 +9,7 @@ * raspberrypi3 * raspberrypi3-64 (64 bit kernel & userspace) * raspberrypi-cm (dummy alias for raspberrypi) -* raspberrypi-cm3 (dummy alias for raspberrypi2) +* raspberrypi-cm3 Note: The raspberrypi3 machines include support for Raspberry Pi 3B+. diff --git a/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend b/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend new file mode 100644 index 000000000..25423d088 --- /dev/null +++ b/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-core/packagegroups/packagegroup-meta-oe.bbappend @@ -0,0 +1 @@ +RDEPENDS_packagegroup-meta-oe-kernel_remove_rpi = "bpftool" diff --git a/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-kernel/linux/bpftool.bbappend b/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-kernel/linux/bpftool.bbappend new file mode 100644 index 000000000..7536f3903 --- /dev/null +++ b/meta-raspberrypi/dynamic-layers/openembedded-layer/recipes-kernel/linux/bpftool.bbappend @@ -0,0 +1,3 @@ +# remove it when we upgrade to kernel > 4.14 +# +COMPATIBLE_HOST_rpi = "null" diff --git a/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend b/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend index 7d6ab84e4..58b7b4713 100644 --- a/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend +++ b/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend @@ -1,17 +1,17 @@ PACKAGECONFIG_GL_rpi = "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'gl', \ - bb.utils.contains('DISTRO_FEATURES', 'opengl', 'eglfs gles2 linuxfb', \ + bb.utils.contains('DISTRO_FEATURES', 'opengl', 'eglfs gles2', \ '', d), d)}" -#PACKAGECONFIG_GL_rpi = "${@bb.utils.any_distro_features('x11 wayland', '', 'eglfs', d)}" +PACKAGECONFIG_GL_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', ' gbm kms', '', d)}" PACKAGECONFIG_FONTS_rpi = "fontconfig" PACKAGECONFIG_append_rpi = " libinput examples tslib xkb xkbcommon-evdev" PACKAGECONFIG_remove_rpi = "tests" -OE_QTBASE_EGLFS_DEVICE_INTEGRATION_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', 'eglfs_kms', 'eglfs_brcm', d)}" +OE_QTBASE_EGLFS_DEVICE_INTEGRATION_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', 'eglfs_brcm', d)}" do_configure_prepend_rpi() { # Add the appropriate EGLFS_DEVICE_INTEGRATION if [ "${@d.getVar('OE_QTBASE_EGLFS_DEVICE_INTEGRATION')}" != "" ]; then - echo "EGLFS_DEVICE_INTEGRATION = ${OE_QTBASE_EGLFS_DEVICE_INTEGRATION}" > ${S}/mkspecs/oe-device-extra.pri + echo "EGLFS_DEVICE_INTEGRATION = ${OE_QTBASE_EGLFS_DEVICE_INTEGRATION}" >> ${S}/mkspecs/oe-device-extra.pri fi } RDEPENDS_${PN}_append_rpi = " userland" diff --git a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb index d92b8e488..fcc7771b9 100644 --- a/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb +++ b/meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb @@ -184,7 +184,7 @@ do_deploy() { fi # Append extra config if the user has provided any - echo "${RPI_EXTRA_CONFIG}" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt + printf "${RPI_EXTRA_CONFIG}\n" >> ${DEPLOYDIR}/bcm2835-bootfiles/config.txt } do_deploy_append_raspberrypi3-64() { diff --git a/meta-raspberrypi/recipes-bsp/common/firmware.inc b/meta-raspberrypi/recipes-bsp/common/firmware.inc index 7be848a67..37cd343f4 100644 --- a/meta-raspberrypi/recipes-bsp/common/firmware.inc +++ b/meta-raspberrypi/recipes-bsp/common/firmware.inc @@ -1,11 +1,11 @@ -RPIFW_DATE ?= "20180924" -SRCREV ?= "5b49caa17e91d0e64024380119ad739bb201c674" +RPIFW_DATE ?= "20190212" +SRCREV ?= "83977fe3b6ef54c1d29c83b0a778d330f523441f" RPIFW_SRC_URI ?= "https://github.com/raspberrypi/firmware/archive/${SRCREV}.tar.gz" RPIFW_S ?= "${WORKDIR}/firmware-${SRCREV}" SRC_URI = "${RPIFW_SRC_URI}" -SRC_URI[md5sum] = "51352972a029c6f47bde6d302b69440e" -SRC_URI[sha256sum] = "d1f9c58957dfe681fff7e1cf1eabb9e0f6fdc99720f1d059fb24a37750573310" +SRC_URI[md5sum] = "5ccdb5447cbdd3ee0158a514f7b76cb9" +SRC_URI[sha256sum] = "9a34ccc4a51695a33206cc6c8534f615ba5a30fcbce5fa3add400ecc6b80ad8a" PV = "${RPIFW_DATE}" diff --git a/meta-raspberrypi/recipes-devtools/raspi-gpio/raspi-gpio_git.bb b/meta-raspberrypi/recipes-devtools/raspi-gpio/raspi-gpio_git.bb new file mode 100644 index 000000000..0de775c72 --- /dev/null +++ b/meta-raspberrypi/recipes-devtools/raspi-gpio/raspi-gpio_git.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Tool to help debug / hack at the BCM283x GPIO" +HOMEPAGE = "https://github.com/RPi-Distro/raspi-gpio" +SECTION = "devel/libs" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=a14affa234debc057b47cdca615b2192" + +COMPATIBLE_MACHINE = "^rpi$" + +inherit autotools + +SRCREV = "2df7b8684e2e36b080cda315d78d5ba16f8f18b0" +SRC_URI = "git://github.com/RPi-Distro/raspi-gpio.git;protocol=https;branch=master \ + " + +S = "${WORKDIR}/git" + diff --git a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb index e6af4bff8..f5c803e48 100644 --- a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb +++ b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENCE;md5=0448d6488ef8cc380632b1569ee6d196" PROVIDES += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "", "virtual/libgles2 virtual/egl", d)}" -RPROVIDES_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "", "libgles2 egl libegl libegl1 libgl1 libglesv2-2", d)}" +RPROVIDES_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "", "libgles2 egl libegl libegl1 libglesv2-2", d)}" COMPATIBLE_MACHINE = "^rpi$" SRCBRANCH = "master" @@ -91,4 +91,4 @@ FILES_${PN}-dbg += "${libdir}/plugins/.debug" PACKAGE_ARCH = "${MACHINE_ARCH}" RDEPENDS_${PN} += "bash" -RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "libegl1", "", d)}" +RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "libegl-mesa", "", 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 b16b2c19d..310d2f844 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 @@ -24,7 +24,7 @@ LIC_FILES_CHKSUM = "\ NO_GENERIC_LICENSE[Firmware-cypress-rpidistro] = "LICENCE.cypress-rpidistro" SRC_URI = "git://github.com/RPi-Distro/bluez-firmware" -SRCREV = "ade2bae1aaaebede09abb8fb546f767a0e4c7804" +SRCREV = "96eefffcccc725425fd83be5e0704a5c32b79e54" PV = "0.0+git${SRCPV}" S = "${WORKDIR}/git" diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb index d11b59926..c68d2d047 100644 --- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb +++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb @@ -1,6 +1,6 @@ -LINUX_VERSION ?= "4.14.79" +LINUX_VERSION ?= "4.14.98" -SRCREV = "9ca74c53cbda1f104bce3b33850fd3bf33eb3793" +SRCREV = "5d63a4595d32a8505590d5fea5c4ec1ca79fd49d" SRC_URI = " \ git://github.com/raspberrypi/linux.git;branch=rpi-4.14.y \ file://0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch \ -- cgit v1.2.1