mkimage-profiles/features.in/arm-rpi4/image-scripts.d/98-bootstrap-boot-by-firmware
Anton Midyukov c87d3a3b2a arm-rpi4: Enable fkms for RPi3
Fix framebuffer in kernel rpi-un 5.10.20-alt1.
2021-03-15 23:05:49 +07:00

51 lines
1.0 KiB
Bash
Executable File

#!/bin/sh -eu
kflavour=
kflavour="${GLOBAL_KFLAVOURS%% *}"
mkdir -p /boot/efi
uboots="rpi_3 rpi_3_32b rpi_4 rpi_4_32b"
for uboot in $uboots; do
[ -d /usr/share/u-boot/$uboot ] &&
cp -f /usr/share/u-boot/$uboot/* /boot/efi/
[ -f /boot/efi/kernel8.img ] &&
mv /boot/efi/{kernel8.img,uboot-$uboot.bin}
[ -f /boot/efi/kernel7.img ] &&
mv /boot/efi/{kernel7.img,uboot-$uboot.bin}
done
rm -f /boot/efi/config.txt
[ "$GLOBAL_ARCH" = aarch64 ] && \
echo "arm_64bit=1" > /boot/efi/config.txt
cat >> /boot/efi/config.txt <<EOF
enable_uart=1
disable_overscan=1
dtparam=audio=on
hdmi_ignore_edid_audio=1
[pi3]
kernel=uboot-rpi_3.bin
dtoverlay=vc4-fkms-v3d
[pi4]
kernel=uboot-rpi_4.bin
dtoverlay=vc4-fkms-v3d
[all]
EOF
[ "$GLOBAL_ARCH" = armh ] && \
sed -i 's/.bin/_32b.bin/g' /boot/efi/config.txt
# framebuffer not working with dtoverlay=vc4-fkms-v3d on RPi3 aarch64
[ "$GLOBAL_ARCH" = armh ] && \
sed -i '/#dtoverlay=vc4-fkms-v3d/s/#//' /boot/efi/config.txt
# Enable bootloading without u-boot
sh -x rpi4-boot-nouboot $kflavour
exit 0