# Architecture
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABIHF=y

# Linux headers same as kernel, a 3.4 series
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_4=y

# System configuration
BR2_TARGET_GENERIC_HOSTNAME="a20-olinuxino"
BR2_TARGET_GENERIC_ISSUE="Welcome to OLinuXino!"
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/olimex/a20_olinuxino/post-build.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="board/olimex/a20_olinuxino/boot-mali.cmd $(TARGET_DIR)/boot"

# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux-sunxi,linux-sunxi,sunxi-v3.4.103-r1)/sunxi-v3.4.103-r1.tar.gz"
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="sun7i"
BR2_LINUX_KERNEL_ZIMAGE=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y

# sunxi packages
BR2_PACKAGE_SUNXI_TOOLS=y
BR2_PACKAGE_SUNXI_BOARDS=y
BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE="a20/a20-olinuxino_lime.fex"
BR2_PACKAGE_SUNXI_MALI=y
BR2_PACKAGE_SUNXI_MALI_DBG=y

# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
# BR2_TARGET_ROOTFS_TAR is not set

# Bootloaders
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="A20-OLinuXino-Lime"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2015.01"
BR2_TARGET_UBOOT_FORMAT_BIN=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin"

# Additional tools
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
