As I wrote in my last mail, using the same toolchain build/staging dirs with different float ABIs seems broken to me and should be fixed before any further work is done towards adding hard float support to BCM270x.
After thinking a bit more about this, I came to the conclusion that the whole CONFIG_SOFT_FLOAT/CONFIG_HAS_FPU mess should be removed. Currently, having two targets using the same CPU_TYPE/CPU_SUBTYPE combination, but with different HAS_FPU, will break. In my opinion, the float ABI toolchain flags should only depend on the CPU_SUBTYPE, so when similar CPUs should use different float ABIs, a separate CPU_SUBTYPE would need to be created and thus separate build/staging dirs are used. If we really want to keep the CONFIG_SOFT_FLOAT option, at least a "softfp" suffix or similar would need to be added to the toolchain build/staging dir names, as mentioned before. I can write patches for that, but the OpenWrt team must decide which way to go. Regards, Matthias On 07/17/2015 07:28 PM, Álvaro Fernández Rojas wrote: > This enables hard float abi on BCM2708 (RPi1) and also enables neon on > BCM2709 (RPi2). > Attention: minimally tested, but seems to be OK. > The toolchain directory changes on BCM2709 due to switching the CPU subtype > to neon, but BCM2708 needs a distclean. > > Signed-off-by: Álvaro Fernández Rojas <nolt...@gmail.com> > --- > target/linux/brcm2708/Makefile | 4 +--- > target/linux/brcm2708/bcm2708/target.mk | 2 ++ > target/linux/brcm2708/bcm2709/target.mk | 2 +- > 3 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/target/linux/brcm2708/Makefile b/target/linux/brcm2708/Makefile > index 6d8aba0..a3e35e4 100644 > --- a/target/linux/brcm2708/Makefile > +++ b/target/linux/brcm2708/Makefile > @@ -10,10 +10,8 @@ include $(INCLUDE_DIR)/host.mk > ARCH:=arm > BOARD:=brcm2708 > BOARDNAME:=Broadcom BCM2708/BCM2709 > -FEATURES:=ext4 audio usb usbgadget display gpio > +FEATURES:=ext4 audio usb usbgadget display gpio fpu > MAINTAINER:=Florian Fainelli <flor...@openwrt.org> > -CPU_TYPE:=arm1176jzf-s > -CPU_SUBTYPE:=vfp > SUBTARGETS:=bcm2708 bcm2709 > > KERNEL_PATCHVER:=4.1 > diff --git a/target/linux/brcm2708/bcm2708/target.mk > b/target/linux/brcm2708/bcm2708/target.mk > index 10fae2f..a35ec66 100644 > --- a/target/linux/brcm2708/bcm2708/target.mk > +++ b/target/linux/brcm2708/bcm2708/target.mk > @@ -4,6 +4,8 @@ > > SUBTARGET:=bcm2708 > BOARDNAME:=BCM2708 based boards > +CPU_TYPE:=arm1176jzf-s > +CPU_SUBTYPE:=vfp > > define Target/Description > Build firmware image for Broadcom BCM2708 SoC devices. > diff --git a/target/linux/brcm2708/bcm2709/target.mk > b/target/linux/brcm2708/bcm2709/target.mk > index 565c12a..b910b36 100644 > --- a/target/linux/brcm2708/bcm2709/target.mk > +++ b/target/linux/brcm2708/bcm2709/target.mk > @@ -5,7 +5,7 @@ > SUBTARGET:=bcm2709 > BOARDNAME:=BCM2709 based boards > CPU_TYPE:=cortex-a7 > -CPU_SUBTYPE:=vfp > +CPU_SUBTYPE:=neon > > define Target/Description > Build firmware image for Broadcom BCM2709 SoC devices. >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel