[Buildroot] [PATCH] configs/mvebu: new defconfig for Turris MOX
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Sat Oct 31 23:01:56 UTC 2020
Hello Vladimir,
Thanks for this contribution!
On Thu, 29 Oct 2020 23:56:29 +0200
Vladimir Oltean <olteanv at gmail.com> wrote:
> DEVELOPERS | 4 +
> board/mvebu/cznic-turris-mox/boot.cmd | 28 +
> board/mvebu/cznic-turris-mox/genimage.cfg | 10 +
> board/mvebu/cznic-turris-mox/mox.config | 1554 ++++++++++++++++++++
> board/mvebu/cznic-turris-mox/post-build.sh | 3 +
> configs/cznic_turris_mox_defconfig | 46 +
We normally like to have a readme.txt file in
board/mvebu/cznic-turris-mox/ to explain how to use the defconfig.
Especially how to use the build results on the board. See other
readme.txt files in board/.
> diff --git a/board/mvebu/cznic-turris-mox/mox.config b/board/mvebu/cznic-turris-mox/mox.config
> new file mode 100644
> index 000000000000..07f8b801f3e0
> --- /dev/null
> +++ b/board/mvebu/cznic-turris-mox/mox.config
Instead of mox.config, could you call is linux.config or kernel.config ?
Also, this configuration files looks really huge, with lots of useless
things. There's really two options there:
- Use the full-blown arm64 defconfig from the upstream kernel,
optionally with a small fragment file to add a few more options that
are needed for your platform.
- Use a dedicated configuration like you're doing, but in this case,
it should be reasonably tweaked to the platform, which clearly isn't
the case here.
> @@ -0,0 +1,1554 @@
> +CONFIG_ACPI_CPPC_CPUFREQ=y
> +CONFIG_ALTERA_FREEZE_BRIDGE=y
> +CONFIG_ARMADA_37XX_RWTM_MBOX=y
> +CONFIG_ARMADA_37XX_WATCHDOG=y
> +CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM=y
Allwinner stuff.
> +CONFIG_ARM_IMX_CPUFREQ_DT=y
i.MX stuff.
> +CONFIG_ARM_RASPBERRYPI_CPUFREQ=y
RPi stuff.
> +CONFIG_DRM=y
DRM for a platform that has no display.
etc.
> diff --git a/board/mvebu/cznic-turris-mox/post-build.sh b/board/mvebu/cznic-turris-mox/post-build.sh
> new file mode 100755
> index 000000000000..808c94e94b57
> --- /dev/null
> +++ b/board/mvebu/cznic-turris-mox/post-build.sh
> @@ -0,0 +1,3 @@
> +#!/bin/sh
> +cp $BINARIES_DIR/boot.scr $TARGET_DIR/boot/boot.scr
> +ln -sf boot/boot.scr $TARGET_DIR/boot.scr
> diff --git a/configs/cznic_turris_mox_defconfig b/configs/cznic_turris_mox_defconfig
> new file mode 100644
> index 000000000000..bd382db1769a
> --- /dev/null
> +++ b/configs/cznic_turris_mox_defconfig
> @@ -0,0 +1,46 @@
> +# Architecture
> +BR2_aarch64=y
> +# Armada 3720
> +BR2_cortex_a53=y
> +
> +# Filesystem
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_SIZE="1G"
> +BR2_TARGET_ROOTFS_EXT2_4=y
> +
> +# toolchain
> +BR2_TOOLCHAIN=y
> +BR2_TOOLCHAIN_EXTERNAL=y
> +BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64=y
> +BR2_TOOLCHAIN_USES_GLIBC=y
> +BR2_TOOLCHAIN_EXTERNAL_GLIBC=y
Please keep the default toolchain.
> +
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_LATEST_VERSION=y
Use a fixed kernel version, and not "the latest".
> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
> +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/mvebu/cznic-turris-mox/mox.config"
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="marvell/armada-3720-turris-mox"
> +BR2_PACKAGE_HOST_UBOOT_TOOLS=y
> +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/mvebu/cznic-turris-mox/boot.cmd"
> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/mvebu/cznic-turris-mox/post-build.sh"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
> +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/mvebu/cznic-turris-mox/genimage.cfg"
> +
> +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
This should be with the rest of the U-Boot boot script options.
> +# Serial port config
> +BR2_TARGET_GENERIC_GETTY=y
> +BR2_TARGET_GENERIC_GETTY_PORT="ttyMV0"
> +
> +# required tools to create the microSD image
> +BR2_PACKAGE_HOST_DOSFSTOOLS=y
> +BR2_PACKAGE_HOST_GENIMAGE=y
> +BR2_PACKAGE_HOST_MTOOLS=y
> +
> +BR2_TARGET_GENERIC_HOSTNAME="mox"
> +
> +BR2_USE_MMU=y
Not needed.
> +BR2_USE_WCHAR=y
Ditto.
Could you rework your patch and send an updated version ?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the buildroot
mailing list