![Gaël PORTAY](/assets/img/avatar_default.png)
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>
51 lines
1.3 KiB
Bash
Executable file
51 lines
1.3 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
BOARD_DIR="$(dirname $0)"
|
|
BOARD_NAME="$(basename ${BOARD_DIR})"
|
|
GENIMAGE_CFG="${BOARD_DIR}/genimage-${BOARD_NAME}.cfg"
|
|
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
|
|
|
|
case "${2}" in
|
|
--add-pi3-miniuart-bt-overlay)
|
|
if ! grep -qE '^dtoverlay=' "${BINARIES_DIR}/rpi-firmware/config.txt"; then
|
|
echo "Adding 'dtoverlay=pi3-miniuart-bt' to config.txt (fixes ttyAMA0 serial console)."
|
|
cat << __EOF__ >> "${BINARIES_DIR}/rpi-firmware/config.txt"
|
|
|
|
# fixes rpi3 ttyAMA0 serial console
|
|
dtoverlay=pi3-miniuart-bt
|
|
__EOF__
|
|
fi
|
|
;;
|
|
--aarch64)
|
|
# Run a 64bits kernel (armv8)
|
|
sed -e '/^kernel=/s,=.*,=Image,' -i "${BINARIES_DIR}/rpi-firmware/config.txt"
|
|
if ! grep -qE '^arm_control=0x200' "${BINARIES_DIR}/rpi-firmware/config.txt"; then
|
|
cat << __EOF__ >> "${BINARIES_DIR}/rpi-firmware/config.txt"
|
|
|
|
# enable 64bits support
|
|
arm_control=0x200
|
|
__EOF__
|
|
fi
|
|
|
|
# Enable uart console
|
|
if ! grep -qE '^enable_uart=1' "${BINARIES_DIR}/rpi-firmware/config.txt"; then
|
|
cat << __EOF__ >> "${BINARIES_DIR}/rpi-firmware/config.txt"
|
|
|
|
# enable rpi3 ttyS0 serial console
|
|
enable_uart=1
|
|
__EOF__
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
rm -rf "${GENIMAGE_TMP}"
|
|
|
|
genimage \
|
|
--rootpath "${TARGET_DIR}" \
|
|
--tmppath "${GENIMAGE_TMP}" \
|
|
--inputpath "${BINARIES_DIR}" \
|
|
--outputpath "${BINARIES_DIR}" \
|
|
--config "${GENIMAGE_CFG}"
|
|
|
|
exit $?
|