# Architecture
BR2_arm=y
BR2_arm926t=y

BR2_ARM_TYPE="ARM926T"
BR2_ARM_EABI=y

#
# GCC Options
# We need to force GCC 4.3.x because it is the last version
# that will compile a kernel with ethernet working correctly
BR2_GCC_VERSION_4_3_X=y

# Lock down headers to avoid breaking with new defaults
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="2.6.34.7"
BR2_DEFAULT_KERNEL_HEADERS="2.6.34.7"

#
# Host utilities
#
BR2_PACKAGE_HOST_LPC3250LOADER=y


# Bootloaders
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="fdi3250"
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_VERSION="master"
BR2_TARGET_UBOOT_CUSTOM_GIT_REPO_URL="git://git.lpclinux.com/uboot-2009.03-lpc32xx"
BR2_TARGET_UBOOT_CUSTOM_GIT_VERSION="master"
BR2_TARGET_UBOOT_FORMAT_BIN=y
BR2_TARGET_LPC32XXCDL=y
BR2_TARGET_LPC32XXCDL_BOARDNAME="fdi3250"


#
# Kernel
#
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_GIT_REPO_URL="git://git.lpclinux.com/linux-2.6.34-lpc32xx"
BR2_LINUX_KERNEL_CUSTOM_GIT_VERSION="master"
BR2_LINUX_KERNEL_VERSION="master"
BR2_LINUX_KERNEL_PATCH=""
BR2_LINUX_KERNEL_USE_DEFCONFIG=y
BR2_LINUX_KERNEL_DEFCONFIG="fdi3250"
BR2_LINUX_KERNEL_UIMAGE=y

