Re: [git pull] Devicetree changes for v3.15
From: Jason Cooper <hidden>
Date: 2014-09-29 13:52:09
Also in:
lkml
On Mon, Sep 29, 2014 at 01:49:22PM +0100, Grant Likely wrote:
On Fri, 26 Sep 2014 10:19:43 -0400 , Jason Cooper [off-list ref] wrote:quoted
Linus, On Fri, Sep 26, 2014 at 02:30:53PM +0200, Linus Walleij wrote:quoted
On Tue, Apr 1, 2014 at 12:15 PM, Grant Likely [off-list ref] wrote:quoted
Here are the dt changes I've got queued up for v3.15. The full description is below in the tag. Please pull.(...)quoted
Jason Cooper (1): kbuild: dtbs_install: new make targetExact patch is: f4d4ffc03efc kbuild: dtbs_install: new make targetquoted
After this patch a while back I have observed the following behaviour of the kernel build: make zImage make zImage -> incremental build, just relink make zImage make dtbs make zImage -> The whole kernel gets rebuilt So now if I happen to recompile my device trees, I suddenly want the entire zImage to be rebuilt to? It's by definition not changes that affect the kernel build :-( I noticed this because my build scripts calls make dtbs && make zImage, and started to rebuild absolutely everything all the time. Do you think this can be fixed? It's quite simple to reproduce...Does the attached fix your problem? thx, Jason. ----------->8------------------------------------------diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 0ce9d0f71f2a..a88b13af58d2 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile@@ -313,7 +313,9 @@ $(INSTALL_TARGETS): $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@ PHONY += dtbs dtbs_install -dtbs dtbs_install: prepare scripts +dtbs: scripts + $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $@ +dtbs_install: prepare scripts $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $@ # We use MRPROPER_FILES and CLEAN_FILES nowIs this the right fix though? It seems that it would fix the problem for the dtbs target, but would still cause a kernel rebuild for dtbs_install. Why does dtbs_install need to depend on the 'prepare' target?
iirc, it was added as a dependency to ensure $KERNELVERSION was set before attempting to install into /path/to/$KERNELVERSION/dtbs. This patch was just a confirmation that the 'prepare' target was the source of the problem for Linus. Now that we know that, we need to dig and find a proper fix for setting $KERNELVERSION for dtbs_install. I dug into the prepare* menagerie a bit preparing this test patch, and it seems that any existing target which would get us $KERNELVERSION also depends on FORCE. I haven't had time to dig into it more... Perhaps one of the kbuild maintainers would have some insight? thx, Jason. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html