Building OpenWrt for 64bit SoCs

Some of the high-end routers have started using 64bit broadcom SoC namely BCM4908. Example Asus GT-AC5300, EA9500v2 and TPLink C5400X
I'm assuming other vendors will soon follow suit.

Has anyone tried building a a 64bit openwrt build? Can someone point me in the right direction?

Thanks,

2 Likes

Hi npcomplete I cant seem to find a message option. I appreciate all your efforts with OpenWrt and am interested if the ea9500v2 is compatible. I have attempted to read through the other post with 350+ replies but dont see a clear answer to if anyone has it installed on the v2 and if there are any issues.

The v2 is completely different beast. So OpenWrt in it's current form will not work on it unfortunately.

The only 64 bit openwrt build I'm aware of right now is x86_64 - and last time I tried building for that target I ran out of storage space. Something about the x86_64 target causes the build system to use HUGE amounts of disk space - I think it ate 40-50GB or more, my current openwrt tree with downloads/cache/built files for one ar71xx and one ath79 target is 18GB.

Edit: Strangely, another attempt at building for x86_64 went normally. I don't know why it exploded in disk size the last time.

It's a Cortex-A53. What's the problem? The Globalscale ESPRESSObin is already supported by OpenWrt. See this commit. What am I missing?

Please compare Marvel SoC (Armada 3700LP) vs Broadcom SoC (BCM49408).

Having the same underlying cpu doesn't necessarily mean the SoCs are same. Moreover, there is good opensource support from Marvel for their chips while Broadcom is known to tightly control it's IP and notorious for lack of documentation/source etc.

Good point on Broadcom SoCs - they have a long track record of poor support.

Also, that Marvell ESPRESSObin build looks like it might be operating in 32-bit armhf mode, just like nearly every distribution for the Raspberry Pi 3 does.

1 Like

The EA9500 v2 also operates in 32-bit armhf mode AFIK

Short answer ( AFAIK ) ... it's a whole new target which means...

  • Robust Linux kernel support is a good indicator

  • Vendor involvement with the above is a good indicator

  • Likely to require multiple subtargets + open development channels to get wheels rolling....

Which makes an interesting question....

What exactly are said vendors using? In the SoC world "64" means "a new chip". Basically. The 64 is not the challenge... It's the "optimized" extensions that are bundled in....

No, but everything that you need to get the SoC running on Linux is open-source:
https://static.tp-link.com/resources/gpl/AC5400Xv1_GPL.tar.gz

WLAN/hardware NAT driver etc. blobs are another topic, but BCM4908 does not have an integrated WLAN module. E.g. the C5400X has a BCM4366E WLAN chip which is already supported by OpenWrt.

The SoC has a SGMII+ interface. I don't have a clue about that. Can you please look at TP-Link's source-code and say what is missing? It's only speculation before someone checks what we have got already.

Yup, which isn't a huge penalty - EXCEPT that armv8 (aka 64-bit ARM) has built-in AES (ARM's equivalent of AES-NI) - I don't know if these instruction set extensions are available for an armv8 chip being run in 32-bit armhf mode.

From Author of Merlin firmware:

GT-AC5300 and RT-AC86U use the BCM4908 and BCM4906 CPU (one is quad-core, other is dual-core). These are based on a B53 core (which is Broadcom's modified COrtex-A53).

While the kernel uses aarch64, userspace still uses armv7, probably to save up on RAM. That doesn't prevent running native aarch64 code however, as long you don't rely on the armv7 libraries.

Here are the supported CPU features:

admin@Stargate86:/tmp/home/root# cat /proc/cpuinfo
processor	: 0
BogoMIPS	: 100.00
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer	: 0x42
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0x100
CPU revision	: 0

processor	: 1
BogoMIPS	: 100.00
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer	: 0x42
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0x100
CPU revision	: 0
1 Like

A post was split to a new topic: AX router selection