Fedora ARM Workstation installation failure

Hi there,

I am trying to install Fedora Workstation (ARM) on an Raspberry Pi 4 (8GB), MemoryCard with 256GB (using Fedora 32 x64).

I’ve been following this guide: Creating and using a live installation image :: Fedora Docs, with sudo fedora-arm-image-installer --image=Fedora-Workstation-armhfp-33-1.2-sda.raw.xz --target=rpi4 --media=/dev/mmcblk0 --norootpass.

During the startup of the rpi I do get following error:

Net: eth0: ethernet@7580000
PCIe BRCM: link up, 5.0Gbps
starting USB…
Bus xhci_pci: Host not halted after 16000 milliseconds
probe failed, error -16
No working controllers found

I’ve tried installing the standard Raspbian - which worked wel.
Also tried using XFCE (ARM) version - which had the same issue.

Logs for creating the image (originally the memorycard didn’t have any formats):

=====================================================
= Selected Image:                                 
= Fedora-Workstation-armhfp-33-1.2-sda.raw.xz
= Selected Media : /dev/mmcblk0
= Root partition will be resized
=====================================================
 
*****************************************************
*****************************************************
******** WARNING! ALL DATA WILL BE DESTROYED ********
*****************************************************
*****************************************************
 
 Type 'YES' to proceed, anything else to exit now 
 
= Proceed? YES
= Writing: 
= Fedora-Workstation-armhfp-33-1.2-sda.raw.xz 
= To: /dev/mmcblk0 ....
7098785792 bytes (7.1 GB, 6.6 GiB) copied, 184 s, 38.6 MB/s
0+804165 records in
0+804165 records out
7121928192 bytes (7.1 GB, 6.6 GiB) copied, 261.692 s, 27.2 MB/s
= Writing image complete!
= Resizing /dev/mmcblk0 ....
Checking that no-one is using this disk right now ... OK

Disk /dev/mmcblk0: 238.3 GiB, 255869321216 bytes, 499744768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5cacaa07

Old situation:

Device         Boot   Start      End  Sectors  Size Id Type
/dev/mmcblk0p1         8192   163839   155648   76M  c W95 FAT32 (LBA)
/dev/mmcblk0p2 *     163840  1163263   999424  488M 83 Linux
/dev/mmcblk0p3      1163264 13273087 12109824  5.8G 83 Linux

/dev/mmcblk0p3: 
New situation:
Disklabel type: dos
Disk identifier: 0x5cacaa07

Device         Boot   Start       End   Sectors   Size Id Type
/dev/mmcblk0p1         8192    163839    155648    76M  c W95 FAT32 (LBA)
/dev/mmcblk0p2 *     163840   1163263    999424   488M 83 Linux
/dev/mmcblk0p3      1163264 499744767 498581504 237.7G 83 Linux

The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or partx(8).
Syncing disks.
Resize '/tmp/root' of 'max'
= No U-boot will be written.

= Installation Complete! Insert into the board and boot.

I did notice this error message:
Re-reading the partition table failed.: Device or resource busy
but the logs afterwards indicate that everything did go well.

Was wondering whether somebody else has ran into the issue or could point me towards a solution.

Welcome to the forum :slightly_smiling_face:

First of all you might want to use 64-bit (aarch64) instead of the 32-bit (armhfp) to use the full potential of the 8 GB rpi4. Althou there might be some problems with the 8 GB version in general.

This is not unusual. You can simply eject and re-read the sdhc-card to verify the result.

This indicates the sdhc-card is either not found, or the first partition is not accessible.

At least for the 4 GB version Fedora-Minimal-33-1.3.aarch64 for sure is working. You might want to give it a try for testing.

4 Likes

Thanks a lot for the welcome and for the helpful answer.
I did follow the guide - intended for rpi2 & rpi3, which will instruct you to download at https://arm.fedoraproject.org.
As you have pointed out the image I tried to use is for armhfp, what I did overlook.
Did confuse me a bit that the aarch64 version is not available from there.
Worked well with the image from Download Fedora Workstation ( For ARM® aarch64").

I thought that I verified that I have the correct version of the image with:
fedora-arm-image-installer --image=Fedora-Workstation-armhfp-33-1.2-sda.raw.xz --supported | grep rpi
But I must have missunderstood there something as well.

Thanks a lot.

Fedora 33 supports the rpi 4B. I have it running on mine. Simply download the Fedora IoT image from https://getfedora.org/
Latest release is dated 20210214. Images for both armhpf and aarch64

The server and workstation editions similar to what are at https://arm.fedoraproject.org are also at https://getfedora.org but getfedora.org also has the IoT version which explicitly supports the rpi 2, 3, & 4

1 Like

Maybe two things to note for 8 GB raspi 4. Not sure if this also applies to 4GB-Versions, I only have 8 GB.

Add “hdmi_force_hotplug=1” to the boot config in /boot/efi/config.txt
If you want to start the raspi without plugged in monitor (headless).
This allows the raspi to boot. (Has a side effect though, those tiny LEDs stopped working, at least for me)

echo hdmi_force_hotplug=1 >> /boot/efi/config.txt

You also need to exclude kernel and linux-firmware updates from being installed the time being.
At the moment there seems to be an issue with those packages causing USB and WIFI to vanish.
You can exclude thos packages by adding the line “exclude = kernel* linux-firmware*” to /etc/dnf/dnf.conf.

This can easily be done by issuing this command:
echo exclude = kernel* linux-firmware* >> /etc/dnf/dnf.conf

For both commands you need to use sudo / need to have root rights.

I noted an error in my earlier post and wanted to update that while also providing a current status on using Fedora 33 on the RPI 4B (8GB). In my earlier post I indicated that I used the IoT image, but actually the Workstation image was used.

The image I installed was Fedora-Workstation-33-1.3.aarch64.raw.xz which I downloaded from Download Fedora Workstation

At first boot most of the Pi OSes will automatically resize the partition to max on the SD card, but this one does not. I fixed it by installing and using gparted to expand the OS partition. Note that the default filesystem is BTRFS and both /home and / are subvolumes so expanding the partition gives both more space.
Also, during install most installers give you the option to select the language and date/time. This is not a normal install so the default language is US english and EST. I would wish those options were available during the setup during first boot, but they are not.

I had seen comments about potential problems with firmware or kernel updates so to test it out I did a full system update with --exclude=linux-firmware* and rebooted into the 5.10.19 kernel. Video, sound, USB all worked normally.

Then just as a test I did an update of the 2 linux-firmware* packages from the default version 20200918-112 to the latest 20210208-117 version.
This time, after reboot I got the fuzzed-out video I have seen on other posts (maybe on other forums) and the reboot never completed properly since the video was unusable. I cannot comment on anything else that did not work since the video never was available to complete startup and with HDMI being the only video that became a no starter.

I reinstalled the base image and followed all the steps above with the exception of the firmware update and all is good.

There actually is a way to set your locale accordingly:
localectl # Show your settings
dnf search glibc-langpack # find your language pack
dnf install "your language pack" # install your language
dnf install libxkbcommon-x11 # install X11-Layouts
localectl set-x11-keymap "language short" # sets your language

example:
localectl set-x11-keymap de # Sets your keymaps and system language to german

Remember to set a keyboard layout neutral password in advance. This can save some trouble. :wink:

I love the minimal image, this however ist not suitable for everyone, since you have to install bash-completion yourself and things like crond. For me this is perfect. I love slim systems that i can buld myself.

That may be necessary for those not using a US standard language and keyboard. It is simple enough to make changes using the settings–>region & language and the settings–> date&time control panels if you can get there though so I was not worried, just irritated that I had to do that instead of setting it at first boot time.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.