All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] firmware: Automatically pull missing FW files
@ 2014-08-20 18:21 Tadeusz Struk
  2014-08-20 18:34 ` David Woodhouse
  0 siblings, 1 reply; 7+ messages in thread
From: Tadeusz Struk @ 2014-08-20 18:21 UTC (permalink / raw)
  To: linux-firmware; +Cc: linux-kernel

Hi,
When a binary FW file is not present in the firmware dir then the build
will fail. This patch enables auto-download any missing FW file for both shipped
and external targets.
Generated against linux-next.

Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
---
 firmware/Makefile |   25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/firmware/Makefile b/firmware/Makefile
index 5747417..3ad12f6 100644
--- a/firmware/Makefile
+++ b/firmware/Makefile
@@ -178,10 +178,31 @@ wordsize_deps := $(wildcard include/config/64bit.h include/config/32bit.h \
 		include/config/superh32.h include/config/superh64.h \
 		include/config/x86_32.h include/config/x86_64.h)
 
-$(patsubst %,$(obj)/%.gen.S, $(fw-shipped-y)): %: $(wordsize_deps)
+FW_URL := git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/plain
+
+.NOTPARALLEL: get_missing_external $(patsubst %,$(obj)/%.gen.S, $(fw-external-y))
+.NOTPARALLEL: get_missing_shipped $(patsubst %,$(obj)/%.gen.S, $(fw-shipped-y))
+
+get_missing_shipped:
+	@for file in $(fw-shipped-y) $(fw-shipped-m); do \
+		if [ ! -f $(obj)/$$file ]; then \
+			wget $(FW_URL)/$$file -o /dev/null -O $(obj)/$$file; \
+		fi; \
+	done;
+
+get_missing_external:
+	@for file in $(fw-external-y); do \
+		if [ ! -f $(obj)/$$file ]; then \
+			wget $(FW_URL)/$$file -o /dev/null -O $(obj)/$$file; \
+		fi; \
+	done;
+
+$(patsubst %,$(obj)/%.gen.S, $(fw-shipped-y)): %: $(wordsize_deps) \
+		get_missing_shipped
 	$(call cmd,fwbin,$(patsubst %.gen.S,%,$@))
+
 $(patsubst %,$(obj)/%.gen.S, $(fw-external-y)): %: $(wordsize_deps) \
-		include/config/extra/firmware/dir.h
+		include/config/extra/firmware/dir.h get_missing_external
 	$(call cmd,fwbin,$(fwabs)/$(patsubst $(obj)/%.gen.S,%,$@))
 
 # The .o files depend on the binaries directly; the .S files don't.


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-08-21 12:31 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-20 18:21 [PATCH] firmware: Automatically pull missing FW files Tadeusz Struk
2014-08-20 18:34 ` David Woodhouse
2014-08-20 19:21   ` Tadeusz Struk
2014-08-20 20:17     ` Valdis.Kletnieks
2014-08-20 20:39     ` David Woodhouse
2014-08-20 20:48       ` Tadeusz Struk
2014-08-21 12:31         ` Henrique de Moraes Holschuh

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.