The rpi genimage configurations are all identical, except for the boot
partition files, which include:
- Device tree files (*.dtb)
- rpi-firmware files (rpi-firmware/*)
- Kernel image (Image/zImage)
All of these are quite simple to figure out programmatically based on the
content of BINARIES_DIR, so extend post-image.sh to fall back to generating
a genimage configuration based on genimage.cfg.in if a board specific one
does not exist.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Try to be less smart (focused on the one target/one use-case),
instead reduce the rpi-firmware package to a selectable list
of (verbatim) installed firmware files.
- change rpi-firmware config handling from rpi-variant/rpi-flavour
choices to bootcode.bin, pi-default/-extended/-cut-down and
pi4-/default/-extended/-cut-down selection
- add BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE option to select installable
config.txt file
- remove config.txt modify code/handling from raspberry post-image.sh
script
- add different customized config.txt files to the raspberry board
section
- change dtoverlay krnbt from 'dtoverlay=miniuart-bt,krnbt=on' to extra line
with explanation comment
- change raspberry defconfigs to select appropiate rpi-firmware
and config.txt files
- change genimage-raspberrypi4.cfg/genimage-raspberrypi4-64.cfg to
use start4.elf and fixup4.dat
- update board/raspberrypi/readme.txt (add optional files fixup4.dat,
start4.elf and zImage)
With this changes a better support for custom use-cases should
be possible, specially multi-target SD cards as suggested by
Stefan Agner ([1]).
[1] http://lists.busybox.net/pipermail/buildroot/2021-February/303318.html
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr: fix case of no config.txt provided]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
The default setting with miniuart-bt requires hciattach which is a
deprecated utility in BlueZ. Setting the krnbt parameter switches to
the modern method of using serdev in the kernel removing the need for
any userspace configuration to enable the Bluetooth controller.
This is documented as applying to all Raspberry Pi variants so just
enable it globally.
Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The pi3-minuart-bt Device Tree overlay has been renamed to
miniuart-bt, as it is useful/usable for other platforms than the
RPi3. So we use this DT overlay and rename the
--add-pi3-miniuart-bt-overlay option to --add-miniuart-bt-overlay
accordingly.
Signed-off-by: Arthur Courtel <arthur.courtel@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Use the pi3-miniuart-bt device tree overlay (as the 32bit raspberrypi3
defconfig) instead of the enable_uart option.
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
genimage makes a full copy of the given rootpath to ${GENIMAGE_TMP}/root
so passing TARGET_DIR would be a waste of time and disk space. We don't
rely on genimage to build the rootfs image, just to insert a pre-built
one in the disk image.
Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
As per latest Raspberry Pi firmware documentation, the option
'arm_control' has been deprecated in favor of 'arm_64bit'.
Fixes https://bugs.busybox.net/show_bug.cgi?id=11111.
Signed-off-by: Jason Tang <tang@jtang.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The gpu_mem option is not using the proper option argument which causes sed to
fail.
+ case "${arg}" in
+ gpu_mem=ome/gportay/output-rpi3-qtwe/images
+ sed -e '/^ome/gportay/output-rpi3-qtwe/images=/s,=.*,=ome/gportay/output-rpi3-qtwe/images,' -i /home/gportay/output-rpi3-qtwe/images/rpi-firmware/config.txt
sed: -e expression #1, char 8: extra characters after command
+ case "${arg}" in
+ gpu_mem=ome/gportay/output-rpi3-qtwe/images
+ sed -e '/^ome/gportay/output-rpi3-qtwe/images=/s,=.*,=ome/gportay/output-rpi3-qtwe/images,' -i /home/gportay/output-rpi3-qtwe/images/rpi-firmware/config.txt
sed: -e expression #1, char 8: extra characters after command
The issue comes from the use of $1 instead of $arg to extract the gpu_mem
value. $1 is the $(BINARIES_DIR) which leads to a sed expression error.
Also, it adds the error flag to the shell script to prevent from such situation
and terminate the build in error.
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The amount of GPU memory can be set using the new option --gpu_mem_XXX
(where XXX is the total amount of memory available on the board).
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This configuration builds a 64bit image for RaspberryPi 3.
The size of the ext4 filesystem has to be extended to fit the large amount
(~60MB) of kernel modules enabled in the defconfig.
[Peter: drop gcc version selection / glibc, explain ext4 size requirement]
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Tested-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We no longer use the marked kernel.
Cc: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- enable BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS in raspberrypi3_defconfig
- add copy of rpi-firmware/overlays directory to boot partition in genimage-raspberrypi3.cfg
- enhance post-image.sh script to add 'dtoverlay=pi3-miniuart-bt' on request
- add BR2_ROOTFS_POST_SCRIPT_ARGS="--add-pi3-miniuart-bt-overlay" in raspberrypi3_defconfig
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Update the raspberrypi and raspberrypi2 configs to use genimage directly
to build the image.
Update the documentation to reflect this, and drop the volatile rootfs
option since it doesn't make much sense and it's not easily integrated
with the genimage configurations.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>