Thanks a lot for this tutorial, it helped me make my first steps in Mender and some of the Technexion/Yocto related things. I have followed all the steps but I think I have made a mistake somewhere. I am a beginner so hopefully I can explain the issue clearly.
After the last step (dd) I have tried to reset the board but it did not boot.
I then put the board back in serial mode to repeat the imx_usb steps. After loading u-boot.img with imx_usb, the autoboot routine actually booted the image. Another reset, but no boot (no activity on the serial console).
Now I have repeated the above again (imx_usb steps), and also run the dfu-util commands again.
After putting the board back in EMMC mode, everything booted automatically.
I have started from scratch and could repeat this behaviour.
It’s almost like writing the sdimg with dd did something to the u-boot area in memory.
So my steps to get it to boot were:
(serial mode) imx_usb -> dfu -> (emmc mode) -> ums -> dd -> (serial mode) -> imx_usb -> dfu -> (emmc mode)
I must have done something wrong, and hopefully one of you could teach me what it is.
If you need more information please let me know.
Thanks in advance!
It’s a pleasure for the tutorial, it’s one of my favorite boards.
For the steps:
(serial mode) imx_usb -> ums -> dd -> dfu
In fact the SPL and the U-Boot are stored on the emmc. So you have to flash the rootfs first and then update the SPL and U-Boot via dfu.
It’s a mistake on my part I encourage you to contribute by modifying the doc
Thanks for your reply. Your suggestion worked (for thud).
I could not get DHCP working on eth0 on thud so I switched to sumo.
Now the above suggestion does not work anymore and I can only get the board to boot through imx_usb and then let autoboot do it’s thing. I can write SPL and u-boot with dfu after ums but no boot.
DHCP works now though
Thanks, and if we sort it out completely I will definitely try and contribute to the tutorial.
On a sidenote I could not get warrior to build at all with Yocto because of a compatibility issue with boundary-layer? Because warrior seemed compatible reading your tutorial I thought I’d give it a try.
I don’t remember having a problem with DHCP on thud.
For warrior I recently made a compilation and I did not have an error
I will try baking thud again tomorrow and provide some DHCP test results.
A fresh install of warrior resulted in:
$ bitbake core-image-base
ERROR: Unable to start bitbake server (None)
ERROR: Server log for this session (/home/bart/mender-nxp-warrior/build/bitbake-cookerdaemon.log):
--- Starting bitbake server pid 20249 at 2020-09-03 21:28:55.769187 ---
Traceback (most recent call last):
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/cookerdata.py", line 276, in parseBaseConfiguration
self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/cookerdata.py", line 396, in parseConfigurationFiles
% (c, " ".join(layerseries), " ".join(compat)))
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/__init__.py", line 110, in fatal
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/daemonize.py", line 87, in createDaemon
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/server/process.py", line 459, in _startServer
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/cooker.py", line 199, in __init__
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/cooker.py", line 364, in initConfigurationData
File "/home/bart/mender-nxp-warrior/sources/poky/bitbake/lib/bb/cookerdata.py", line 311, in parseBaseConfiguration
ERROR: Layer boundary-layer is not compatible with the core layer which only supports these series: warrior (layer is compatible with thud sumo)
I could not find a reference to boundary-layer online. I’m on 16.04.7 LTS and re-checked the required packages section. Hopefully a part of this error message gives you a hint.
Ok I did
git checkout warrior
inside the meta-boundary directory and now I can use bitbake.
It seems the manifest-nxp.xml for the warrior branch points to a specific revision for meta-boundary:
I guess there is a specific reason for that? Sorry lots to learn for me at the moment…
I have just modified the doc, hopefully correctly.
Hi, I’m trying to solve an issue with sdma. Running core-image-base I get the following message:
root@imx7d-pico:~# dmesg | grep sdma
[ 0.914653] imx-sdma 30bd0000.sdma: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
[ 0.914773] imx-sdma 30bd0000.sdma: Falling back to syfs fallback for: imx/sdma/sdma-imx7d.bin
[ 64.492383] imx-sdma 30bd0000.sdma: external firmware not found, using ROM firmware
I have added ‘firmware-imx’ to the build, and after that I can confirm the requested binary is added to the image:
After a lot of googling I thought i’d ask you for help. Reason I’m asking is that I would like to get the unit to boot up without any failures before continuing development, I also don’t know how important this error is.