As well, define the correct configuration for this machine.
Tested this with and without u-boot on CM3 (with internal storage) and
CM3+ without internal storage.
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
This avoids a missing rdep errors seen sometimes when switching
compilers or graphic driver providers
ERROR: userland-20181120-r0 do_package_qa: QA Issue: /usr/lib/libWFC.so contained in package userland requires li bEGL.so.1, but no providers found in RDEPENDS_userland? [file-rdeps]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The userland should only provide egl libraries rather than gl libraries,
or else it will cause conflicts with other libgl providers like mesa.
Signed-off-by: Ming Liu <liu.ming50@gmail.com>
- Drop enabling linuxfb, now we can get eglfs going
- Enable kms and gbm feature when using vc4graphics driver
- No need to set OE_QTBASE_EGLFS_DEVICE_INTEGRATION when using vc4graphics
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Added handy tool which can be used to trace down how gpio on RPI are
configured + add possibility to update.
Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
* Rephrased some paragraphs
* Better organised the section itself
* Added guideline and formatting examples for commit log messages
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
select the rt kernel by adding in local.conf:
PREFERRED_PROVIDER_virtual/kernel = "linux-raspberrypi-rt"
Signed-off-by: Phong Tran <tranmanphong@gmail.com>
These names are mapped to mesa equivalent rproviders
when using vc4 rdep should be on libegl1 which is then
mapped to libegl-mesa since thats what provides libegl1
when using mesa. The libegl is not a global name for this
library
Fixes
ERROR: userland-20181120-r0 do_package_qa: QA Issue: /usr/lib/libWFC.so
contained in package userland requires libEGL.so.1, but no providers
found in RDEPENDS_userland? [file-rdeps]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
RPi-Distro has augmented their bluetooth infrastructure to support new
features. It also correctly handles restart, which fixes problems when
faults cause hciattach to exit. Replace brcm43438.service with the
upstream ones.
Resolves: #330
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Raspberry Pi hardware requires firmware that supersedes or is not
present in the standard linux-firmware distribution. These files are
maintained in the RPi-Distro project on github.
Several attempts have been made to reconcile conflicts between what's in
linux-firmware and what the hardware needs. The existing approach is
functional but not maintainable since it combines material from three
repositories into a single package that claims to be linux-firmware.
Remove the appends that change the content of linux-firmware for rpi
hardware. Add two new recipes that follow the RPi-Distro repositories:
* firmware-nonfree which forked from linux-firmware and replaces
content is provided as linux-firmware-rpidistro;
* bluez-firmware which forked from (very old) bluez and adds content is
provided as bluez-firmware-rpidistro.
The packages are named to make clear that these come from RPi-Distro,
rather than generic sources. Licensing attempts to record the state of
licensing as documented in RPi-Distro.
Resolves: #298
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
- Upgrade to latest omxplayer with ffmpeg 4.x
- drop backported patches which are not needed
- Make vc4 support patch conditionally apply only when vc4graphics is used
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Control the installs via MACHINE_FEATURES and avoid almost duplicate
recipe
Adjust other recipes to depend on userland now
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This provides out of box configuration for QT/eglfs use
when x11/wayland arent used but plain EGLFS is in play
Signed-off-by: Khem Raj <raj.khem@gmail.com>
BBFILES_DYNAMIC can be used to activate content only when given
layers are present.
For now just add qt5 layer to the BBFILES_DYNAMIC list
Signed-off-by: Khem Raj <raj.khem@gmail.com>
vc4-fkms-v3d needs dispmanx, its DRM VC4 V3D driver on top of the dispmanx
display stack, this does not work with 4.14 kernel and since we always
use vc4graphics on 64bit, just keep using vc4-kms-v3d dtbo which should
enable right graphics
Tested with core-image-sato, running glxgears with 55.5fps in
raspberrypi3-64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This causes glamor APIs to be disabled and glxgears run very slow
like 1FPS, without this it speeds up to 55.5fps
Signed-off-by: Khem Raj <raj.khem@gmail.com>
when running -ctestimage target, it fails because of errors it finds in
Xorg logs
| Log:
/mnt/a/yoe/build/tmp/work/raspberrypi3-yoe-linux-gnueabi/core-image-sato/1.0-r0/target_logs/Xorg.0.log
| -----------------------
| Central error: [ 14.760] (EE) AIGLX error: dlopen of /usr/lib/dri/swrast_dri.so failed (/usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory)
Therefore we enable swrast gallium drivers to make xorg happy
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Update to latest from upstream
* Backport OpenSSL 1.1.x related patches for ffmpeg
* Pass --cpu based on machine, instead of hardcoding it to arm1176jzf-s
* Make --cc, --cxx and --ld be used from environment, helps building
with clang
* It requires userland graphics driver to build to encode that in
COMPATIBLE_HOST
Signed-off-by: Khem Raj <raj.khem@gmail.com>
When bitbaking image rpi-hwup-image, a warning message is generated
to inform he user that the image is deprecated. The warning message
contains a suggestion of a non-deprecated image to use instead.
Previous to this commit, core-image-minimal was the suggested alternate
image. This was a subpar suggestion, because rpi-hwup-image packages
the kernel modules in the image, but core-image-minimal does not. This
can lead to confusion for the user, who may not immediately realize that
their kernel modules are no longer in the image. With this commit, the
warning message now suggests core-image-base, which packages the kernel
modules in its image.
This change was suggested by Khem Raj on the Yocto project mailing list.
Signed-off-by: Steve Pavao <stevep@korgrd.com>
Licesnse-Update: Limit the check to license text alone and not until end of file
and point to correct lines otherwise license is unchanged
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Update to v2.46 to support the RPi 3 B+.
Patches reworked as follow:
* 0001-Add-initial-cross-compile-support.patch: rebase to current
upstream
Signed-off-by: Daniel Rank <dwrank@gmail.com>
This is helpful for example in the cases where the kernel doesn't
provide all the dtbs in arm64 as in arm.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
Contains the following changes:
7f9c648dad64 drm/vc4: Move IRQ enable to PM path
which fixes an unbalanced IRQ enable warning, which was rapported
in #286
Signed-off-by: Mirza Krak <mirza.krak@northern.tech>
Signed-off-by: Gunnar Andersson <gandersson@genivi.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
[Issue #285] -- https://github.com/agherzan/meta-raspberrypi/issues/285
The openembedded-core commit 1860d9d3c62e2e94cd68a809385873ffd8270b6d
changed the names of DTB files in the deploy directory - they are no
longer prefixed with "${KERNEL_IMAGETYPE}-". Update make_dtb_boot_files
(which generates entries in IMAGE_BOOT_FILES) to take this change into
account.
Signed-off-by: Jonathan Haigh <jonathan.haigh@arm.com>
mesa-demos demand libgles1 and userland driver does not have it, therefore make it
conditional on choice of graphics driver, remove it when using userland driver and
keep it when using vc4 graphics driver.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* use INITRAMFS_SYMLINK_NAME from new kernel-artifact-names.bbclass
instead of KERNEL_INITRAMFS
* the documentation says that KERNEL_INITRAMFS should be used to
define extension of initramfs, but in linux-raspberrypi.inc it's
defined only to 1 or empty based on INITRAMFS_IMAGE_BUNDLE variable
and I don't see any code in meta-raspberry or oe-core which would
use KERNEL_INITRAMFS to actualy name the initramfs artifact to create:
${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin
used in classes/sdcard_image-rpi.bbclass
* also fix the assumption that there is -${MACHINE} suffix in:
${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin
because that's defined as KERNEL_IMAGE_SYMLINK_NAME and some DISTROs
might use different value
* this depends on oe-core changes which were merged today:
http://git.openembedded.org/openembedded-core/commit/?id=7d0ef0eaa1bfe97015a774c26f5791622e7e8b12
* this is the last piece of previous pull-request:
https://github.com/agherzan/meta-raspberrypi/pull/159
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* there is runtime dependency on rpi-u-boot-scr from u-boot itself:
recipes-bsp/u-boot/u-boot_%.bbappend:RDEPENDS_${PN}_append_rpi = " rpi-u-boot-scr"
* but that's not enough to ensure that rpi-u-boot-scr:do_deploy is
finished before do_image_rpi_sdimg and for
${DEPLOY_DIR_IMAGE}/boot.scr to exist in time
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* instead of using ${KERNEL_IMAGETYPE}-${DTB_BASE_NAME}.dtb use
the entries from KERNEL_DEVICETREE
* basename is still needed because raspberrypi3-64 is using:
broadcom/bcm2710-rpi-3-b.dtb and the ${DEPLOY_DIR_IMAGE} doesn't
contain any directories for DTBs and we cannot remove broadcom/
prefix, because then "make bcm2710-rpi-3-b.dtb" from
kernel-devicetree.bbclass will fail with:
make[3]: *** No rule to make target 'arch/arm64/boot/dts/bcm2710-rpi-3-b.dtb'. Stop.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
The patch introduced in 237e0c7 is now fixed upstream in gstreamer-base-1.14.1, hence drop it.
See: <2f3ff84f40>
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
The patch in 237e0c7 used a define guard that clashes with an actual feature of Khronos (EGL_KHR_stream).
This makes some packages such as `qtbase` to think that the outdated Krhonos in userland has newer features.
This fix uses a more specific name for the relevant define guard (EGL_KHR_uint64_typedef).
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
The `gstreamer1.0-plugins-base` package version `1.14` uses `EGL_EXT_image_dma_buf_import`, which
expects the `EGLuint64KHR` typedef that is present in recent versions of Khronos.
However, the older version included in userland does not provide it.
This patch backports the missing typedef from recent Khronos into userland.
See: <https://www.khronos.org/registry/EGL/api/EGL/eglext.h>
Submitted to userland in <https://github.com/raspberrypi/userland/pull/467>
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
1.14 does not support this option
Fixes
QA Issue: gstreamer1.0-plugins-bad: configure was passed unrecognised options: --disable-dispmanx [unknown-configure-option]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The attempt to Raspbian updated firmware blobs in packages separate from
linux-firmware introduced unresolvable conflicts with the standard
linux-firmware roll-up package. Revert to using an augmented
linux-firmware recipe that overrides and adds firmware from two Raspbian
repositories that have up-to-date images.
Closes#244
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Wayland was updated recently in Poky, and now includes `libwayland-egl`:
commit 8097bf7012a0d97d3b8b48eceb5dc20cc4ae7ca9
Author: Denys Dmytriyenko <denys@ti.com>
Date: Tue Apr 10 15:06:09 2018 -0400
wayland: upgrade to 1.15.0
Official announcement:
https://lists.freedesktop.org/archives/wayland-devel/2018-April/037767.html
| libwayland-egl is now part of libwayland, and will presumably be removed
| from mesa in the not too distant future.
Update mesa recipe by removing corresponding libwayland-egl entries.
(From OE-Core rev: 6e5952fcfc13ff4b63c9376bd41a1dbba957f425)
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
However, the `userland` ships its own version of the library (see issue #243).
Until further testing, for now discard the version in `wayland` in favour of the version in `userland`.
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
Unique bluetooth device addresses are not assigned correctly with some
firmware, resulting in a fixed default address. Use the same utility as
raspbian does to initialize the device.
Closes#236
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Remove the material covered by the Cypress license from the bluez5
package and move it to its own package, derived directly from the
upstream sources.
Closes#224
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Type=simple is wrong: it allows bluetooth.service to start before the
uart is configured, resulting in hci0 command tx timeout errors.
Type=oneshot blocks follow-up units until the ExecStart completes.
Add RemainAfterExit since system state has changed as a result of the
unit.
Also add a BindsTo for the device that we're going to use.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
[Issue #239] -- https://github.com/agherzan/meta-raspberrypi/issues/239
The patch 0002-rpi_0_w-Add-configs-consistent-with-RpI3.patch has been
applied to the upstream U-Boot repo and is now in the release that
openembedded-core uses so remove it from meta-raspberrypi's U-Boot
bbappend.
Signed-off-by: Jonathan Haigh <jonathan.haigh@arm.com>
This along with some module and connman magic allows a RaspberryPi Zero
Wireless to tether to a host over USB.
dtoverlay=dwc2,dr_mode=peripheral
modprobe g_ether
connman enable gadget
connman tether gadget on
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
There's no reason to support the old, outdated ARM OABI when upstream
linux-raspberrypi doesn't support this by default.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
CONFIG_BLK_DEV_DRBD: Deciding whether to use the in-kernel DRBD module or the
external drbd recipe in meta-networking is a policy decision and doesn't belong
in our BSP layer.
CONFIG_LEGACY_PTYS: These are legacy for a reason. They're not enabled in the
defconfig so they shouldn't be required for rpi devices. Let's drop this here,
it can be added back in a distro layer where (if) needed.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
This is obsolete, undocumented and won't work anyway since we force the kernel
command line to ${CMDLINE} via the cmdline.txt file.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
KERNEL_ENABLE_CGROUPS: This is obsolete, all required config options for cgroups
are enabled by default.
KERNEL_INITRAMFS: Some of the config options we set are already enabled by
default.
UDEV_GE_141: This is long obsolete and all the required config options are
already set in the defconfig.
ARM_KEEP_OABI: AEABI=y and OABI_COMPAT=n are already set in the defconfig.
CONFIG_LOCALVERSION_AUTO: This setting is already disabled in the defconfig.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
RDEPENDS is fairly meaningless for recipes which don't create a package to be
installed into the rootfs. Instead we should be using DEPENDS to guarantee
correct ordering of build tasks.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
We have a few recipes which only deploy files that go into the boot partition
and do not create packages to be installed into the rootfs. These recipes don't
need to run the usual packaging tasks so we can drop them to speed up the build
a little.
We also have a bunch of recipes that don't need the usual toolchain as they just
copy files or invoke native commands like `mkimage`. So to speed up the build a
little more we can set INHIBIT_DEFAULT_DEPS to avoid an unnecessary dependency
on the toolchain.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
From patch message:
In some cross build environments such as the Yocto Project build environment
it provides an ncurses library that is compiled differently than the host's
version. This causes display corruption problems when the host's curses
includes are used instead of the includes from the provided compiler are
overridden. There is a second case where there is no curses libraries at
all on the host system and menuconfig will just fail entirely.
The solution is simply to allow an override variable in check-lxdialog.sh
for environments such as the Yocto Project. Adding a CROSS_CURSES_LIB and
CROSS_CURSES_INC solves the issue and allowing compiling and linking against
the right headers and libraries.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Added support for and documented the following new extra build options:
* gpu_freq overclocking option
* disable boot rainbow splash screen
* configure the boot delay after GPU firmware loading
* configure common HDMI and composite video options
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
Updated BCM43430A1.hcd to bluez-firmware_1.2-3+rpt4.1.debian.tar.xz
Added BCM4345C0.hcd for RasperryPi 3B+ support
Files from https://github.com/RPi-Distro/bluez-firmware at commit
50fa5628b5c2fd6c59090fb18f02af9fd98c3170
Closes Issue #222
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
If I am not mistaken, many desktops (kde/lxqt/xfce..) use udisks2 to ask for
devices which can be mounted. Without this patch the initial boot partition
can be mounted by a single click on folder displayed on desktop or file manager.
Why it is suggested to add this recipe to an image:
* It removes annoying icon in desktop/file manager.
* The initial boot partition is vfat. Unpriviledged users can modify
content. E.g by removing files accidently, images can be turned into
non-booting condition easily. And from security point of view, it is a
disaster.
FWIW: Have similar in all my BSPs vor very long time.
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Currently oe-core enables dri3 only for x11 AND vulcan. Although patch enabling
dri3 by default in oe-core was sent out, make sure here dri3 is enabled -
whatever oe-core suggest in the future.
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
This packages only the firmware needed for the RaspberryPi boards. We use the
RPi-Distro as it's already maintained by the Raspbian guys and we get better
support for the RaspberryPi needed firmwares.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
fixes:
WARNING: gstreamer1.0-omx-1.12.4-r0 do_patch:
Some of the context lines in patches were ignored. This can lead to incorrectly applied patches.
The context lines in the patches can be updated with devtool:
devtool modify <recipe>
devtool finish --force-patch-refresh <recipe> <layer_path>
Then the updated patches and the source tree (in devtool's workspace)
should be reviewed to make sure the patches apply in the correct place
and don't introduce duplicate lines (which can, and does happen
when some of the context is ignored). Further information:
http://lists.openembedded.org/pipermail/openembedded-core/2018-March/148675.htmlhttps://bugzilla.yoctoproject.org/show_bug.cgi?id=10450
Details:
Applying patch 0001-config-files-path.patch
patching file config/bellagio/gstomx.conf
Hunk #1 succeeded at 1 with fuzz 2.
Hunk #2 succeeded at 9 with fuzz 2.
patching file config/rpi/gstomx.conf
Hunk #8 succeeded at 63 with fuzz 2.
Hunk #10 succeeded at 82 with fuzz 2.
Hunk #11 succeeded at 92 with fuzz 2.
Now at patch 0001-config-files-path.patch
deleted obsolete `gstreamer1.0-omx` directory with duplicated patches that are also in `gstreamer1.0-omx-1.12`.
made file naming for `gstreamer1.0-omx_%.bbappend` consistent with the rest of the layer recipes.
Signed-off-by: Hugo Hromic <hhromic@gmail.com>
These renames are recently added
dd98890106
Some packages e.g. libSDL2 has started using the new names
and are resulting in undefined symbols e.g.
| /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-gnueabi/libsdl2-mixer/2.0.2-r0/recipe-sysroot/usr/lib/libb
rcmEGL.so: undefined reference to `wl_resource_post_error'
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Remove the following unused patches:
1. 0002-Don-t-try-to-acquire-buffer-when-src-pad-isn-t-activ.patch
2. 0003-fix-decoder-flushing.patch
Signed-off-by: Maxin B. John <maxin.john@intel.com>
A previous patch changed the BT serial device to the alias, but did not
update the device dependency resulting in the service failing to start
on boot.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
While wic is not a standard image, adding it to IMAGE_FSTYPES in
local.conf will fail unless a WKS_FILE is provided.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Recently wic was modified to no longer exclude /boot from partitions
added to fstab. The --on parameter in many kickstart specifications
insufficiently resolved the MMC device, resulting in attempts to mount
/dev/mmcblkp1 as boot when the device should be /dev/mmcblk0p1.
With systemd the mount failure is an error and the system drops into
emergency mode.
Signed-off-by: Peter A. Bigot <pab@pabigot.com>
If rpi-basic-image is based on rpi-hwup-image, both deprecation warnings are
printed which may be confusing. Therefore let's just copy over the relevant bits
of rpi-hwup-image for now.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
There hasn't been a tagged version of the firmware lately, but there have been
several bugfixes listed in the commit history and we're about to move to v4.14.y
as the default kernel so let's get up-to-date.
The actual commit used is the most recent change to the firmware files as of
2018-02-26, the most recent commits which only change the kernel image and other
files we don't use are ignored.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
As discussed on the issue tracker, it's confusing for meta-raspberrypi to have
its own set of image names filling the same jobs as the core images. Therefore
we are marking these images as deprecated and will be removing them in the
future. The recommended replacement images are as follows:
rpi-hwup-image -> core-image-minimal
rpi-basic-image -> core-image-base
The image 'rpi-test-image' will be kept and is not marked as deprecated, it is
still useful for testing. It it updated to be based on 'core-image-base'.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The dependency resolution code in bitbake has recently been optimized and this
seems to have slightly changed the behaviour of do_image_rpi_sdimg and
do_image_wic. We ensure that the main build artifacts are present by depending
on the relevant do_deploy and do_populate_sysroot tasks. However, we need to
ensure that other build tasks for these dependencies have also been executed
before we try to create our image. This can be achieved by adding a recursive
dependency on do_build, so that the do_build tasks of all recipes in the
dependency chain of do_image_rpi_sdimg/do_image_wic are executed before the
image function itself is executed.
The original issue seen here was that 'recipedata' files were not copied to
'tmp/deploy/licenses' as do_populate_lic for each dependency had not been ran
before the image creation function. The write_deploy_manifest function from
license.bbclass (listed in IMAGE_POSTPROCESS_COMMAND) therefore failed. Adding
the recursive dependency on do_build fixes this issue, ensuring do_populate_lic
runs before do_image_rpi_sdimg/do_image_wic.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
This makes the defconfig more consistent with the RPi 3 and
CONFIG_OF_EMBED is needed to get the RPi firmware provided
DTB to function.
Recently removed by:
a50e19695f u-boot: drop upstreamed patches in v2018.01
however this change missed the cutoff for v2018.01
Signed-off-by: Drew Moseley <drew.moseley@northern.tech>
Add patch to allow multiple wayland clients per process
userland has limit of one wayland client per process and thereby allow compositors
to launch multiple wayland client apps
Signed-off-by: Jeff Wannamaker <jeff_wannamaker@cable.comcast.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* samba depends on libpam and it might be useful to disable support
for it in DISTROs without pam in DISTRO_FEATURES
* disable it by default
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Currently, building linux-raspberrypi with "devtool build" breaks
because ${B}.config doesn't yet exist when do_configure_prepend runs.
Fix this by taking some logic from kernel.bbclass do_configure to populate
${B}.config before do_configure_prepend.
The full explanation for why this is necessary is fairly complex:
- In devtool builds, externalsrc.bbclass gets inherited and sets a list of
SRCTREECOVEREDTASKS, which don't get run because they affect the source tree
and, when using devtool, we want the developer's changes to be the single
source of truth. kernel-yocto.bbclass adds do_kernel_configme to
SRCTREECOVEREDTASKS, so it doesn't run in a devtool build., In a normal
non-devtool build, do_kernel_configme creates ${B}.config.
- Normally (e.g. in linux-yocto), it would be OK that do_kernel_configme
doesn't run, because the first few lines of do_configure in kernel.bbclass
populate ${B}.config from either ${S}.config (if it exists) for custom
developer changes, or otherwise from ${WORDIR}/defconfig.
- In linux-raspberrypi, we add do_configure_prepend, which tweaks
${B}.config. Since this runs *before* the kernel.bbclass do_configure,
${B}.config doesn't yet exist and we hit an error. Thus we need to move
the logic from do_configure up to before our do_configure_prepend. Because
we are copying only a portion of do_configure and not the whole thing,
there is no clean way to do it using OE functionality, so we just
copy-and-paste.
Signed-off-by: Martin Kelly <mkelly@xevo.com>
This command is done (with more correct flags) in kernel.bbclass's
kernel_do_configure. Since we inherit that and prepend to it, we don't
need to run it ourselves, as we end up just running it twice.
Signed-off-by: Martin Kelly <mkelly@xevo.com>
Currently, we are installing the rpi custom txt and fw files whenever
the meta-raspberrypi layer is included in bblayers.conf. This breaks
other machines that need to use the bcm43430 drivers but with alternate
txt or fw files.
Install these files only when "rpi" is in MACHINEOVERRIDES.
Signed-off-by: Martin Kelly <mkelly@xevo.com>
The kernel class is now using $KERNEL_PACKAGE_NAME to set the default
kernel package name in order to allow alternate kernel flavors.
This fixes the following bitbake warning:
Variable key RDEPENDS_${KERNEL_PACKAGE_NAME}-base (${KERNEL_PACKAGE_NAME}-image) replaces original key RDEPENDS_kernel-base ().
Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com>
This makes the defconfig more consistent with the RPi 3 and
CONFIG_OF_EMBED is needed to get the RPi firmware provided
DTB to function.
Signed-off-by: Drew Moseley <drew.moseley@northern.tech>
Added patch status information in patch header, and re-word of commit
message
Signed-off-by: Mirza Krak <mirza.krak@endian.se>
Sphinx will use the 'alabaster' theme by default when building locally. However,
Read the Docs will use their own theme by default which suits their site better.
By not specifying html_theme we allow both targets to use the appropriate
default theme.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The variable RPI_EXTRA_CONFIG can be set in local.conf to append text to the
Raspberry Pi config.txt file as described in the documentation.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
* As we now use GitHub for development we should point users at this repo.
* Layer documentation is now published on Read the Docs.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
* KERNEL_DEFCONFIG variable isn't used anywhere since this commit:
88478c3874
* it was replaced with KBUILD_DEFCONFIG:
recipes-kernel/linux/linux-raspberrypi.inc:KBUILD_DEFCONFIG_raspberrypi0-wifi ?= "bcmrpi_defconfig"
recipes-kernel/linux/linux-raspberrypi.inc:KBUILD_DEFCONFIG_raspberrypi ?= "bcmrpi_defconfig"
recipes-kernel/linux/linux-raspberrypi.inc:KBUILD_DEFCONFIG_raspberrypi2 ?= "bcm2709_defconfig"
recipes-kernel/linux/linux-raspberrypi.inc:KBUILD_DEFCONFIG_raspberrypi3 ?= "bcm2709_defconfig"
recipes-kernel/linux/linux-raspberrypi.inc:KBUILD_DEFCONFIG_raspberrypi3-64 ?= "bcmrpi3_defconfig"
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
We can't just override KERNEL_IMAGETYPE in machine-specific conf files without
breaking the implementation of RPI_USE_U_BOOT. Instead we need to define a new
KERNEL_IMAGETYPE_DIRECT variable which will control the value when u-boot is not
in use. This new variable may then be overridden as needed without breaking our
u-boot support.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
Fixes: 50fd319205 for raspberrypi3-64.
Fixes: #153
For raspberrypi3-64 set default kernel image to "Image".
"zImage" are not supported by arm64 platforms. And ".gz" images are not
handled by bootloader yet.
Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
We used to have this as the default but there was a bug at some point in the
firmware which didn't work with compressed kernel images. We switched to Image
and never changed it back even though that bug is long history.
In this way we will stop carrying 15M of a kernel image. 4M looks much better.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
This used to work in the past because this machine was based on raspberrypi
one. Now that they are separate, we need a configuration for it too otherwise:
| common/arm/quant-a.S: Assembler messages:
| common/arm/quant-a.S:362: Error: selected processor does not support `rbit
r1,r1' in ARM mode
| common/arm/quant-a.S:363: Error: selected processor does not support `rbit
r1,r1' in ARM mode
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
userland package is the Raspberry Pi provider for the openGL stack.
If selected, it shall provide the gles2 and egl stacks in conjunction
with mesa-gl.
libegl was missing in the RPROVIDES variable, thus some run-time
dependencies were not met when using userland as provider.
Signed-off-by: Francesco Giancane <francescogiancane8@gmail.com>
rpi-backend.so was an attempt to create a specialized
weston backend to be used on raspberry pi like platforms.
At the moment, this backend's support has been dropped in favor
of using the standard drm backend, as the vc4 driver is now mainline
in mesa and in kernel (for kernel support).
As a result, weston on raspberry pi does not require the rpi-backend.so
anymore, nor it is buildable (weston's configure complains about
unrecognized configuration switch).
This patch enables weston to natively run on the DRM backend.
Signed-off-by: Francesco Giancane <francescogiancane8@gmail.com>
* this reverts commit 04b37dbdb7.
* this makes qtbase and everything which depends on some qt* recipe to
be effectivelly MACHINE_ARCH
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This allow for bbappend files to be enabled when specific layers are
included.
Change-Id: Iecbcf0de85a64aad71605b60ecd3d9a2586fae85
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
We need to ensure that the bootloader and firmware files are present in the
deploy directory before creating wic images.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The timestamp in the rootfs partition image filename may not match the current
timestamp if the do_image_rpi_sdimg step is repeated without repeating the
previous do_image_ext3 (or similar) step.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
These commands are unnecessary and seem to mask failures to find the rootfs.ext3
file when re-running the do_image_rpi_sdimg stage without re-running the
preceeding do_image_ext3 stage.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
For raspberrypi3-64 we need to use the Image or Image.gz format with u-boot
instead of the legacy uImage format. We also need to issue the 'booti' command
to boot the kernel instead of 'bootm'.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
There is no reason to continue supporting pre-4.8 series kernels so we can move
the setting of LOADADDR to the common inc file.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
There is no need to have 2 separate inc files any more and the existing code has
several duplications.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The code to determine if we need to depend on lzop-native will fail as the local
defconfig file no longer exists.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The only remaining function in linux-raspberrypi-base was split_overlays() which
is used in the sdcard_image-rpi class. So we can move this function over and
drop the now-empty linux-raspberrypi-base class.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
* The kerneltype variable is not used anywhere after being set.
* The manipulation of KERNEL_DEVICETREE is effectively a no-op, we read the
current value in get_dts() and store this back into the same variable.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
* Update the recipe and patch the Makefile to not require internet access during
do_compile. Unfortunately, the upstream Makefile wants to access a web service
hosted on Heroku and to "git clone" ffmpeg with no fixed commit hash.
* Patch Makefile.ffmpeg to avoid a potential race condition between the
configure & compile stages.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
The version of this firmware provided by linux-firmware is 7.45.41.26. This
version seems to have connectivity issues when bonding interfaces. Raspbian
included an updated version (7.45.41.46) which tested, proved to fix this
problem (see https://github.com/resin-os/meta-resin/issues/812).
The version Raspbian is providing is not yet in linux-firmware as they have it
directly from Cypress (see https://github.com/RPi-Distro/repo/issues/88).
Besides the issue described above, it fixes various other issues including a
broadpwn fix.
Hopefully this version, or a newer one, will end up in upstream soon. In order
to catch when that happens and stop overwriting this firmware, a check is added
in the racipe based on the md5sum of the current shipped firmware.
In terms of ditribution license, we got an informal one in the github thread
mentioned above.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
OE currently builds dtb files with its own custom targets by
specifying each dtb file as makefile target, this creates bad
dtb for rpi64 bit. This patch calles 'make dtbs' at the end
which regenerates the correct dtb files
This makes the vc4 initialize properly on rpi64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Use correct overlay for enabled vc4 accelaration
This enable 3D accelaration over dispmanx on vc4/rpi64
Enable audio over HDMI
Disable overscan to avoid graphics glitches
Signed-off-by: Khem Raj <raj.khem@gmail.com>
oe-core now provides v2017.09 of u-boot which already merged both patches
introduced by commit 94e2929f74 so we can
drop them from meta-raspberrypi.
Signed-off-by: Andrea Galbusera <gizero@gmail.com>
functions/variables in this bbappend implemented for only raspberrypi3.
But these must be able to used to enabling bluetooth on another raspberrypi that has bluetooth feature such as raspberrypi0-wifi.
The simple solution is a duplicating these but it is not good ideas for maintainance.
Add functions/variables follows to simplify to enabling bluetooth on another raspberrypi that has bluetooth.
- BCM_BT_SOURCES
- enable_bcm_bluetooth()
- BCM_BT_FIRMWARE
- BCM_BT_SERVICE
Signed-off-by: Yusuke Mitsuki <mickey.happygolucky@gmail.com>
[github issue #105: wiringpi library is not linked correctly]
Incorrect order of compiler flags causing the libwiringpi.so library
to not have the required linking dependencies. The cross-compilation
patch needed to be reworked in order to fix this problem.
Fixes#105
Signed-off-by: Aurelian Zanoschi <aurelian17@gmail.com>
In tree configurations are now used to build the kernel and
it is possible to extend the config via bbappend and cfg fragments
Fix issue 14
Signed-off-by: Andrea Ghittino <aghittino@gmail.com>
Fix bitbake complaining with:
ERROR: core-image-minimal-1.0-r0 do_image_complete: sstate found an absolute
path symlink [...].vfat pointing at [...].vfat. Please replace this with a
relative link.
This patch redefines SDIMG_VFAT as a file name instead of a full absolute path,
then fixing the symlink creation by pointing to a relative target. The cp
command that deploys the artifact is changed accordingly to include the
destination path.
Signed-off-by: Andrea Galbusera <gizero@gmail.com>
u-boot v2017.07 was not able to boot a Linux kernel or handle keyboard input.
This is fixed by reverting a config change to re-enable CONFIG_OF_EMBED and
backporting another config change to enable CONFIG_DM_KEYBOARD.
Signed-off-by: Paul Barker <pbarker@toganlabs.com>
* omxplayer has:
COMPATIBLE_MACHINE_rpi_aarch64 = null
so it cannot be inclued for raspberrypi3-64
* components used by this packagegroup are also restricted to ^rpi$ so
the packagegroup and the image using it cannot be built for anything else
* fixes couple errors when trying to build world with meta-raspberrypi included
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* bitbake is using re.match, so raspberrypi actually matches with anything
^raspberrypi.* which currently works, but it will also match with hypothetical
raspberrypi-is-no-more-this-is-banana-now MACHINE which isn't intended by
this COMPATIBLE_MACHINE.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* drop duplicated --enable-rpi-compositor and WESTON_NATIVE_BACKEND=rpi-backend.so
* use rpi override, adding --enable-rpi-compositor unconditionally breaks other MACHINEs with:
configure: WARNING: unrecognized options: --enable-rpi-compositor
* use just one append and one bb.utils.contains to save some bitbake cycles while parsing
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
[GitHub Ticket #98 - rpio requires the logging and threading Python
packages but does not RDEPENDS them in recipie]
The rpio tool needs the Python logging and threading pacakges installed
on the target system for it to work. The pacakges are not included when
doing a rpi-basci-image. This change updates the recipe so that all the
required dependencies of the prio script are identified by the recipie.
Fixes#98
Signed-off-by: Thomas A F Thorne <TafThorne@GoogleMail.com>
This commit allow wic generated images to work when we want u-boot to
load the kernel image.
Augment IMAGE_BOOT_FILES with the proper entries when KERNEL_IMAGETYPE
is "uImage". More specifically add u-boot image and boot.scr to deployed files
and give the proper name to the kernel image accordingly.
Signed-off-by: Andrea Galbusera <gizero@gmail.com>
* oe-core removed IMAGE_DEPENDS -> parsing fails with hint how to fix
* add required task for each recipe
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Update to latest available revision, in order to include proper rpi3
support as well as latest fixes.
LIC_FILES_CHKSUM for the license text in README.md is changed to handle
fixes of whitespace and newlines in the license text, introduced by the
pi-blaster commit: '0e1a1df Cleaning up the README'.
Signed-off-by: Petter Mabäcker <petter@technux.se>
2017-06-08 16:28:23 +02:00
131 changed files with 2129 additions and 1359 deletions
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.