Tuesday, April 4, 2023

[fedora-arm] Re: BeagleBone Black cannot boot with Fedora 34/35

Bumping to the ancient thread with my solution in case someone find this
thread with Google.

(Yes I know armv7 is already obsoleted since Fedora 37, but I think it
is still useful to share the info.)

The reason behind is that after writing the bootloader, it overwrites
the beginning of the first partition.

With the Fedora 36 u-boot, the u-boot image is 1.2M. While the disk only
have 1M before the first partition

$ ls -lh ./usr/share/uboot/am335x_evm
total 1.4M
-rw-r--r--. 1 root root 106K Apr 5 2022 MLO
-rw-r--r--. 1 root root 1.2M Apr 5 2022 u-boot.img
-rw-r--r--. 1 root root 106K Apr 5 2022 u-boot-spl.bin
$ sudo fdisk -l /dev/sde
Device Boot Start End Sectors Size Id Type
/dev/sde1 * 2048 1230847 1228800 600M 6 FAT16

So the solution isn't that hard.

When preparing the card for BeagleBone Black, use 'none' as the target,
like the following.

$ sudo arm-image-installer --image=Fedora-Minimal-36-1.5.armhfp.raw.xz
--target=none --media=/dev/sde --resizefs

Then after it finished, manually resize the first partition so that
there are some extra space before the first partition. I use gparted to
do that. The result looks like

$ sudo fdisk -l /dev/sde | grep FAT16
/dev/sde1 * 10240 1230847 1220608 596M 6 FAT16

Now manually write the bootloader to the disk. The bootloader is already
in the '/usr/share/uboot/am335x_evm' directory of the disk

$ sudo dd if=./MLO of=/dev/sde seek=1 conv=notrunc bs=128k
$ sudo dd if=./u-boot.img of=/dev/sde seek=1 conv=notrunc bs=384k

Additionally, if the UUID of your first partition changed during the
resize, fix it in the fstab and grub config.

Then just plug the card into BeagleBone Black and boot.


On 10/24/21 10:15, Zamir SUN wrote:
> On 10/23/21 18:36, Peter Robinson wrote:
>> On Fri, Oct 22, 2021 at 6:13 PM Zamir SUN <zsun@fedoraproject.org> wrote:
>>> Hi,
>>> Recently I reflashed my BeagleBone Black. However, I find it simply
>>> cannot go beyond uboot with Fedora 34 or Fedora 35.
>>> Images I tried:
>>> Fedora-Minimal-35-20211020.n.0.armhfp.raw.xz
>>> Fedora-Minimal-34-1.2.armhfp.raw.xz
>>> If I press the button when plug the power cable, it will loop forever
>>> like the following
>>> U-Boot SPL 2021.10 (Oct 14 2021 - 00:00:00 +0000)
>>> Trying to boot from MMC1
>>> U-Boot SPL 2021.10 (Oct 14 2021 - 00:00:00 +0000)
>>> Trying to boot from MMC1
>>> U-Boot SPL 2021.10 (Oct 14 2021 - 00:00:00 +0000)
>>> Trying to boot from MMC1
>>> U-Boot SPL 2021.10 (Oct 14 2021 - 00:00:00 +0000)
>>> Trying to boot from MMC1
>>> If I don't press the button it will boot directly to the system in emmc.
>>> I've tried different tf cards and concluded it's not the card issue.
>>> The latest image that works for me on BBB is
>>> Fedora-Minimal-armhfp-33-1.2-sda.raw.xz
>>> It's interesting that the image has a different name schema that F34/F35
>>> ones(the sda in filename). I roughly remember I also tried F33 without
>>> 'sda' - Fedora-Minimal-33-1.3.armhfp.raw.xz and IIRC this also cannot
>>> boot.
>>> So is there any different for images with or without -sda ? Can anyone
>>> offer some suggestions how I can test or boot F35 on BBB?
>>   We moved to UEFI booting for ARMv7 in Fedora 34 [1] so the build
>> process makes the names slightly different but it brings it into
>> alignment with aarch64 but the output you show above doesn't even get
>> to U-Boot proper from the SPL so that change is unrelated. There must
>> be some regression in U-Boot itself. What target are you using when
>> writing out the image with arm-image-installer?
> am335x_evm.
> The full command looks like
> sudo arm-image-installer --image=Fedora-Minimal-armhfp-33-1.2-sda.raw.xz
> --target=am335x_evm --media=/dev/sdf --addconsole --resizefs --showboot
>> [1] https://fedoraproject.org/wiki/Changes/ARMv7UEFI

Zamir SUN
GPG : 1D86 6D4A 49CE 4BBD 72CF FCF5 D856 6E11 F2A0 525E
Want to know more about Fedora?
Visit https://fedoraproject.org/wiki/
Ready to contribute? See https://whatcanidoforfedora.org/
想了解更多中文资讯,访问 https://zh.fedoracommunity.org/
arm mailing list -- arm@lists.fedoraproject.org
To unsubscribe send an email to arm-leave@lists.fedoraproject.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/arm@lists.fedoraproject.org
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue

No comments:

Post a Comment