Aarch64 often is a different CPU arch between SoC's - there are so many different versions and variants that everything needs to compiled per SoC.
Aarch64 SoC's are also all completely different - specific .dtb's etc are needed.
Those are the reasons why there are no generic GNU/Linux distros that work across Aarch64 SoC's.
