[U-Boot] problems with building u-boot-fit-dtb.bin

Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Any ideas?
bye, Heiko

Hello Tom,
Am 16.10.2019 um 06:56 schrieb Heiko Schocher:
Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Ok, I made a mistake in the travis.yml file, corrected it, and started a new travis build now:
https://travis-ci.org/hsdenx/u-boot-test/builds/598489923
This job worked ...
bye, Heiko

Hello Tom,
Am 16.10.2019 um 10:45 schrieb Heiko Schocher:
Hello Tom,
Am 16.10.2019 um 06:56 schrieb Heiko Schocher:
Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Ok, I made a mistake in the travis.yml file, corrected it, and started a new travis build now:
https://travis-ci.org/hsdenx/u-boot-test/builds/598489923
This job worked ...
build with all travis jobs fails:
https://travis-ci.org/hsdenx/u-boot-test/jobs/599459825
Any ideas?
bye, Heiko

On Fri, Oct 18, 2019 at 07:40:13AM +0200, Heiko Schocher wrote:
Hello Tom,
Am 16.10.2019 um 10:45 schrieb Heiko Schocher:
Hello Tom,
Am 16.10.2019 um 06:56 schrieb Heiko Schocher:
Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Ok, I made a mistake in the travis.yml file, corrected it, and started a new travis build now:
https://travis-ci.org/hsdenx/u-boot-test/builds/598489923
This job worked ...
build with all travis jobs fails:
https://travis-ci.org/hsdenx/u-boot-test/jobs/599459825
Any ideas?
Does it happen in the travis docker container? I posted how to do that the other day.

Hello Tom,
Am 18.10.2019 um 13:29 schrieb Tom Rini:
On Fri, Oct 18, 2019 at 07:40:13AM +0200, Heiko Schocher wrote:
Hello Tom,
Am 16.10.2019 um 10:45 schrieb Heiko Schocher:
Hello Tom,
Am 16.10.2019 um 06:56 schrieb Heiko Schocher:
Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Ok, I made a mistake in the travis.yml file, corrected it, and started a new travis build now:
https://travis-ci.org/hsdenx/u-boot-test/builds/598489923
This job worked ...
build with all travis jobs fails:
https://travis-ci.org/hsdenx/u-boot-test/jobs/599459825
Any ideas?
Does it happen in the travis docker container? I posted how to do that the other day.
Hmm... you mean:
https://lists.denx.de/pipermail/u-boot/2019-October/386483.html
?
I try to find time to try this out, but I fear, this is dependent on the machine it runs, because it builds fine on 4 different build machines, also if I only build the aristainetos boards on travis, it builds fine ... so some timing / sync problem?
bye, Heiko

On Sat, Oct 19, 2019 at 10:21:14AM +0200, Heiko Schocher wrote:
Hello Tom,
Am 18.10.2019 um 13:29 schrieb Tom Rini:
On Fri, Oct 18, 2019 at 07:40:13AM +0200, Heiko Schocher wrote:
Hello Tom,
Am 16.10.2019 um 10:45 schrieb Heiko Schocher:
Hello Tom,
Am 16.10.2019 um 06:56 schrieb Heiko Schocher:
Hello Tom,
I planned to send my patches which convert the imx6 based aristainetos boards to support DM ... building U-Boot works fine on 2 different build machines at home, also on 2 build machines in munich @ denx ...
So I startet as usual a travi build and I get:
https://travis-ci.org/hsdenx/u-boot-test/jobs/596917922
arm: + aristainetos2b +make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. +make[1]: *** [u-boot-dtb.imx] Error 2 +make: *** [sub-make] Error 2
(for all aristainetos boards)
:-(
Unfortunately I cannot reproduce this on my machines... (builds with "-j 64" or "-j 1" working fine)
I think it is a timing/sync issue, but how to debug ?
Checked make versions:
make on one of my build machines:
pollux:~ hs $ make --version GNU Make 4.2.1 Gebaut für x86_64-redhat-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später http://gnu.org/licenses/gpl.html Dies ist freie Software: Sie können sie nach Belieben ändern und weiter verteilen. Soweit es die Gesetze erlauben gibt es KEINE GARANTIE. pollux:~ hs $ cd abb/mainlining/u-boot pollux:u-boot
make on travis:
Tool chain test: OK, arch='aarch64', priority 5 GNU Make 4.1 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2014 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Ok, for faster "debugging travis" I removed all other jobs from the travis file and started build again:
https://travis-ci.org/hsdenx/u-boot-test/builds/597504777
The error for the aristainetos boards are gone .... ?!?!? (Ok, there are others, but not related to my changes)
I think it has to do with the config options:
CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="imx6dl-aristainetos2_4" CONFIG_OF_LIST="imx6dl-aristainetos2_4 imx6dl-aristainetos2_7" CONFIG_DTB_RESELECT=y CONFIG_MULTI_DTB_FIT=y
and I can only find mips boards, which has this settings. Difference for imx boards to mips Makefile is, imx has make target in 2 Makefiles:
Makefile arch/arm/mach-imx/Makefile
So the "u-boot-fit-dtb.bin" target is definitely there ...
Ok, I made a mistake in the travis.yml file, corrected it, and started a new travis build now:
https://travis-ci.org/hsdenx/u-boot-test/builds/598489923
This job worked ...
build with all travis jobs fails:
https://travis-ci.org/hsdenx/u-boot-test/jobs/599459825
Any ideas?
Does it happen in the travis docker container? I posted how to do that the other day.
Hmm... you mean:
https://lists.denx.de/pipermail/u-boot/2019-October/386483.html
?
Yes.
I try to find time to try this out, but I fear, this is dependent on the machine it runs, because it builds fine on 4 different build machines, also if I only build the aristainetos boards on travis, it builds fine ... so some timing / sync problem?
Well, this is how to rule out environment issues.
participants (2)
-
Heiko Schocher
-
Tom Rini