[Top] [All Lists]

Re: [PATCH] kbuild: Don't assume dts files live in arch/*/boot/dts

To: Matthijs Kooijman <>
Subject: Re: [PATCH] kbuild: Don't assume dts files live in arch/*/boot/dts
From: Stephen Warren <>
Date: Wed, 08 May 2013 08:50:49 -0600
Cc: Michal Marek <>, Grant Likely <>, Rob Herring <>,,,,, Stephen Warren <>
In-reply-to: <>
List-archive: <>
List-help: <>
List-id: linux-mips <>
List-owner: <>
List-post: <>
List-software: Ecartis version 1.0.0
List-subscribe: <>
List-unsubscribe: <>
Original-recipient: rfc822;
References: <>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130106 Thunderbird/17.0.2
On 05/08/2013 04:59 AM, Matthijs Kooijman wrote:
> In commit b40b25ff (kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp),
> dts building was changed to always use the C preprocessor. This meant
> that the .dts file passed to dtc is not the original, but the
> preprocessed one.
> When compiling with a separate build directory (i.e., with O=), this
> preprocessed file will not live in the same directory as the original.
> When the .dts file includes .dtsi files, dtc will look for them in the
> build directory, not in the source directory and compilation will fail.
> The commit referenced above tried to fix this by passing arch/*/boot/dts
> as an include path to dtc. However, for mips, the .dts files are not in
> this directory, so dts compilation on mips breaks for some targets.
> Instead of hardcoding this particular include path, this commit just
> uses the directory of the .dts file that is being compiled, which
> effectively restores the previous behaviour wrt includes. For most .dts
> files, this path is just the same as the previous hardcoded
> arch/*/boot/dts path.
> This was tested on a mips (rt3052) and an arm (bcm2835) target.

Reviewed-by: Stephen Warren <>

(although I wonder if the .dts files shouldn't be in a standard location?)

<Prev in Thread] Current Thread [Next in Thread>