summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuka Perkov <luka@openwrt.org>2014-02-27 22:41:39 +0000
committerLuka Perkov <luka@openwrt.org>2014-02-27 22:41:39 +0000
commit6752d4cb08b734235bd7978424087514623696b0 (patch)
treec41b5bb1e83d6491e3f2fe8b2a60c269bd645262
parent95c97bf201b863723f6335d70a66b543e40f7398 (diff)
downloadmtk-20170518-6752d4cb08b734235bd7978424087514623696b0.zip
mtk-20170518-6752d4cb08b734235bd7978424087514623696b0.tar.gz
mtk-20170518-6752d4cb08b734235bd7978424087514623696b0.tar.bz2
imx6: enable FPU for hard float
The OpenWrt build system uses MACHINE_FEATURES of fpu to set the HAS_FPU which in turn sets the default of CONFIG_SOFT_FLOAT as well as uClibc configuration. As the IMX6 SoC has both vfpv3 and NEON hardware support we want to add fpu to the feature list. This will default the IMX6 target to use -mfloat-abi=hard which will the be most efficient use of floating point. When switching to hard float, we also need to enable VFP support in the kernel. Signed-off-by: Tim Harvey <tharvey@gateworks.com> SVN-Revision: 39759
-rw-r--r--target/linux/imx6/Makefile2
-rw-r--r--target/linux/imx6/config-3.105
-rw-r--r--target/linux/imx6/config-3.134
3 files changed, 7 insertions, 4 deletions
diff --git a/target/linux/imx6/Makefile b/target/linux/imx6/Makefile
index 9ae1a4b..cee5b45 100644
--- a/target/linux/imx6/Makefile
+++ b/target/linux/imx6/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=arm
BOARD:=imx6
BOARDNAME:=Freescale i.MX 6 Series
-FEATURES:=audio display gpio pcie rtc usb usbgadget squashfs targz ubifs
+FEATURES:=audio display fpu gpio pcie rtc usb usbgadget squashfs targz ubifs
CPU_TYPE:=cortex-a9
CPU_SUBTYPE:=vfpv3
MAINTAINER:=Luka Perkov <luka@openwrt.org>
diff --git a/target/linux/imx6/config-3.10 b/target/linux/imx6/config-3.10
index 3e69d68..3f189b8 100644
--- a/target/linux/imx6/config-3.10
+++ b/target/linux/imx6/config-3.10
@@ -245,7 +245,7 @@ CONFIG_MUTEX_SPIN_ON_OWNER=y
# CONFIG_MXC_IRQ_PRIOR is not set
CONFIG_MXS_DMA=y
CONFIG_NEED_DMA_MAP_STATE=y
-# CONFIG_NET_DMA is not set
+CONFIG_NEON=y
CONFIG_NLS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NO_HZ_COMMON=y
@@ -350,7 +350,8 @@ CONFIG_USB_SUPPORT=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_USE_OF=y
CONFIG_VECTORS_BASE=0xffff0000
-# CONFIG_VFP is not set
+CONFIG_VFP=y
+CONFIG_VFPv3=y
CONFIG_VMSPLIT_2G=y
# CONFIG_VMSPLIT_3G is not set
# CONFIG_XEN is not set
diff --git a/target/linux/imx6/config-3.13 b/target/linux/imx6/config-3.13
index 2506a0a..fc78c55 100644
--- a/target/linux/imx6/config-3.13
+++ b/target/linux/imx6/config-3.13
@@ -246,6 +246,7 @@ CONFIG_MUTEX_SPIN_ON_OWNER=y
# CONFIG_MXC_IRQ_PRIOR is not set
CONFIG_MXS_DMA=y
CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEON=y
CONFIG_NET_FLOW_LIMIT=y
CONFIG_NET_RX_BUSY_POLL=y
CONFIG_NLS=y
@@ -345,7 +346,8 @@ CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
CONFIG_USB_SUPPORT=y
CONFIG_USE_OF=y
CONFIG_VECTORS_BASE=0xffff0000
-# CONFIG_VFP is not set
+CONFIG_VFP=y
+CONFIG_VFPv3=y
CONFIG_VMSPLIT_2G=y
# CONFIG_VMSPLIT_3G is not set
# CONFIG_XEN is not set