4 ms·
>It’s not like there’s a single universal ARM binary you can build and run on every SoC. That depends how widely you define SoC and what level of "binary" you
by mfuzzey 4y ago
>It’s not like there’s a single universal ARM binary you can build and run on every SoC.
That depends how widely you define SoC and what level of "binary" you mean.
For example a Linux userspace binary compiled for arm-linux-eabihf will run on most 32 bit ARM systems out there today and there is another one for 64 bit aarch64. So yes, it's not a universal ARM binary but its a long long way from being SoC specificic.
Vendor specific toolchains on ARM are pretty uncommon in my experience (they used to be a thing on old 8 bit MCUs).
Sure the memory map and peripherals do differ between SoCs but, under Linux at any rate, that is only a problem for the kernel and you can actually build a kernel that will run on multiple SoCs as long as they have the same ISA (by building the different drivers as module and suppling the appropriate DT.)
I regularly run the same userspace root filesystem (and in fact the same kernel except for DT) on multiple ARM v7 SoCs.