Commit Graph

1318 Commits

Author SHA1 Message Date
Khem Raj
5013a063d5 linux-raspberrypi_5.4.bb: Build ashmem and binder drivers
These are android drivers, which help in running anbox on top of
raspberrypi machines

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-09-03 14:43:10 +01:00
Martin Jansa
46f4028e6f rpi-gpio: add -fcommon temporarily
* until the fix is available upstream

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2020-09-02 21:43:09 +01:00
Martin Jansa
1991ef8283 linux-raspberrypi-5.4: backport a fix for perf build with -fno-common from gcc-10
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2020-09-02 21:43:09 +01:00
Khem Raj
968dcd3f40 libsdl2: Add userland dependency when not using vc4graphics
Needed to provide KHR/khrplatform.h header

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-28 14:59:43 +01:00
Khem Raj
979fb504c3 xserver-xorg: Depend on userland when vc4graphics is disabled
This helps in getting right headers, we have made a choice to let
userland provide KHR/khrplatform.h when using it instead of mesa-gl
which could have been another provider, xserver-xorg's glx
implementation depends on virtual/libgl which in case of rpi-without-vc4
driver is provided by mesa-gl, as a result, compilation fails since no
one is providing this header in this case.

Fixes errors like
usr/include/GL/glext.h:56:10: fatal error: KHR/khrplatform.h: No such file or directory
|    56 | #include <KHR/khrplatform.h>
|       |          ^~~~~~~~~~~~~~~~~~~

Fixes issue #391

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-28 14:59:43 +01:00
Khem Raj
0433b69889 raspberrypi-firmware: Upgrade to 20200819
Includes 5.4.59 bumps

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-24 22:59:04 +01:00
Khem Raj
c61ccdbb93 linux-raspberrypi: Update to 5.4.59
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-24 22:59:04 +01:00
Martin Jansa
cc6074c660 linux-raspberrypi-5.4: bump SRCREV to latest to fix perf build
Needs some fixes from newer 5.4 kernel, e.g.:
1b940bbc5c55 Linux 5.4.56
df35e878d0a5 perf bench: Share some global variables to fix build with gcc 10
702d1b287fd2 perf env: Do not return pointers to local variables
73d2d6b421df perf tests bp_account: Make global variable static

to fix:
  LINK     perf/1.0-r9/perf-1.0/perf
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: error: perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list:2:15: invalid character
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: error: perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list:2:15: syntax error, unexpected end of file, expecting ';'
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: fatal error: unable to parse dynamic-list script file perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list
collect2: error: ld returned 1 exit status
Makefile.perf:609: recipe for target 'perf/1.0-r9/perf-1.0/perf' failed
make[2]: *** [perf/1.0-r9/perf-1.0/perf] Error 1
make[2]: *** Waiting for unfinished jobs....
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: error: perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list:2:15: invalid character
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: error: perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list:2:15: syntax error, unexpected end of file, expecting ';'
perf/1.0-r9/recipe-sysroot-native/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/10.1.0/ld: fatal error: unable to parse dynamic-list script file perf/1.0-r9/perf-1.0/plugins/libtraceevent-dynamic-list
collect2: error: ld returned 1 exit status
error: command 'arm-oe-linux-gnueabi-gcc' failed with exit status 1
cp: cannot stat 'perf/1.0-r9/perf-1.0/python_ext_build/lib/perf*.so': No such file or directory
Makefile.perf:571: recipe for target 'perf/1.0-r9/perf-1.0/python/perf.so' failed

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2020-08-18 20:19:23 +01:00
Pierre-Jean Texier
f5c39711c4 linux-raspberrypi: bump to revision 4b945d5
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-08-13 17:09:44 +01:00
Pierre-Jean Texier
42e4b4b889 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-08-13 17:09:44 +01:00
Pierre-Jean Texier
9adb9b81b2 rpi-default-versions: Switch defaults to 5.4
Linux Kernel 5.4 is now considered stable.

See [1] to check the current apt stable kernel.

[1] - https://github.com/raspberrypi/firmware/blob/stable/extra/uname_string7

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-08-13 17:09:44 +01:00
Andrei Gherzan
5c3bda2acb sdcard_image-rpi.bbclass: Fix when RPI_SDIMG_EXTRA_DEPENDS not defined
If the variable is not defined, bitbake will fail:

[...]
Task 'depends' should be specified in the form 'packagename:task'
[...]

This is because not expanding the variable leaves an invalid entry.

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
2020-08-10 11:09:45 +01:00
Jeff Ithier
f046b4128c Generalize the naming of the bootfiles deploy directory
The raspberry pi 4 variant has a BCM2711 chip, however it still
uses the same boot files as the BCM2835 used in previous generations.
This change generalizes the naming of the directory generated in the
$DEPLOY_DIR to avoid the implication that the files are only
meant for the BCM2835.

Signed-off-by: Jeff Ithier <ithijme@gmail.com>
2020-08-06 11:00:29 +01:00
Christopher Clark
11318d2da1 docs/extra-build-config.md: document vars to add to boot partition
FATPAYLOAD, DEPLOYPAYLOAD and RPI_SDIMG_EXTRA_DEPENDS

Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
2020-07-29 11:54:14 +01:00
Christopher Clark
c883daa802 sdcard_image-rpi.bbclass: enable extensible inclusion into boot
Add DEPLOYPAYLOAD, similar to the existing FATPAYLOAD, to enable
adding files to the boot partition from the image deploy directory.
Files such as hypervisor binaries may not be present (and in fact
unwanted) within the root filesystem, so FATPAYLOAD is not sufficient.

DEPLOYPAYLOAD is implemented with support for file renaming from the
source file in the image deploy directory to the filename written into
the boot image. DEPLOYPAYLOAD is a space-separated list of entries for
additions, each of which can optionally be colon-separated:
    <image deploy directory file>:<destination filename>

If the colon separator is omitted, the source deploy directory filename
is used as the destination filename.

The support for specifying the destination filename is used for
including Xen, which produces a machine-specific file in the image
deploy directory, and is written to the image partition with its
expected filename: xen.

Files that are to be included from the image deploy directory will
be produced by tasks that the do_image_rpi_sdimg[depends] must list,
so enable adding entries to that via a new variable:
RPI_SDIMG_EXTRA_DEPENDS.

These changes enable retiring a Xen-specific Raspberry Pi SD card
bbclass from meta-virtualization and have been tested on the
Raspberry Pi 4.

Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
2020-07-29 11:54:14 +01:00
Jakub Luzny
eaf4a5f17e docs/extra-build-config.md: Document CAN_OSCILLATOR variable
Add instructions how to use CAN_OSCILLATOR variable and declare support
for the Waveshare RS485 CAN HAT.

Signed-off-by: Jakub Luzny <jakub@luzny.cz>
2020-07-29 11:52:09 +01:00
Jakub Luzny
603f3891fe rpi-config: Add CAN_OSCILLATOR variable to set mcp2515 crystal frequency
Current configuration (16MHz) is made for the PiCAN2 board that uses 16MHz crystal. This setting allows for use of Waveshare RS485 CAN HAT that has 8MHz crystal soldered (although according to Waveshare there is also a 12MHz crystal version of the board).

Signed-off-by: Jakub Luzny <jakub@luzny.cz>
2020-07-29 11:52:09 +01:00
Fabio Berton
fc72c06141 u-boot: Move fw_env.config to u-boot append
The u-boot-env is provided by u-boot recipe and not by libubootenv, so
right recipe to append is the u-boot.

Adding the rpi-u-boot-scr in DEPENDS variable is wrong because it is
forcing rpi-u-boot-scr to be a dependency, but it'll fail if I have
another recipe that provides bootscript, once both recipes provide the
same file. The default value of u-boot-default-script is rpi-u-boot-scr,
so right way is to use u-boot-default-script and change the
PREFERRED_PROVIDER_u-boot-default-script if needed.

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
2020-07-27 15:34:17 +01:00
colin
e2c1992955 docs: Added documentation for Pican2 Duo support
Added documentation for ENABLE_DUAL_CAN build configuration and support
for Pican2 Duo board.

Signed-off-by: Colin McAllister <colinmca242@gmail.com>
2020-07-23 13:03:23 +01:00
colin
85d3dd81c5 rpi-config_git: Added ENABLE_DUAL_CAN build configuration
Currently ENABLE_CAN adds mcp2525-can0 to the dtoverlay.

ENABLE_DUAL_CAN was added to also add mcp2515-can1 to the dtoverlay.
This will allow a user to enable dual CAN when using a hat like the
PiCAN 2 Duo board.

Signed-off-by: Colin McAllister <colinmca242@gmail.com>
2020-07-23 13:03:23 +01:00
colin
73c686a70a conf/machine/include/rpi-base.inc: Added can1 interface to bsp
The device tree only supports a single CAN interface.  This prevents
compatiblity with dual-CAN boards like the PiCAN2 Duo.

The mcp2515-can1 device tree blob for overlay was added to RPI_KERNEL_DEVICETREE_OVERLAYS in order to support dual-CAN hats.

Signed-off-by: Colin McAllister <colinmca242@gmail.com>
2020-07-23 13:03:23 +01:00
Christopher Clark
e28d6b83ea rpi-base: add SERIAL_CONSOLES_CHECK to default to SERIAL_CONSOLES
As per the example in the bsp-guide, and the qemu and other machine
configs. Assists when running virtualized, where serial console
device can differ.

Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
2020-07-17 01:03:27 +01:00
Khem Raj
497a90a220 userland: Update to 2020-06-24 top commit
Forward port patches

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-07-14 17:16:50 +01:00
Pierre-Jean Texier
372dc40ae3 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-07-14 17:15:50 +01:00
Pierre-Jean Texier
32eb4bd8ad linux-raspberrypi: bump to Linux version 5.4.51
Fixes:

ERROR: linux-raspberrypi-1_5.4.50+gitAUTOINC+856e83151c-r0 do_fetch: Fetcher failure: Unable to find revision 856e83151cf3f802c495585ac176bb135a08030f in branch rpi-5.4.y even from upstream
ERROR: linux-raspberrypi-1_5.4.50+gitAUTOINC+856e83151c-r0 do_fetch: Fetcher failure for URL: 'git://github.com/raspberrypi/linux.git;branch=rpi-5.4.y'. Unable to fetch URL from any source.

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-07-14 17:15:50 +01:00
Christopher Clark
0d398a3b71 linux-raspberrypi: bump to 5.4.50 since upstream was force-pushed
Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
2020-07-08 14:09:28 +01:00
Leon Anavi
27d0016b6b libubootenv_%.bbappend: Add fw_env.config
Add fw_env.config that uses at run-time /boot/uboot.env generated
through the boot scripts (specifically boot.cmd.in) from recipe
rpi-u-boot-scr. This configuration file is required to
successfully run fw_printenv from the user space.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-07-03 20:49:32 +01:00
Leon Anavi
64bd47fe58 rpi-u-boot-scr: Create uboot.env via boot.cmd.in
Modify boot.cmd.in from recipe rpi-u-boot-scr to create uboot.env
in the /boot partition when using U-Boot. This change is required
to successfully run fw_printenv from the user space.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-07-03 20:49:32 +01:00
Leon Anavi
a6f1233d52 lirc: Rename bbappend to match only version 0.10.1
Rename LIRC bbappend file to match only version 0.10.1 because the
applied patch is not compatible with older LIRC versions.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-25 10:36:13 +01:00
Leon Anavi
260b89ecd1 docs/extra-build-config.md: Infrared
Add instructions how to use variable ENABLE_IR for infrared
support, for example with LIRC.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Leon Anavi
770a69f18d lirc_%.bbappend: Use lircd.service as in Raspbian
Use lircd systemd service similar to the one in Raspbian. Start
lircd with argument --nodaemon after lircd-setup.service.

Edit device in /etc/lirc/lirc_options.conf to switch between
receive and transmit modes (lircd must be restarted after such
change).

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Leon Anavi
cdee89b0a0 rpi-base.inc: Include modules if IR is enabled
Add kernel modules gpio-ir and gpio-ir-tx to variable
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS if ENABLE_IR is set to 1.
Variable ENABLE_IR enables infrared support (for LIRC). This
change affects images based on packagegroup-core-boot, including
the core-image-minimal image.

For other images (based on packagegroup-base) kernel modules
are provide through variable MACHINE_EXTRA_RRECOMMENDS.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Leon Anavi
c482e2cc7c rpi-config: Add ENABLE_IR variable for infrared
Users who want infrared device tree overlays gpio-ir and
gpio-ir-tx to be set in config.txt can now easily do it through
variable ENABLE_IR, for example in local.conf:

ENABLE_IR = "1"

By default the GPIO pin for gpio-ir is set to 18 and the pin for
gpio-ir-tx is 17. Both pins can be easily changed by modifying
variables GPIO_IR and GPIO_IR_TX (for example in local.conf).

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Leon Anavi
4499d60e60 lirc: Move to dynamic-layers
Move lirc to dynamic-layers/meta-python/recipes-connectivity/ to
avoid related issues while building rpi-basic-image.

Reported-by: Alan <engineer@iotexpert.com>
Suggested-by:  Khem Raj <raj.khem@gmail.com>
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-24 17:01:17 +01:00
Jon Magnuson
aa47ab631d packagegroup-rpi-test: resolve wireless-regdb conflict
Replaces `wireless-regdb` with `wireless-regdb-static` provided by poky.

Fixes #639.

Signed-off-by: Jon Magnuson <jon.magnuson@gmail.com>
2020-06-24 14:15:27 +01:00
M. ter Woord
5576a22061 Update layer-contents.md to include pi4
Signed-off-by: Matthijs ter Woord <matthijsterwoord@gmail.com>
2020-06-21 19:29:47 +01:00
Khem Raj
5ac6f01333 linux-raspberrypi_5.4.bb: Upgrade to 5.4.47
Drop backported patches which are already in this release

Fixes Issue #658

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-06-21 10:45:14 +01:00
Leon Anavi
f927dcd8c6 lirc_%.bbappend: Fix for gpio-ir
Apply Raspberry Pi specific fix to use LIRC with gpio-ir kernel
module with which the signal from /dev/lircX is slightly different
from that of lirc_dev (which was used with older LIRC and kernel
versions). The patch has been published by neuralassembly and he
has shared more details in the Raspberry Pi community forum:
https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=235256

LIRC ticket #359 tracks the upstreaming of this issue:
https://sourceforge.net/p/lirc/tickets/359/

Co-authored-by: neuralassembly <neuralassembly@gmail.com>
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-17 14:50:02 +01:00
Khem Raj
39cf54c3cb linux-raspberrypi_5.4.bb: Move to 5.4.45
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-06-13 14:10:23 +01:00
Pierre-Jean Texier
e589e0f3fd linux-raspberrypi: bump to Linux version 4.19.126
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-06-05 13:13:07 +01:00
Pierre-Jean Texier
e4ed884688 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-06-05 13:13:07 +01:00
Leon Anavi
dc8638c979 rpi-base.inc: Add infrared dtbo
Add device tree binary overlays gpio-ir-tx and gpio-ir-tx to
support peripherals for sending and receiving infrared signals.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-06-04 18:13:08 +01:00
Brandon Verkamp
4982da8d48 docs: Remove reference to xz-compressed sdimg 2020-05-22 15:42:12 +01:00
Brandon Verkamp
a50651ef74 docs: Correct Quick Start instructions to show the new .wic.bz2 extension
Corrects README.md to indicate that the new generated image extension is
.wic.bz2 rather than sdimg as previously stated.

Signed-off-by: Brandon Verkamp <jadelclemens@gmail.com>
2020-05-22 15:42:12 +01:00
Khem Raj
f9b9181521 linux-raspberrypi: Update to latest on 5.4 release
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-05-20 12:10:11 +01:00
Khem Raj
6f85d3f665 linux-raspberrypi_5.4.bb: Update to 5.4.35
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-05-09 12:17:54 +01:00
Pierre-Jean Texier
aba412e034 linux-raspberrypi: bump to Linux version 4.19.120
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-05-09 12:16:52 +01:00
Pierre-Jean Texier
3cda39cda2 raspberrypi-firmware: update to current HEAD
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
2020-05-09 12:16:52 +01:00
Leon Anavi
45ee64377b rpi-base.inc: Include modules if I2C is enaled
Add kernel modules i2c-dev and i2c-bcm2708 to variable
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS if ENABLE_I2C is set to 1.
This affects images based on packagegroup-core-boot, including
the core-image-minimal image.

For other images (based on packagegroup-base) kernel modules
are provide through variable MACHINE_EXTRA_RRECOMMENDS.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
2020-04-28 15:13:45 +01:00
Khem Raj
87a44aa75b linux-raspberrypi_5.4.bb: Update to latest
brings in some pinmux and dtoverlays

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-28 10:36:19 +01:00