Merge tag 'firmware_removal-4.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 15 Sep 2017 19:58:55 +0000 (12:58 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 15 Sep 2017 19:58:55 +0000 (12:58 -0700)
Pull firmware removal from Greg KH:
 "Many many years ago (at the kernel summit in Boston), we all came to
  the agreement that the firmware/ tree should be dropped from the
  kernel, and everyone use the linux-firmware package instead. For some
  minor reason, David Woodhouse didn't send the pull request at that
  point in time, and everyone forgot about this.

  The topic came up in the hallway track at the Plumbers conference this
  week, so here's a single patch that drops the whole firmware tree. The
  last firmware update was back in 2013, and all distros have been using
  linux-firmware instead since at least that year, if not before. The
  only commits to that directory since 2013 was some kbuild fixups for
  various build tool issues.

  So lets finally drop this, we don't need to lug them around in the
  kernel source tree anymore, especially as no one wants or uses them.

  This has passed build testing with 0-day, I don't think it made it
  into linux-next this week, but I figured it was good to get in before
  4.14-rc1 was out"

* tag 'firmware_removal-4.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
  firmware: delete in-kernel firmware

1  2 
Makefile

diff --combined Makefile
index 6585339586a679f0a2c82d2ca311a36269fb99b0,fee6600bed9e9e92d444f39213a37252e17e8333..7e2ca4971a39e4f91b3e80cb73b169c691fdc25b
+++ b/Makefile
@@@ -130,8 -130,8 +130,8 @@@ endi
  ifneq ($(KBUILD_OUTPUT),)
  # check that the output directory actually exists
  saved-output := $(KBUILD_OUTPUT)
 -KBUILD_OUTPUT := $(shell mkdir -p $(KBUILD_OUTPUT) && cd $(KBUILD_OUTPUT) \
 -                                                              && /bin/pwd)
 +$(shell [ -d $(KBUILD_OUTPUT) ] || mkdir -p $(KBUILD_OUTPUT))
 +KBUILD_OUTPUT := $(realpath $(KBUILD_OUTPUT))
  $(if $(KBUILD_OUTPUT),, \
       $(error failed to create output directory "$(saved-output)"))
  
@@@ -562,7 -562,7 +562,7 @@@ scripts: scripts_basic include/config/a
  
  # Objects we will link into vmlinux / subdirs we need to visit
  init-y                := init/
- drivers-y     := drivers/ sound/ firmware/
+ drivers-y     := drivers/ sound/
  net-y         := net/
  libs-y                := lib/
  core-y                := usr/
@@@ -978,7 -978,7 +978,7 @@@ ifdef CONFIG_HEADERS_CHEC
        $(Q)$(MAKE) -f $(srctree)/Makefile headers_check
  endif
  ifdef CONFIG_GDB_SCRIPTS
 -      $(Q)ln -fsn `cd $(srctree) && /bin/pwd`/scripts/gdb/vmlinux-gdb.py
 +      $(Q)ln -fsn $(abspath $(srctree)/scripts/gdb/vmlinux-gdb.py)
  endif
  ifdef CONFIG_TRIM_UNUSED_KSYMS
        $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
@@@ -1128,16 -1128,6 +1128,6 @@@ headerdep
        $(Q)find $(srctree)/include/ -name '*.h' | xargs --max-args 1 \
        $(srctree)/scripts/headerdep.pl -I$(srctree)/include
  
- # ---------------------------------------------------------------------------
- # Firmware install
- INSTALL_FW_PATH=$(INSTALL_MOD_PATH)/lib/firmware
- export INSTALL_FW_PATH
- PHONY += firmware_install
- firmware_install:
-       @mkdir -p $(objtree)/firmware
-       $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_install
  # ---------------------------------------------------------------------------
  # Kernel headers
  
@@@ -1216,7 -1206,6 +1206,6 @@@ modules: $(vmlinux-dirs) $(if $(KBUILD_
        $(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.order) > $(objtree)/modules.order
        @$(kecho) '  Building modules, stage 2.';
        $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
-       $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild
  
  modules.builtin: $(vmlinux-dirs:%=%/modules.builtin)
        $(Q)$(AWK) '!x[$$0]++' $^ > $(objtree)/modules.builtin
@@@ -1238,7 -1227,7 +1227,7 @@@ _modinst_
        @rm -rf $(MODLIB)/kernel
        @rm -f $(MODLIB)/source
        @mkdir -p $(MODLIB)/kernel
 -      @ln -s `cd $(srctree) && /bin/pwd` $(MODLIB)/source
 +      @ln -s $(abspath $(srctree)) $(MODLIB)/source
        @if [ ! $(objtree) -ef  $(MODLIB)/build ]; then \
                rm -f $(MODLIB)/build ; \
                ln -s $(CURDIR) $(MODLIB)/build ; \
  # boot script depmod is the master version.
  PHONY += _modinst_post
  _modinst_post: _modinst_
-       $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modinst
        $(call cmd,depmod)
  
  ifeq ($(CONFIG_MODULE_SIG), y)
@@@ -1375,8 -1363,6 +1363,6 @@@ help
        @echo  '* vmlinux         - Build the bare kernel'
        @echo  '* modules         - Build all modules'
        @echo  '  modules_install - Install all modules to INSTALL_MOD_PATH (default: /)'
-       @echo  '  firmware_install- Install all firmware to INSTALL_FW_PATH'
-       @echo  '                    (default: $$(INSTALL_MOD_PATH)/lib/firmware)'
        @echo  '  dir/            - Build all files in dir and below'
        @echo  '  dir/file.[ois]  - Build specified target only'
        @echo  '  dir/file.ll     - Build the LLVM assembly file'
@@@ -1468,7 -1454,7 +1454,7 @@@ $(help-board-dirs): help-%
  
  # Documentation targets
  # ---------------------------------------------------------------------------
 -DOC_TARGETS := xmldocs sgmldocs psdocs latexdocs pdfdocs htmldocs mandocs installmandocs epubdocs cleandocs linkcheckdocs
 +DOC_TARGETS := xmldocs latexdocs pdfdocs htmldocs epubdocs cleandocs linkcheckdocs
  PHONY += $(DOC_TARGETS)
  $(DOC_TARGETS): scripts_basic FORCE
        $(Q)$(MAKE) $(build)=Documentation $@
@@@ -1630,11 -1616,11 +1616,11 @@@ image_name
  # Clear a bunch of variables before executing the submake
  tools/: FORCE
        $(Q)mkdir -p $(objtree)/tools
 -      $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/
 +      $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(src)/tools/
  
  tools/%: FORCE
        $(Q)mkdir -p $(objtree)/tools
 -      $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(shell cd $(objtree) && /bin/pwd) subdir=tools -C $(src)/tools/ $*
 +      $(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abspath $(objtree)) subdir=tools -C $(src)/tools/ $*
  
  # Single targets
  # ---------------------------------------------------------------------------