Bug 2183828 - RFE: Fedora does not provide firmware for ODROID N2+
Summary: RFE: Fedora does not provide firmware for ODROID N2+
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: uboot-tools
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Peter Robinson
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-04-02 14:26 UTC by billiboy
Modified: 2023-04-02 16:59 UTC (History)
9 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2023-04-02 15:26:45 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Hardkernel_Odroid-N2+.log (61.21 KB, text/plain)
2023-04-02 14:26 UTC, billiboy
no flags Details
ODROID firmware support (2.74 KB, patch)
2023-04-02 14:28 UTC, billiboy
no flags Details | Diff
Build enable (277 bytes, patch)
2023-04-02 14:29 UTC, billiboy
no flags Details | Diff

Description billiboy 2023-04-02 14:26:06 UTC
Created attachment 1955305 [details]
Hardkernel_Odroid-N2+.log

Fedora aarch64 images work out-of-the-box on ODROID (Hardkernel_Odroid-N2+.log). Unfortunately, they cannot be booted from the manufacturer's firmware (Petitboot). A firmware with mainline uboot as payload, on the other hand, works out-of-the-box. The only missing element is the fedora ability to build it. The vendor toolchain allows building only in an x86 environment, since the necessary tools are provided as binary-only. Fortunately, there are sources for alternative tools. With these tools and Amlogic's BLOB FIP artifacts, it is possible to create functional firmware on the target platform. I unraveled the complicated build process of the vendor toolchain and created the meson64-tools package, which makes it possible to extend the uboot-tools package (uboot-tools.spec.diff, aarch64-boards.diff) with the firmware for ODROID N2, N2+, C4 and HC4. The package provides the device-specific Amlogic BLOB FIP artifacts and the encoding tool for uboot.bin. More devices can certainly be supported, but only the ones provided are confirmed as functional for now. The firmware can be installed to an SD-card via "dd bs=512 seek=1 conv=notrunc,fsync if=u-boot-meson.bin of=/dev/${microSD-card-used}". For an eMMC storage it is the same command, while for SPI flash you have to use "dd conv=notrunc,fsync if=u-boot-meson.bin of=/dev/mtd0".

Comment 1 billiboy 2023-04-02 14:27:40 UTC
Created attachment 1955306 [details]
meson64-tools

Comment 2 billiboy 2023-04-02 14:28:28 UTC
Created attachment 1955307 [details]
ODROID firmware support

Comment 3 billiboy 2023-04-02 14:29:25 UTC
Created attachment 1955308 [details]
Build enable

Comment 4 Peter Robinson 2023-04-02 15:26:45 UTC
The last I looked we weren't allowed to redistribute the odroid signed binary bits which means we can't include them in Fedora. It would need to be done somewhere like rpm-fusion. The ODroid company has never been particularly friendly to other distros/communities.

Comment 5 Dan Horák 2023-04-02 15:32:50 UTC
And this is still the case, unless the reporter received an approval from Amlogic.

The LICENSE file in amlogic-boot-fip-20230402.tar.xz contains
...
// Redistribution and use in source and binary forms, with or without
// modification is strictly prohibited without prior written permission
// from Amlogic.
...

This makes it impossible to include it for any repo. And we need to ask the admins to remove the offending attachment ...


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