AArch64 on Raspberry Pi 2 (rev 1.2), 3B, 3B+


Nice detective work! What happens if you use the old dtb with the new kernel? There should be copies in /boot and /boot/firmware.

There is a bug about the 3B+ Ethernet, but you should have the fix https://bugs.launchpad.net/ubuntu/+source/linux-raspi2/+bug/1797406


Tried to downgrade kernel, didn’t go as planned :frowning: so now re-installing …


This time installed without selecting the option to update packages, but at end of install still ended up with the 1027 kernel version after reboot with wired ethernet non functional. Took a different approach this time by enabling WiFi and upgrading to 18.10, on reboot wired ethernet is working :slight_smile:


I can confirm that the wired network started to work after upgrading up to cosmic cuttlefish. I would like to ask howto remove all of the gui apps to make distro work as a server only with terminal and ssh ? Evertime I used tasksel do purge the unnecesary packages it removed also the whole network subsystem. I can’t install it again without any network connection.
In my case - 3B+


If you want a server install, then it is best to start with one of the official server images/isos. See https://wiki.ubuntu.com/ARM/RaspberryPi#Booting_generic_arm64_ISO_images .


Dear stillwinter
Thanks for info. I need to modify such options to be able to boot. I have done it before without so the image won’t boot at my Raspberry.
Can I use your preparied img to mixed with the generic server arm64 image ?


The 3B+ was released too late for full support in the 18.04 generic kernel (e.g. ethernet probably doesn’t work), but 18.10 should work okay. If you need to use the Linux-raspi2 kernel with the Debian/text-installers then I gave instructions here AArch64 on Raspberry Pi 2 (rev 1.2), 3B, 3B+ .

At the start of the thread AArch64 on Raspberry Pi 2 (rev 1.2), 3B, 3B+ I also gave instructions to remove the xubuntu packages, but I haven’t fully tested what gets removed.



I have a few questions regarding the setup for arm64.

I’m assuming the correct command is cp /tmp/pi-kernel/lib/firmware/$RASPI_VER/device-tree/broadcom/bcm2710*.dtb . and not cp /tmp/pi-kernel/lib/firmware/$RASPI_VER/device-tree/broadcom/bcm2710*.dtb broadcom, right?

Also how where would I need to copy the overlays? And what are they needed for?

Last but not least, the link https://wiki.ubuntu.com/ARM/RaspberryPi#Updating_the_Pi_GPU_firmware_and_bootloader_files only provides armhf files and no arm64. Is this ok? And if not where would I get the arm64 files?



If you connect any addon boards, or if you want to try the vc4 driver. The overlays folder needs to be on the firmware partition because it is used by the raspberry pi bootloader when you have a corresponding device tree overlay line in your config.txt.


To use arm64 you need a line in your config.txt.

# boot in AArch64 (64-bit) mode

I’ll add it to the post above.


Wanting to be able to use my DS3231 RTC. I have added “dtoverlay=i2c-rtc,ds3231” to config.txt. i2c is also enabled. however, I cannot find the overlay.


Having successfully installed using the 18.04 install USB image and upgrading to 18.10, am scripting the
described process to build a 18.10 USB install image. Has anyone already done this, as might save me a bit of time? Thanks.


I have this running on my Pi B+ but I cannot get the 7" touchscreen to work. I can’t find much info on getting the driver working, I am on ARM64 18.04.

Anyone have any input on this one? Thank you.


Ethernet should be working on the 3B+ now https://bugs.launchpad.net/ubuntu/+source/linux-raspi2/+bug/1806108

I can’t edit the Debian-installer post above with new links to recent kernel.


I managed to build an ARM64 Ubuntu MATE image for the Pi 3 by using debootstrap and the linux-raspi2 kernel.


Hello! Thank you so much for this. Was wondering if there is any way to get Ubantu Classic Server 16.04 on Raspberry Pi 3 B+? I am fairly new to this so please do forgive me.


Also I would like to install dotnet-sdk-2.1 (if not later versions).

Is this possible? I am working on a simple project and I cant move forward without installing dotnet.

sudo apt-get install dotnet-sdk-2.2
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package dotnet-sdk-2.2
E: Couldn’t find any package by glob ‘dotnet-sdk-2.2’
E: Couldn’t find any package by regex ‘dotnet-sdk-2.2’

Any help is appreciated.


You should be able to install armhf using the mini iso instructions above. You may also find a daily build that can be adapted. For arm64 you can use the generic hwe kernel, follow the instructions on the wiki. This would really only be suitable for a server, not a desktop setup.


This is something you need to google. I’ve never heard of it before, but from a few seconds of searching it appears to be a Microsoft product and arm packages are not readily available. There seems to be a solution with docker?


How do I install the necessary drivers so I don’t have to do:

sudo ip link set dev eth0 down
sudo dhclient eth0

every time on boot? (Both WIFI and LAN)


HI Folks,,

Hope somebody can lend a quick hand.
Installed this on Raspberry Pi B+. All good. Except bluetooth which doesnt work.
Icon is there, I turn it on, but whenever I try to add a device the blueman assistant prompts me "No adapters found". Any ideas how to fix this?

I had Ubuntu Mate 16.04, the raspberry flavor, previously. There were other issues with it but bluetooth worked fine.

Any ideas how to fix this?