You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
FS#867 - mvebu: Should be split different arches, current (Armada 370, XP and other "legacy") and 385+ #5801
The older SoCs such as Armada XP and 370 only supports vfpv3-d16 while 385 and newer does complete vfpv3 and neon. This hampers performance of newer SoCs quite a bit and makes little sense not to split these since we already build vfpv3+neon binaries. While neon-vfpv4 exists, neon-vfpv3 doesn't and for some reason it's just called neon in GCC (which translates to arm_cortex-a9_neon in LEDE for this SoC family). Source: https://lists.linaro.org/pipermail/linaro-toolchain/2016-July/005826.html
Limiting to lowest common [[https://forum.lede-project.org/t/new-package-arch-for-mvebu/4235|denominator]] to reduce target count appears to be a significant penalty for the majority of mvebu targets.
brand model target subtarget packagearchitecture cpu FPU/SIMD
Globalscale Mirabox mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell 88F6707 VFPv3-D16/?
Marvell RD-A370-A1 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 370 VFPv3-D16/?
SolidRun ClearFog Pro mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 388 88F6828 VFPv3-D32/NEON
SolidRun ClearFog Base mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 388 88F6828 VFPv3-D32/NEON
Linksys WRT1200AC mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT1900AC v2 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT1900ACS mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT3200ACM mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Turris CZ.NIC Omnia mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT32X mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Marvell Armada A385 DB AP mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Marvell Armada A370 DB mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada A370 VFPv3-D16/?
Linksys WRT1900AC v1 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada XP MV78230 VFPv3-D16/?
PlatHome OpenBlocks AX3-4 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada XP MV78260 VFPv3-D16/?
I just downloaded a copy of the supported devices CSV. There are currently only 5 vfp3-d16 devices, among which RD-A370-A1 and Armada A370 DB are reference boards and WRT1900AC has got a v2 that according to OpenWRT DB was released in the same year (2018). So I reckon it's reasonable to even drop vfp3-d16 if the number of officially built architectures is a concern (sorry PlatHome and Globalscale guys).
Two Dual-Issue ARMv7-Compliant CPU
• Up to 1.6 GHz
• Superscalar RISC CPU with Harvard architecture
issues two instructions per cycle
• Single/double precision Floating Point Unit
(VFP3-16) IEEE 754 compliant per core1
Meanwhile, the Armada XP family datasheet states:
1 Product Overview
The ARMADA® XP Family of Highly Integrated Multi-Core ARMv7 Based SoC Processors are a
complete system-on-chip solution based on the Marvell ® Core Processor embedded CPU
technology. By leveraging the successful Marvell system controllers and extensive expertise in ARM
instruction-set-compliant CPUs, the ARMADA ® XP SoCs present a new level of performance,
integration, and efficiency to raise the performance/power and performance/cost bar.
These devices integrate:
Dual/quad Superscalar, ARMv7-compliant Marvell ® Core Processors with the latest Marvell
micro-architecture enhancements, with a double precision IEEE-754-compliant Floating Point
Unit (FPU) per core.
Shared Level-2 (L2) cache in a size of 1 MB or 2 MB.
@trinitronx This was on the table multiple times. Since platform is dated I would leave out those vfp3-d16 alone and move 375 & 38x to 'NEON' as we already build 'NEON' packages via 'imx' platform. This got as far as PR/3079 go then died there ;(
Activity
openwrt-bot commentedon Jun 25, 2017
anomeome:
Limiting to lowest common [[https://forum.lede-project.org/t/new-package-arch-for-mvebu/4235|denominator]] to reduce target count appears to be a significant penalty for the majority of mvebu targets.
openwrt-bot commentedon May 21, 2020
FrederickZh:
brand model target subtarget packagearchitecture cpu FPU/SIMDGlobalscale Mirabox mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell 88F6707 VFPv3-D16/?
Marvell RD-A370-A1 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 370 VFPv3-D16/?
SolidRun ClearFog Pro mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 388 88F6828 VFPv3-D32/NEON
SolidRun ClearFog Base mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 388 88F6828 VFPv3-D32/NEON
Linksys WRT1200AC mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT1900AC v2 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT1900ACS mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT3200ACM mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Turris CZ.NIC Omnia mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Linksys WRT32X mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Marvell Armada A385 DB AP mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada 385 88F6820 VFPv3-D32/NEON
Marvell Armada A370 DB mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada A370 VFPv3-D16/?
Linksys WRT1900AC v1 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada XP MV78230 VFPv3-D16/?
PlatHome OpenBlocks AX3-4 mvebu cortexa9 arm_cortex-a9_vfpv3 Marvell Armada XP MV78260 VFPv3-D16/?
I just downloaded a copy of the supported devices CSV. There are currently only 5 vfp3-d16 devices, among which RD-A370-A1 and Armada A370 DB are reference boards and WRT1900AC has got a v2 that according to OpenWRT DB was released in the same year (2018). So I reckon it's reasonable to even drop vfp3-d16 if the number of officially built architectures is a concern (sorry PlatHome and Globalscale guys).
trinitronx commentedon Oct 27, 2025
The WRT1900AC v1 (mamba) has a Marvell Armada XP MV78230. The Marvell Armada XP family datasheet says it has a VFPv3-D32 Vector Floating Point Unit. So that means no NEON, and also supports 32x 64-bit FPU registers (
vfpd32CPU feature).🤔 However, the
MV78230device-specific datasheet here states:Meanwhile, the Armada XP family datasheet states:
Yet, if we trust
/proc/cpuinfo, then it hasvfpd32CPU feature... 🤔Expand for
/proc/cpuinfodetailsFootnotes
... So perhaps it does only support
VFPv3-d16after all? Or maybe it does havevfpd32as per CPU features? 🤷 Which can we trust? ↩nicefile commentedon Nov 13, 2025
@trinitronx This was on the table multiple times. Since platform is dated I would leave out those vfp3-d16 alone and move 375 & 38x to 'NEON' as we already build 'NEON' packages via 'imx' platform. This got as far as PR/3079 go then died there ;(
Neustradamus commentedon Jan 2, 2026
Linked to:
Marvell 88F6707 (Armada 370) linked PRs:
Marvell Armada 88F6707 (Armada 370) linked commits:
Two D-Link NAS: