0

Trying to create an bootable sd card for a nanopi a64 from FriendlyARM on fedora 28 with the "fedora-arm-image-installer" , however the installation fails at the end with two missing files, "sunxi-spl.bin" and "u-boot.itb".

Which additional rpm package do i need , or how do i create these files for install?

fedora-arm-image-installer \
   --image=Fedora-Mate-armhfp-28-1.1-sda.raw.xz \
   --target=nanopi_a64 \
   --media=/dev/sdb \
   --selinux=OFF \
   --norootpass \
   --resizefs \
   -y

Full Log of execution. Errors are at the last 10 lines.

=====================================================
= Selected Image:                                 
= Fedora-Mate-armhfp-28-1.1-sda.raw.xz
= Selected Media : /dev/sdb
= U-Boot Target : nanopi_a64
= SELINUX = OFF
= Root Password will be removed.
= Root partition will be resized
=====================================================

*****************************************************
*****************************************************
******** WARNING! ALL DATA WILL BE DESTROYED ********
*****************************************************
*****************************************************
= Writing: 
= Fedora-Mate-armhfp-28-1.1-sda.raw.xz 
= To: /dev/sdb ....
0+801784 records in
0+801784 records out
7396655104 bytes (7.4 GB, 6.9 GiB) copied, 281.967 s, 26.2 MB/s
= Writing image complete!
= Resizing /dev/sdb ....
Checking that no-one is using this disk right now ... OK

Disk /dev/sdb: 7.4 GiB, 7948206080 bytes, 15523840 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: 0xad3c1ff1

Old situation:

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sdb1          2048    61439    59392   29M  c W95 FAT32 (LBA)
/dev/sdb2  *      61440  1060863   999424  488M 83 Linux
/dev/sdb3       1060864  2060287   999424  488M 82 Linux swap / Solaris
/dev/sdb4       2060288 13778943 11718656  5.6G 83 Linux

/dev/sdb4: 
New situation:
Disklabel type: dos
Disk identifier: 0xad3c1ff1

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sdb1          2048    61439    59392   29M  c W95 FAT32 (LBA)
/dev/sdb2  *      61440  1060863   999424  488M 83 Linux
/dev/sdb3       1060864  2060287   999424  488M 82 Linux swap / Solaris
/dev/sdb4       2060288 15523839 13463552  6.4G 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 kpartx(8).
Syncing disks.
e2fsck 1.43.8 (1-Jan-2018)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
_/: 166928/366480 files (0.7% non-contiguous), 1228157/1464832 blocks
resize2fs 1.43.8 (1-Jan-2018)
Resizing the filesystem on /dev/sdb4 to 1682944 (4k) blocks.
The filesystem on /dev/sdb4 is now 1682944 (4k) blocks long.

= Turning SELinux off ...
= Removing the root password.
= Writing sunxi-spl.bin for nanopi_a64 ....
dd: failed to open '/tmp/root/usr/share/uboot/nanopi_a64/sunxi-spl.bin': No such file or directory
= Writing u-boot FIT image for nanopi_a64 ....
dd: failed to open '/tmp/root/usr/share/uboot/nanopi_a64/u-boot.itb': No such file or directory

= Installation Complete! Insert into the nanopi_a64 and boot.
0

In general, the sunxi-spl.bin and u-boot.itb files for ARMv8-A based devices, such as the NanoPi A64 are provided by the uboot-images-armv8 package.

However, it seems that, at the time of writing, this package does not include versions of the sunxi-spl.bin and u-boot.itb files specifically for the NanoPi A64 board.

The sunxi community wiki (Open Source community gathered around the Allwinner SoCs) suggests that while from the software point of view the NanoPi A64 is similar to the Pine64 (based on the same Allwinner Quad-Core ARM Cortex A53 64-Bit Processor, similar DRAM, same Ethernet and Power Management IC), Pine64 images (which are included in uboot-images-armv8) unfortunately do not boot on the NanoPi A64, likely due to a different PMIC configuration.

This leaves the option of building a suitable u-boot and Linux kernel image yourself, either following manual build howto on the sunxi community wiki using the nanopi_a64_defconfig build target for u-boot and the sun50i-a64-nanopi-a64.dtb device-tree binary for the Linux kernel, or following the manufacturer instructions at the FriendlyARM wiki using their Board Support Package.

1
  • helped to find the right sources, but actually getting to something which works is a nightmare. (e.g. uboot seems only to work in a very specific version, the current kernels crash immediatly with efifb, the device tree misses ethernet configurs....)
    – Mandragor
    Jun 30 '18 at 23:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.