DragonBoard410c : Outdated Guide "Instructions for loading Linux Kernel from SD card using U-Boot"


I would like to point that the guide is outdated since the “git://codeaurora.org/quic/kernel/skales” repository has migrated to “git://git.codelinaro.org/” since 31/03/2023

Another outdated thing is that the openembedded release version is “morty” which does not seem accessible in the snapshots version as well, which version should I use ?

I have also been running into issues since I don’t know which branch I am supposed to use for dtbTools and mkbootimg.

The error I am running into is when trying to use “mkbootimg”
Here is the error :

./skales/mkbootimg", line 111, in
if int(magic.encode(‘hex’),16) == of_dt_header:
AttributeError: ‘bytes’ object has no attribute ‘encode’

I am using branch :

Could someone please provide me the right branch to use or tell me what I did wrong ?

Some additional info on my project for context :

I have built a custom boot image and device tree for the dragonboard410c, everything is working fine with the fastboot method.
But I need more storage since the onboard storage is not sufficient for the libraries and modules that I have added, hence why I am looking to create a bootable image from a SD card, if there is another guide or documentation to do so, I would be glad to read it, I have been working on this for a week already and don’t have much time left to deliver the final product.


Found this post that kind of achieved what I am looking to do :

You can flash the rootfs img on the SD card using dd if=rootfs.img of=/dev/xxxY with Y being the partition you want to flash the image on.
Boot on eMMC then have rootfs or extra storage on SD card using the second method, I will try to experiment more on this method to see if the performance are OK.

You can also boot on SD card if wanted by flashing your custom boot image on the correct partition, it also works but my boot image is loading the rootfs image that is loaded inside the eMMC partition, if someone has the answer on how to have the boot image pointing on the SD card partition it would be a pleasure (if this is even possible without using mountpoints and symlinks).

I still think that the solution provided in the link above is the best one.

Finally I have installed all the needed drivers natively in the kernel image, you can close the post if wanted, still the guide is outdated and should be updated I think (or I did something wrong which could be the case).

The errors I have met were coming from the implementation of an IIO device into the device tree SPI node.
The driver setup was returning “spi probe failed with error -2”.
The driver documentation said to put interrupts = <some_number 0x2> into the device node, the some number is, or seems to be, platform dependant, I have solved the case by putting “1” (which I have read on another post on the forum as well).
Reading the documentation from the datasheet it also seems logical since the “1” IRQ vector (which corresponds to the 33 IRQ number) is not affected to any native process (I am still new to this I don’t know if this is the case).
Some tests are to be conducted to determine wheter or not it fixed the issue but my device is now detected by the iio libraries and my device tree seems to be OK.