Bug 1967353 - Fedora IoT fails to boot from an SD card on the RockPro64
Summary: Fedora IoT fails to boot from an SD card on the RockPro64
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: IoT
Version: 34
Hardware: aarch64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Peter Robinson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-06-03 00:21 UTC by Jordan Williams
Modified: 2021-06-03 13:33 UTC (History)
0 users

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-06-03 13:32:49 UTC
Type: Bug
Embargoed:
jordan: needinfo-


Attachments (Terms of Use)

Description Jordan Williams 2021-06-03 00:21:47 UTC
Description of problem:

On the RockPro64, 4 GB model, booting Fedora IoT 34 from an SD Card fails with a kernel panic but booting the same Fedora IoT from eMMC works.
The image was flashed to the target media using the arm-image-installer tool with the same options.
I attempted to use multiple SD cards, one of which is fairly new and high quality.

Version-Release number of selected component (if applicable):

Fedora-IoT-34-20210429.1.aarch64.raw.xz

How reproducible:

Completely reproducible for me on my end, though the kernel panic message might vary.

Steps to Reproduce:
1. Download the Fedora 34 IoT image: Fedora-IoT-34-20210429.1.aarch64.raw.xz

2. Flash an SD card with the image using arm-image-installer.

sudo arm-image-installer --image="$HOME/Downloads/Fedora-IoT-34-20210429.1.aarch64.raw.xz" --target=rockpro64-rk3399 --media=/dev/sda --resizefs --relabel -y --addconsole --showboot --addkey="$HOME/.ssh/id_rsa.pub" --norootpass

3. Insert the SD card into the RockPro64 with no other storage media attached.

4. Attach a serial console through UART on the RockPro64 for debugging.
Don't attach TxD until after the SPI has booted.

5. Boot the RockPro64 or hit the Reset button to load the SD card.


Actual results:

The bootloader boots the kernel off the SD card an the initial kernel boot messages appear on the serial console until a Kernel Panic message appears.
When the HDMI cable is plugged in to my TV, the screen occasionally flashes with static and emits auditory popping noises, otherwise the screen is completely blank.

Expected results:

I expected Fedora IoT 34 to successfully boot using the SD card on the RockPro64, like the eMMC module does, booting to a login prompt on the serial console.

Additional info:

I can reproduce and provide debug logs if requested. I don't have the original logs saved.

Comment 1 Peter Robinson 2021-06-03 07:56:55 UTC
> Steps to Reproduce:
> 1. Download the Fedora 34 IoT image: Fedora-IoT-34-20210429.1.aarch64.raw.xz
> 
> 2. Flash an SD card with the image using arm-image-installer.
> 
> sudo arm-image-installer
> --image="$HOME/Downloads/Fedora-IoT-34-20210429.1.aarch64.raw.xz"
> --target=rockpro64-rk3399 --media=/dev/sda --resizefs --relabel -y
> --addconsole --showboot --addkey="$HOME/.ssh/id_rsa.pub" --norootpass

You indicate below the SPI, do you have the firmware on SPI flash? If so you should use --target=none

> 3. Insert the SD card into the RockPro64 with no other storage media
> attached.
> 
> 4. Attach a serial console through UART on the RockPro64 for debugging.
> Don't attach TxD until after the SPI has booted.

Why?

> 5. Boot the RockPro64 or hit the Reset button to load the SD card.
> 
> 
> Actual results:
> 
> The bootloader boots the kernel off the SD card an the initial kernel boot
> messages appear on the serial console until a Kernel Panic message appears.

Please attach the output of the kernel panic.

Comment 2 Jordan Williams 2021-06-03 13:32:49 UTC
(In reply to Peter Robinson from comment #1)
> > Steps to Reproduce:
> > 1. Download the Fedora 34 IoT image: Fedora-IoT-34-20210429.1.aarch64.raw.xz
> > 
> > 2. Flash an SD card with the image using arm-image-installer.
> > 
> > sudo arm-image-installer
> > --image="$HOME/Downloads/Fedora-IoT-34-20210429.1.aarch64.raw.xz"
> > --target=rockpro64-rk3399 --media=/dev/sda --resizefs --relabel -y
> > --addconsole --showboot --addkey="$HOME/.ssh/id_rsa.pub" --norootpass
> 
> You indicate below the SPI, do you have the firmware on SPI flash? If so you
> should use --target=none

Thanks! I wasn't aware of that.

> 
> > 3. Insert the SD card into the RockPro64 with no other storage media
> > attached.
> > 
> > 4. Attach a serial console through UART on the RockPro64 for debugging.
> > Don't attach TxD until after the SPI has booted.
> 
> Why?

That was mentioned on the Pine64 Wiki, but it doesn't seem to be necessary now that I try leaving it plugged in.

> 
> > 5. Boot the RockPro64 or hit the Reset button to load the SD card.
> > 
> > 
> > Actual results:
> > 
> > The bootloader boots the kernel off the SD card an the initial kernel boot
> > messages appear on the serial console until a Kernel Panic message appears.
> 
> Please attach the output of the kernel panic.

Of course, I flashed the SD card and it now works like a charm... perhaps it was a bad flash before but it now boots fine. Sorry for the trouble. Thanks again!

Comment 3 Jordan Williams 2021-06-03 13:33:25 UTC
(In reply to Peter Robinson from comment #1)
> > Steps to Reproduce:
> > 1. Download the Fedora 34 IoT image: Fedora-IoT-34-20210429.1.aarch64.raw.xz
> > 
> > 2. Flash an SD card with the image using arm-image-installer.
> > 
> > sudo arm-image-installer
> > --image="$HOME/Downloads/Fedora-IoT-34-20210429.1.aarch64.raw.xz"
> > --target=rockpro64-rk3399 --media=/dev/sda --resizefs --relabel -y
> > --addconsole --showboot --addkey="$HOME/.ssh/id_rsa.pub" --norootpass
> 
> You indicate below the SPI, do you have the firmware on SPI flash? If so you
> should use --target=none

Thanks! I wasn't aware of that.

> 
> > 3. Insert the SD card into the RockPro64 with no other storage media
> > attached.
> > 
> > 4. Attach a serial console through UART on the RockPro64 for debugging.
> > Don't attach TxD until after the SPI has booted.
> 
> Why?

That was mentioned on the Pine64 Wiki, but it doesn't seem to be necessary now that I try leaving it plugged in.

> 
> > 5. Boot the RockPro64 or hit the Reset button to load the SD card.
> > 
> > 
> > Actual results:
> > 
> > The bootloader boots the kernel off the SD card an the initial kernel boot
> > messages appear on the serial console until a Kernel Panic message appears.
> 
> Please attach the output of the kernel panic.

Of course, I flashed the SD card and it now works like a charm... perhaps it was a bad flash before but it now boots fine. Sorry for the trouble. Thanks again!


Note You need to log in before you can comment on or make changes to this bug.