Re: [PATCH v2] kbuild: Create directory for target DTB

From: Will Deacon
Date: Wed Mar 18 2015 - 09:20:15 EST


On Wed, Mar 18, 2015 at 12:39:07PM +0000, Michal Simek wrote:
> From: Nathan Rossi <nathan.rossi@xxxxxxxxxx>
>
> When building specific DTBs out of the kernel tree the vendor subdirs
> (boot/dts/<vendor>) are not created, ensure that they are before
> building the DTB.
>
> Signed-off-by: Nathan Rossi <nathan.rossi@xxxxxxxxxx>
> Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>
> ---
>
> Changes in v2:
> - Use $(dir ${dtc-tmp}) instead of `dirname ${dtc-tmp}`
> Reported-by: Will Deacon <will.deacon@xxxxxxx>

Looks ok to me, but no idea which tree this should go through. Maybe
arm-soc?

Acked-by: Will Deacon <will.deacon@xxxxxxx>

Will

> Problem is visible with arm64 for out of tree builds.
> make O=/tmp/kkk/ defconfig
> make O=/tmp/kkk/ cavium/thunder-88xx.dtb
>
> DTC arch/arm64/boot/dts/cavium/thunder-88xx.dtb
> cc1: fatal error: opening output file
> arch/arm64/boot/dts/cavium/.thunder-88xx.dtb.dts.tmp: No such file or
> directory
> compilation terminated.
> make[2]: *** [arch/arm64/boot/dts/cavium/thunder-88xx.dtb] Error 1
> make[1]: *** [cavium/thunder-88xx.dtb] Error 2
>
> Building specific dtb target on arm32 is working fine
> make O=/tmp/kkk4/ multi_v7_defconfig
> make O=/tmp/kkk4/ zynq-zc702.dtb
>
> This is the way how Yocto is building dtb for specific target.
> ---
> scripts/Makefile.lib | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> index 044eb4f..79e8661 100644
> --- a/scripts/Makefile.lib
> +++ b/scripts/Makefile.lib
> @@ -282,7 +282,8 @@ $(obj)/%.dtb.S: $(obj)/%.dtb
> $(call cmd,dt_S_dtb)
>
> quiet_cmd_dtc = DTC $@
> -cmd_dtc = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
> +cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
> + $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
> $(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 \
> -i $(dir $<) $(DTC_FLAGS) \
> -d $(depfile).dtc.tmp $(dtc-tmp) ; \
> --
> 1.7.2.3
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/