From 460da6d4b4b189a8a0fc512f6ccd2d642e610c66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20PORTAY?= Date: Fri, 25 Apr 2025 01:46:45 +0200 Subject: [PATCH] configs/raspberrypi2_64: new defconfig MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This configuration builds an image for the Raspberry Pi 2 Rev 1.2 (64-bit). Note: Raspberry Pi 2 Model B Rev 1.2[1] switched from BCM2836[2] to BCM2837[3] that is 64-bit. BCM2836[2] The Broadcom chip used in the Raspberry Pi 2 Model B. The underlying architecture in BCM2836 is identical to BCM2835. The only significant difference is the removal of the ARM1176JZF-S processor and replacement with a quad-core Cortex-A7 cluster. BCM2837[3] This is the Broadcom chip used in the Raspberry Pi 3 Model B, later models of the Raspberry Pi 2 Model B, and the Raspberry Pi Compute Module 3. The underlying architecture of the BCM2837 is identical to the BCM2836. The only significant difference is the replacement of the ARMv7 quad core cluster with a quad-core ARM Cortex A53 (ARMv8) cluster. The ARM cores run at 1.2GHz, making the device about 50% faster than the Raspberry Pi 2. The VideoCore IV runs at 400MHz. [1]: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#flagship-series [2]: https://www.raspberrypi.com/documentation/computers/processors.html#bcm2836 [3]: https://www.raspberrypi.com/documentation/computers/processors.html#bcm2837 Signed-off-by: Gaƫl PORTAY Signed-off-by: Julien Olivain --- board/raspberrypi/config_2_64bit.txt | 26 +++++++++++++++++++++ board/raspberrypi/readme.txt | 4 ++++ board/raspberrypi2-64 | 1 + configs/raspberrypi2_64_defconfig | 34 ++++++++++++++++++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 board/raspberrypi/config_2_64bit.txt create mode 120000 board/raspberrypi2-64 create mode 100644 configs/raspberrypi2_64_defconfig diff --git a/board/raspberrypi/config_2_64bit.txt b/board/raspberrypi/config_2_64bit.txt new file mode 100644 index 0000000000..5b531b1cae --- /dev/null +++ b/board/raspberrypi/config_2_64bit.txt @@ -0,0 +1,26 @@ +# Please note that this is only a sample, we recommend you to change it to fit +# your needs. +# You should override this file using BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE. +# See http://buildroot.org/manual.html#rootfs-custom +# and http://elinux.org/RPiconfig for a description of config.txt syntax + +start_file=start.elf +fixup_file=fixup.dat + +kernel=Image + +# To use an external initramfs file +#initramfs rootfs.cpio.gz + +# Disable overscan assuming the display supports displaying the full resolution +# If the text shown on the screen disappears off the edge, comment this out +disable_overscan=1 + +# How much memory in MB to assign to the GPU on Pi models having +# 256, 512 or 1024 MB total memory +gpu_mem_256=100 +gpu_mem_512=100 +gpu_mem_1024=100 + +# enable 64bits support +arm_64bit=1 diff --git a/board/raspberrypi/readme.txt b/board/raspberrypi/readme.txt index 47814736bd..7dda631387 100644 --- a/board/raspberrypi/readme.txt +++ b/board/raspberrypi/readme.txt @@ -54,6 +54,10 @@ For model 2 B: $ make raspberrypi2_defconfig +or for model 2 B (Rev 1.2, model B3 without wireless LAN and Bluetooth, 64 bit): + + $ make raspberrypi2_64_defconfig + For model 3 B, B+, CM3 and CM3+: $ make raspberrypi3_defconfig diff --git a/board/raspberrypi2-64 b/board/raspberrypi2-64 new file mode 120000 index 0000000000..fcdafc81ed --- /dev/null +++ b/board/raspberrypi2-64 @@ -0,0 +1 @@ +raspberrypi \ No newline at end of file diff --git a/configs/raspberrypi2_64_defconfig b/configs/raspberrypi2_64_defconfig new file mode 100644 index 0000000000..211e8470b4 --- /dev/null +++ b/configs/raspberrypi2_64_defconfig @@ -0,0 +1,34 @@ +BR2_aarch64=y +BR2_ARM_FPU_VFPV4=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y +BR2_GLOBAL_PATCH_DIR="board/raspberrypi/patches" +BR2_DOWNLOAD_FORCE_CHECK_HASHES=y +BR2_SYSTEM_DHCP="eth0" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypi2-64/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypi2-64/post-image.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,cd231d4775b14f228606c09f219b48308f6ab3aa)/linux-cd231d4775b14f228606c09f219b48308f6ab3aa.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="bcm2711" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2710-rpi-2-b" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y +BR2_PACKAGE_XZ=y +BR2_PACKAGE_RPI_FIRMWARE=y +BR2_PACKAGE_RPI_FIRMWARE_BOOTCODE_BIN=y +BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI=y +BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="board/raspberrypi2-64/config_2_64bit.txt" +# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set +BR2_PACKAGE_KMOD=y +BR2_PACKAGE_KMOD_TOOLS=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +# BR2_TARGET_ROOTFS_TAR is not set +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_KMOD_XZ=y +BR2_PACKAGE_HOST_MTOOLS=y