[Buildroot] [PATCH v3 1/1] board: add support for RIoTboard

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Thu Mar 5 20:23:33 UTC 2015


Dear Nikolay Dimitrov,

On Thu,  5 Mar 2015 18:57:21 +0200, Nikolay Dimitrov wrote:
> This is a small development board, based on Freescale IMX6 Solo SoC
> (single core ARM Cortex-A9). The board has excellent support in mainline
> U-Boot and Linux.
> 
> Signed-off-by: Nikolay Dimitrov <picmaster at mail.bg>

This looks much simpler and nicer! Some remaining comments I forgot to
make on earlier versions.

> +1. Compiling buildroot
> +----------------------

An empty line between the title and the contents of the section would
be nice.

> +make distclean

We generally don't indicate to use 'make distclean' in the other
instructions related to board specific details.

> +make riotboard_defconfig
> +make
> +
> +2. Installing buildroot
> +-----------------------

Same: an empty new line here.

> +Prepare an SD-card and plug it into your card reader. Write the bootloader to
> +your SD-card:
> +
> +sudo dd if=output/images/u-boot.imx of=/dev/sdX bs=1k seek=1
> +
> +Create 1 partition on the SD-card using your favourite tool. The partition
> +should be big enough to hold your rootfs, for example 128MiB. Here's how an
> +example of such partition layout:
> +
> +   Device Boot      Start         End      Blocks   Id  System
> +/dev/sdX1            2048      264191      131072   83  Linux
> +
> +Format the SD-card partition with your favourite filesystem:
> +
> +sudo mkfs.ext2 /dev/sdX1
> +
> +Deploy your rootfs to the SD-card:
> +
> +sudo mkdir /mnt/sdcard/
> +sudo mount /dev/sdX1 /mnt/sdcard/
> +sudo tar xf rootfs.tar -C /mnt/sdcard/
> +sudo umount /dev/sdX1
> +
> +3. Running buildroot
> +--------------------

Same.

> diff --git a/configs/riotboard_defconfig b/configs/riotboard_defconfig
> new file mode 100644
> index 0000000..d5b50e9
> --- /dev/null
> +++ b/configs/riotboard_defconfig
> @@ -0,0 +1,32 @@
> +# architecture
> +BR2_arm=y
> +BR2_cortex_a9=y

I believe you should try to enable BR2_ARM_EABIHF=y. It should really
be the default for ARMv7 platforms nowadays, unless you have old
non-EABIhf pre-built binaries.

> +# system
> +BR2_TARGET_GENERIC_GETTY=y
> +BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
> +
> +# toolchain
> +BR2_TOOLCHAIN_BUILDROOT_LARGEFILE=y

No, please don't include largefile support by default. We try to keep
the defconfigs minimal.

> +# rootfs
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_2r1=y
> +BR2_ROOTFS_OVERLAY="board/embest/riotboard/rootfs_overlay"
> +
> +# bootloader
> +BR2_TARGET_UBOOT=y
> +BR2_TARGET_UBOOT_VERSION="2015.01"
> +BR2_TARGET_UBOOT_BOARDNAME="riotboard"
> +BR2_TARGET_UBOOT_FORMAT_IMX=y
> +
> +# kernel headers
> +BR2_KERNEL_HEADERS_3_18=y

For the kernel headers, please use:

BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="3.18"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y

That's because the BR2_KERNEL_HEADERS_3_18 option may become
deprecated/removed in the future.

> +# kernel
> +BR2_LINUX_KERNEL=y

Please specify:

BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.18"

Even if the current default version is fine for you, this default
version will change over time, and we want to be sure to rebuild the
same kernel version.

> +BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
> +BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-riotboard"
> +BR2_LINUX_KERNEL_INSTALL_TARGET=y

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com



More information about the buildroot mailing list