# Architecture
BR2_mips64el=y
BR2_mips_64r6=y
BR2_MIPS_NABI64=y

# System
BR2_SYSTEM_DHCP="eth0"

# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
# BR2_TARGET_ROOTFS_TAR is not set

# Linux headers same as kernel, a 4.7 series
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_7=y

# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.7"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips64r6el-malta/linux-4.7.config"
BR2_LINUX_KERNEL_VMLINUX=y

# Compiler
# linux >= 4.4 uses -mcompact-branches which is only available since gcc-6
BR2_GCC_VERSION_6_X=y

# Serial port config
BR2_TARGET_GENERIC_GETTY=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
