[Buildroot] [PATCH/next v1 7/7] board/raspberrypi: add Raspberry Pi Zero 2 W
Yann E. MORIN
yann.morin.1998 at free.fr
Fri Nov 12 22:19:03 UTC 2021
Peter, All,
On 2021-11-11 21:04 +0100, Peter Seiderer spake thusly:
> From: Julien Grossholtz <julien.grossholtz at openest.io>
>
> The Raspberry-Pi Zero 2 W is an affordable single board computer. It is
> a more powerful drop-in replacement for the Raspberry Pi Zero W.
>
> The board incorporates an Raspberry-Pi RP3A0 system-in-package (SiP) with
> a Broadcom BCM2710A1 and 512MB LPDDR2 SDRAM. The CPU is a quad-core 1Ghz
> 64-bit Arm Cortex-A53. As for other Raspberry-Pis it also provides
> 2.4GHz 802.11 b/g/n Wifi, Bluetooth 4.2 and BLE.
>
> The BCM2710 cpu is similar to the Raspberry-Pi 3, it uses the same
> kernel configuration as the Raspberry-Pi 2 and 3.
>
> Signed-off-by: Julien Grossholtz <julien.grossholtz at openest.io>
> [Based on https://patchwork.ozlabs.org/project/buildroot/patch/20211030213600.3445223-3-julien.grossholtz@openest.io/
> - reformat genimage-raspberrypizero2w.cfg according to the beautify patch-set
> - update kernel version to 9878a11 (5.10.78)
> - use new bcm2710-rpi-zero-2-w dtb
> - update commit log about kernel config (RPi2/3)
> - add DEVELOPERS entries for Julien
> ]
> Signed-off-by: Peter Seiderer <ps.report at gmx.net>
Applied to next, thanks.
Regards,
Yann E. MORIN.
> ---
> DEVELOPERS | 2 ++
> board/raspberrypi/config_zero2w.txt | 29 +++++++++++++++
> .../genimage-raspberrypizero2w.cfg | 32 +++++++++++++++++
> board/raspberrypi/readme.txt | 5 +++
> board/raspberrypizero2w | 1 +
> configs/raspberrypizero2w_defconfig | 36 +++++++++++++++++++
> 6 files changed, 105 insertions(+)
> create mode 100644 board/raspberrypi/config_zero2w.txt
> create mode 100644 board/raspberrypi/genimage-raspberrypizero2w.cfg
> create mode 120000 board/raspberrypizero2w
> create mode 100644 configs/raspberrypizero2w_defconfig
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 70262eac8c..6f812eb564 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1512,7 +1512,9 @@ N: Julien Corjon <corjon.j at ecagroup.com>
> F: package/qt5/
>
> N: Julien Grossholtz <julien.grossholtz at openest.io>
> +F: board/raspberrypi/
> F: board/technologic/ts7680/
> +F: configs/raspberrypizero2w_defconfig
> F: configs/ts7680_defconfig
> F: package/paho-mqtt-c
>
> diff --git a/board/raspberrypi/config_zero2w.txt b/board/raspberrypi/config_zero2w.txt
> new file mode 100644
> index 0000000000..9e6b7f5ccf
> --- /dev/null
> +++ b/board/raspberrypi/config_zero2w.txt
> @@ -0,0 +1,29 @@
> +# 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=zImage
> +
> +# 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
> +
> +# fixes rpi (3B, 3B+, 3A+, 4B ,zero W and zero 2) ttyAMA0 serial console
> +dtoverlay=miniuart-bt
> +
> +# enable autoprobing of Bluetooth driver without need of hciattach/btattach
> +dtoverlay=krnbt=on
> diff --git a/board/raspberrypi/genimage-raspberrypizero2w.cfg b/board/raspberrypi/genimage-raspberrypizero2w.cfg
> new file mode 100644
> index 0000000000..b510fea563
> --- /dev/null
> +++ b/board/raspberrypi/genimage-raspberrypizero2w.cfg
> @@ -0,0 +1,32 @@
> +image boot.vfat {
> + vfat {
> + files = {
> + "bcm2710-rpi-zero-2-w.dtb",
> + "rpi-firmware/bootcode.bin",
> + "rpi-firmware/cmdline.txt",
> + "rpi-firmware/config.txt",
> + "rpi-firmware/fixup.dat",
> + "rpi-firmware/start.elf",
> + "rpi-firmware/overlays",
> + "zImage"
> + }
> + }
> +
> + size = 32M
> +}
> +
> +image sdcard.img {
> + hdimage {
> + }
> +
> + partition boot {
> + partition-type = 0xC
> + bootable = "true"
> + image = "boot.vfat"
> + }
> +
> + partition rootfs {
> + partition-type = 0x83
> + image = "rootfs.ext4"
> + }
> +}
> diff --git a/board/raspberrypi/readme.txt b/board/raspberrypi/readme.txt
> index d20096b5e6..c81fd801ae 100644
> --- a/board/raspberrypi/readme.txt
> +++ b/board/raspberrypi/readme.txt
> @@ -28,6 +28,10 @@ For model Zero (model A+ in smaller form factor):
>
> $ make raspberrypi0_defconfig
>
> +For model Zero 2 W (model B3 in smaller form factor):
> +
> + $ make raspberrypizero2w_defconfig
> +
> For model 2 B:
>
> $ make raspberrypi2_defconfig
> @@ -79,6 +83,7 @@ After building, you should obtain this tree:
> +-- bcm2708-rpi-cm.dtb [1]
> +-- bcm2708-rpi-zero.dtb [1]
> +-- bcm2708-rpi-zero-w.dtb [1]
> + +-- bcm2710-rpi-zero-2-w.dtb [1]
> +-- bcm2709-rpi-2-b.dtb [1]
> +-- bcm2710-rpi-3-b.dtb [1]
> +-- bcm2710-rpi-3-b-plus.dtb [1]
> diff --git a/board/raspberrypizero2w b/board/raspberrypizero2w
> new file mode 120000
> index 0000000000..fcdafc81ed
> --- /dev/null
> +++ b/board/raspberrypizero2w
> @@ -0,0 +1 @@
> +raspberrypi
> \ No newline at end of file
> diff --git a/configs/raspberrypizero2w_defconfig b/configs/raspberrypizero2w_defconfig
> new file mode 100644
> index 0000000000..ddd6b97b06
> --- /dev/null
> +++ b/configs/raspberrypizero2w_defconfig
> @@ -0,0 +1,36 @@
> +BR2_arm=y
> +BR2_cortex_a53=y
> +BR2_ARM_FPU_NEON_VFPV4=y
> +
> +# Linux headers same as kernel, 5.10 series
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
> +
> +BR2_TOOLCHAIN_BUILDROOT_CXX=y
> +
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,9878a118cbdb7779fd15caa45915d22bff381ba3)/linux-9878a118cbdb7779fd15caa45915d22bff381ba3.tar.gz"
> +BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
> +
> +# Build the DTB from the kernel sources
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-zero-2-w"
> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=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/raspberrypizero2w/config_zero2w.txt"
> +
> +# MicroSD images generation tools
> +BR2_PACKAGE_HOST_DOSFSTOOLS=y
> +BR2_PACKAGE_HOST_GENIMAGE=y
> +BR2_PACKAGE_HOST_MTOOLS=y
> +
> +# Filesystem / image
> +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_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypizero2w/post-build.sh"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypizero2w/post-image.sh"
> --
> 2.33.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list