From c49e3088c034e1fc59f27b9a97ba1e1d3590320a Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sun, 20 Jul 2008 00:37:25 -0300 Subject: Complete firmware compilation scripts From: Mauro Carvalho Chehab This patch completes firmware compilation scripts: - linux/firmware/Makefile is just a copy of kernel script make file. It is not currently used by the building system; - Added two new targets for firmware compilation and instalation; - Fixes the COPYING file to explicitly state that the firmwares aren't covered by GPL; - make distclean will also cleanup the firmwares. Signed-off-by: Mauro Carvalho Chehab --- v4l/Makefile | 6 +++++- v4l/firmware/Makefile | 30 ++++++++++++++++++++++++------ 2 files changed, 29 insertions(+), 7 deletions(-) (limited to 'v4l') diff --git a/v4l/Makefile b/v4l/Makefile index 579b85f88..b43b59867 100644 --- a/v4l/Makefile +++ b/v4l/Makefile @@ -39,7 +39,7 @@ endif # TOPDIR ################################################# # default compilation rule -default:: config-compat.h Makefile.media links oss # firmware +default:: config-compat.h Makefile.media links oss @echo Kernel build directory is $(OUTDIR) $(MAKE) -C $(OUTDIR) SUBDIRS=$(PWD) $(MYCFLAGS) modules ./scripts/rmmod.pl check @@ -206,6 +206,9 @@ install:: media-install remove rminstall:: media-rminstall +firmware_install:: + make -C firmware install + ################################################# # Compiling preparation rules @@ -287,6 +290,7 @@ distclean:: clean -rm -f scripts/lxdialog scripts/kconfig oss @find .. -name '*.orig' -exec rm '{}' \; @find .. -name '*.rej' -exec rm '{}' \; + $(MAKE) -C firmware distclean ################################################# # Kernel module insert/removal rules diff --git a/v4l/firmware/Makefile b/v4l/firmware/Makefile index c3624004c..e018ad92a 100644 --- a/v4l/firmware/Makefile +++ b/v4l/firmware/Makefile @@ -1,27 +1,45 @@ -TARGETS = ihex2fw ttusb-budget vicam.fw dabusb_bitstream dabusb.fw stv0672_v4 +DIRS = vicam dabusb ttusb-budget cpia2 + +TARGETS = ihex2fw vicam/firmware.fw dabusb/firmware.fw dabusb/bitstream.bin ttusb-budget/dspbootcode.bin cpia2/stv0672_vp4.bin + +#### default: $(TARGETS) clean: -rm $(TARGETS) +distclean: clean + -rmdir $(DIRS) + +install: default + -for i in $(DIRS); do mkdir /lib/firmware/$$i; done + -for i in $(TARGETS); do cp $$i /lib/firmware/$$i; done + + +###### + +mkdir: + -mkdir $(DIRS) + ihex2fw: ../../linux/firmware/ihex2fw.c gcc -Wall -o $@ $< -vicam.fw: ../../linux/firmware/vicam/firmware.H16 +vicam/firmware.fw: ../../linux/firmware/vicam/firmware.H16 mkdir + -mkdir vicam ./ihex2fw -w $< $@ -dabusb.fw: ../../linux/firmware/dabusb/firmware.HEX +dabusb/firmware.fw: ../../linux/firmware/dabusb/firmware.HEX mkdir ./ihex2fw $< $@ -ttusb-budget: ../../linux/firmware/ttusb-budget/dspbootcode.bin.ihex +ttusb-budget/dspbootcode.bin: ../../linux/firmware/ttusb-budget/dspbootcode.bin.ihex mkdir objcopy -Iihex -Obinary $< $@ -dabusb_bitstream: ../../linux/firmware/dabusb/bitstream.bin.ihex +dabusb/bitstream.bin: ../../linux/firmware/dabusb/bitstream.bin.ihex mkdir objcopy -Iihex -Obinary $< $@ -stv0672_v4: ../../linux/firmware/cpia2/stv0672_vp4.bin.ihex +cpia2/stv0672_vp4.bin: ../../linux/firmware/cpia2/stv0672_vp4.bin.ihex mkdir objcopy -Iihex -Obinary $< $@ -- cgit v1.2.3