[RFC v1] tree-wide: remove "select FW_LOADER" uses

Luis R. Rodriguez
2015-05-21T20:48:10Z

There are some some recursive dependency issues one can run into
when a kconfig option is selected by a driver, and then kconfig
has to figure out whether or not some dependencies are valid for
that selected option. For instance in terms of simplifying the
logic issue a best as possible on my part and its implications:

If a driver selects FW_LOADER but also has a few other selects,
kconfig will not allow another driver which also selects FW_LOADER
to negate dependency on what that original driver's extra
dependencies were.

This was recenlty discovered while working on extensions to the
firmware_class module with some code being developed [0] to make
firmware_class APIs extensible.

A possible fix to this is to change a "select FW_LOADER" to
"depends FW_LOADER". If we're going to do that we would first
need to evaluate if the recursive dependency issue is real or
not, and if it is not we should do a tree wide change from
all "select FW_LOADER" to "depend FW_LOADER".

Upon review with Paul, the recursive dependency issue is actually
real mostly because of the complexity of the amount of symbols
we handle and how we ended up deciding in logic for "select" and
"depends on" to work [1].

Paul did some git archaeological analysis of previous trends on
gramatically similar reported recursive issues and found that
the generic solution to such problems were to convert "select FOO"
to "depends on FOO". This was based on a study of 20 commits with
similar reported recursive issue reported since v2.6.36 [2].

Paul also found commit d9b19199e489 ("always enable FW_LOADER unless
EMBEDDED=y") which explains that we can then get rid of all
"select FW_LOADER" [...] and as per Paul it seems the plan to get rid
of those never materialized [2].

Paul also insists that *there is no reason* to think that current logic
of the kconfig tools, as it is currently implemented, is flawed [2].

The above history is just *one* set of reasons to remove all kernel
"select FW_LOADER" entries. Another simple reason is that since
FW_LOADER can only be disabled by an EXPERT and it defaults to y
its now a superfluous select. We will ensure things build for you
if using EXPERT but if you have selected EXPERT you should know
what run time requirements you need.

This goes build tested with an allyesconfig and allmodconfig
configuration and then disabling FW_LOADER on each build target.
This was tested on linux-next tag next-20150518.

Should this require rebasing you can regenerate the target
patches with:

for i in $(git grep "select FW_LOADER$" | \
awk -F":" '{print $1}' | sort | uniq); do \
perl -i -ne 'print if !/select FW_LOADER$/' $i; done

[0] https://lkml.org/lkml/2015/5/7/814
[1] https://lkml.org/lkml/2015/5/8/748
[2] https://lkml.org/lkml/2015/5/18/835

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
---

I realize tree-wide changes are not encourated like this, but
I am doing this as an RFC first to save a few electrons to
spare sending out 21 separate e-mails and separate reviews
and discussions on one topic alone, should there be any. If
this seems reasonable please send me your respective Acked-by's,
and I can split up into 21 patches by subsystem:

network
media
sound
scsi
drm
input
dell_rbu
crypto
bluetooth
leds
atm
staging
usb
tty
uwb
misc
pcmcia
remoteproc
arm mach-ixp4xx
cris
x86 microcode

If you wish me to just merge a bunch of these together let me
know as well.

arch/arm/mach-ixp4xx/Kconfig | 1 -
arch/cris/arch-v32/drivers/Kconfig | 1 -
arch/x86/Kconfig | 3 ---
drivers/atm/Kconfig | 2 --
drivers/bluetooth/Kconfig | 7 -------
drivers/crypto/qat/Kconfig | 1 -
drivers/firmware/Kconfig | 1 -
drivers/gpu/drm/Kconfig | 3 ---
drivers/gpu/drm/nouveau/Kconfig | 1 -
drivers/input/touchscreen/Kconfig | 1 -
drivers/leds/Kconfig | 1 -
drivers/media/dvb-frontends/Kconfig | 1 -
drivers/media/pci/saa7164/Kconfig | 1 -
drivers/media/platform/exynos4-is/Kconfig | 1 -
drivers/media/radio/Kconfig | 1 -
drivers/media/usb/as102/Kconfig | 1 -
drivers/misc/Kconfig | 1 -
drivers/misc/ti-st/Kconfig | 1 -
drivers/net/ethernet/broadcom/Kconfig | 2 --
drivers/net/ethernet/chelsio/Kconfig | 2 --
drivers/net/ethernet/myricom/Kconfig | 1 -
drivers/net/ethernet/qlogic/Kconfig | 2 --
drivers/net/ethernet/realtek/Kconfig | 1 -
drivers/net/ethernet/toshiba/Kconfig | 1 -
drivers/net/irda/Kconfig | 1 -
drivers/net/wimax/i2400m/Kconfig | 1 -
drivers/net/wireless/Kconfig | 6 ------
drivers/net/wireless/ath/ar5523/Kconfig | 1 -
drivers/net/wireless/ath/carl9170/Kconfig | 1 -
drivers/net/wireless/b43/Kconfig | 1 -
drivers/net/wireless/b43legacy/Kconfig | 1 -
drivers/net/wireless/brcm80211/Kconfig | 4 ----
drivers/net/wireless/ipw2x00/Kconfig | 2 --
drivers/net/wireless/iwlegacy/Kconfig | 1 -
drivers/net/wireless/iwlwifi/Kconfig | 1 -
drivers/net/wireless/libertas/Kconfig | 1 -
drivers/net/wireless/mwifiex/Kconfig | 3 ---
drivers/net/wireless/orinoco/Kconfig | 2 --
drivers/net/wireless/p54/Kconfig | 1 -
drivers/net/wireless/rt2x00/Kconfig | 1 -
drivers/net/wireless/rtlwifi/Kconfig | 1 -
drivers/net/wireless/ti/wl1251/Kconfig | 1 -
drivers/net/wireless/ti/wlcore/Kconfig | 1 -
drivers/net/wireless/zd1211rw/Kconfig | 1 -
drivers/pcmcia/Kconfig | 1 -
drivers/remoteproc/Kconfig | 1 -
drivers/scsi/Kconfig | 1 -
drivers/scsi/aic94xx/Kconfig | 1 -
drivers/scsi/csiostor/Kconfig | 1 -
drivers/scsi/mvsas/Kconfig | 1 -
drivers/scsi/qla2xxx/Kconfig | 1 -
drivers/staging/rtl8192e/rtl8192e/Kconfig | 1 -
drivers/staging/rtl8712/Kconfig | 1 -
drivers/staging/vt6656/Kconfig | 1 -
drivers/tty/Kconfig | 3 ---
drivers/tty/serial/Kconfig | 2 --
drivers/usb/atm/Kconfig | 3 ---
drivers/usb/misc/Kconfig | 1 -
drivers/uwb/Kconfig | 1 -
sound/drivers/Kconfig | 1 -
sound/isa/Kconfig | 5 -----
sound/pci/Kconfig | 21 ---------------------
sound/pci/hda/Kconfig | 2 --
sound/soc/sh/Kconfig | 1 -
sound/usb/Kconfig | 1 -
65 files changed, 121 deletions(-)

diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
index c342dc4..128bbac 100644
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ b/arch/arm/mach-ixp4xx/Kconfig
@@ -230,7 +230,6 @@ config IXP4XX_QMGR

config IXP4XX_NPE
tristate "IXP4xx Network Processor Engine support"
- select FW_LOADER
help
This driver supports IXP4xx built-in network coprocessors
and is automatically selected by Ethernet and HSS drivers.
diff --git a/arch/cris/arch-v32/drivers/Kconfig b/arch/cris/arch-v32/drivers/Kconfig
index 4fc16b4..575c6dd 100644
--- a/arch/cris/arch-v32/drivers/Kconfig
+++ b/arch/cris/arch-v32/drivers/Kconfig
@@ -331,7 +331,6 @@ config PCI
config ETRAX_IOP_FW_LOAD
tristate "IO-processor hotplug firmware loading support"
depends on ETRAX_ARCH_V32
- select FW_LOADER
help
Enables IO-processor hotplug firmware loading support.

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index c92fdcc..f7f8259 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1099,7 +1099,6 @@ config X86_REBOOTFIXUPS
config MICROCODE
tristate "CPU microcode loading support"
depends on CPU_SUP_AMD || CPU_SUP_INTEL
- select FW_LOADER
---help---

If you say Y here, you will be able to update the microcode on
@@ -1119,7 +1118,6 @@ config MICROCODE_INTEL
bool "Intel microcode loading support"
depends on MICROCODE
default MICROCODE
- select FW_LOADER
---help---
This options enables microcode patch loading support for Intel
processors.
@@ -1131,7 +1129,6 @@ config MICROCODE_INTEL
config MICROCODE_AMD
bool "AMD microcode loading support"
depends on MICROCODE
- select FW_LOADER
---help---
If you select this option, microcode patch loading support for AMD
processors will be enabled.
diff --git a/drivers/atm/Kconfig b/drivers/atm/Kconfig
index 31c6010..33c0558 100644
--- a/drivers/atm/Kconfig
+++ b/drivers/atm/Kconfig
@@ -328,7 +328,6 @@ config ATM_IA_DEBUG
config ATM_FORE200E
tristate "FORE Systems 200E-series"
depends on (PCI || SBUS)
- select FW_LOADER
---help---
This is a driver for the FORE Systems 200E-series ATM adapter
cards. It simultaneously supports PCA-200E and SBA-200E models
@@ -394,7 +393,6 @@ config ATM_HE_USE_SUNI
config ATM_SOLOS
tristate "Solos ADSL2+ PCI Multiport card driver"
depends on PCI
- select FW_LOADER
help
Support for the Solos multiport ADSL2+ card.

diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig
index 2e77707..389d246 100644
--- a/drivers/bluetooth/Kconfig
+++ b/drivers/bluetooth/Kconfig
@@ -7,11 +7,9 @@ config BT_INTEL

config BT_BCM
tristate
- select FW_LOADER

config BT_RTL
tristate
- select FW_LOADER

config BT_HCIBTUSB
tristate "HCI USB driver"
@@ -153,7 +151,6 @@ config BT_HCIUART_BCM
config BT_HCIBCM203X
tristate "HCI BCM203x USB driver"
depends on USB
- select FW_LOADER
help
Bluetooth HCI BCM203x USB driver.
This driver provides the firmware loading mechanism for the Broadcom
@@ -176,7 +173,6 @@ config BT_HCIBPA10X
config BT_HCIBFUSB
tristate "HCI BlueFRITZ! USB driver"
depends on USB
- select FW_LOADER
help
Bluetooth HCI BlueFRITZ! USB driver.
This driver provides support for Bluetooth USB devices with AVM
@@ -202,7 +198,6 @@ config BT_HCIDTL1
config BT_HCIBT3C
tristate "HCI BT3C (PC Card) driver"
depends on PCMCIA
- select FW_LOADER
help
Bluetooth HCI BT3C (PC Card) driver.
This driver provides support for Bluetooth PCMCIA devices with
@@ -265,7 +260,6 @@ config BT_MRVL
config BT_MRVL_SDIO
tristate "Marvell BT-over-SDIO driver"
depends on BT_MRVL && MMC
- select FW_LOADER
select WANT_DEV_COREDUMP
help
The driver for Marvell Bluetooth chipsets with SDIO interface.
@@ -280,7 +274,6 @@ config BT_MRVL_SDIO
config BT_ATH3K
tristate "Atheros firmware download driver"
depends on BT_HCIBTUSB
- select FW_LOADER
help
Bluetooth firmware download driver.
This driver loads the firmware into the Atheros Bluetooth
diff --git a/drivers/crypto/qat/Kconfig b/drivers/crypto/qat/Kconfig
index 49bede2..3bd3fd9 100644
--- a/drivers/crypto/qat/Kconfig
+++ b/drivers/crypto/qat/Kconfig
@@ -8,7 +8,6 @@ config CRYPTO_DEV_QAT
select CRYPTO_SHA1
select CRYPTO_SHA256
select CRYPTO_SHA512
- select FW_LOADER

config CRYPTO_DEV_QAT_DH895xCC
tristate "Support for Intel(R) DH895xCC"
diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
index 6517132..19a6db7 100644
--- a/drivers/firmware/Kconfig
+++ b/drivers/firmware/Kconfig
@@ -63,7 +63,6 @@ config EFI_PCDP
config DELL_RBU
tristate "BIOS update support for DELL systems via sysfs"
depends on X86
- select FW_LOADER
select FW_LOADER_USER_HELPER
help
Say m if you want to have the option of updating the BIOS for your
diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index 47f2ce8..e0a043f 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -91,7 +91,6 @@ config DRM_TDFX
config DRM_R128
tristate "ATI Rage 128"
depends on DRM && PCI
- select FW_LOADER
help
Choose this option if you have an ATI Rage 128 graphics card. If M
is selected, the module will be called r128. AGP support for
@@ -103,7 +102,6 @@ config DRM_RADEON
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
- select FW_LOADER
select DRM_KMS_HELPER
select DRM_KMS_FB_HELPER
select DRM_TTM
@@ -136,7 +134,6 @@ source "drivers/gpu/drm/i915/Kconfig"
config DRM_MGA
tristate "Matrox g200/g400"
depends on DRM && PCI
- select FW_LOADER
help
Choose this option if you have a Matrox G200, G400 or G450 graphics
card. If M is selected, the module will be called mga. AGP
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index 5ab13e7..135a5b8 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -1,7 +1,6 @@
config DRM_NOUVEAU
tristate "Nouveau (NVIDIA) cards"
depends on DRM && PCI
- select FW_LOADER
select DRM_KMS_HELPER
select DRM_KMS_FB_HELPER
select DRM_TTM
diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 05e4c6ff..e3e8a7c 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -105,7 +105,6 @@ config TOUCHSCREEN_AR1021_I2C
config TOUCHSCREEN_ATMEL_MXT
tristate "Atmel mXT I2C Touchscreen"
depends on I2C
- select FW_LOADER
help
Say Y here if you have Atmel mXT series I2C touchscreen,
such as AT42QT602240/ATMXT224, connected to your system.
diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
index ec26dd1..76f2e00 100644
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
@@ -221,7 +221,6 @@ config LEDS_LP3944
config LEDS_LP55XX_COMMON
tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
- select FW_LOADER
help
This option supports common operations for LP5521/5523/55231/5562/8501
devices.
diff --git a/drivers/media/dvb-frontends/Kconfig b/drivers/media/dvb-frontends/Kconfig
index 97c151d..085b1dd 100644
--- a/drivers/media/dvb-frontends/Kconfig
+++ b/drivers/media/dvb-frontends/Kconfig
@@ -763,7 +763,6 @@ config DVB_LGS8GL5
config DVB_LGS8GXX
tristate "Legend Silicon LGS8913/LGS8GL5/LGS8GXX DMB-TH demodulator"
depends on DVB_CORE && I2C
- select FW_LOADER
default m if !MEDIA_SUBDRV_AUTOSELECT
help
A DMB-TH tuner module. Say Y when you want to support this frontend.
diff --git a/drivers/media/pci/saa7164/Kconfig b/drivers/media/pci/saa7164/Kconfig
index a53db7d..db72970 100644
--- a/drivers/media/pci/saa7164/Kconfig
+++ b/drivers/media/pci/saa7164/Kconfig
@@ -2,7 +2,6 @@ config VIDEO_SAA7164
tristate "NXP SAA7164 support"
depends on DVB_CORE && VIDEO_DEV && PCI && I2C
select I2C_ALGOBIT
- select FW_LOADER
select VIDEO_TUNER
select VIDEO_TVEEPROM
select VIDEOBUF_DVB
diff --git a/drivers/media/platform/exynos4-is/Kconfig b/drivers/media/platform/exynos4-is/Kconfig
index b7b2e47..f54a935 100644
--- a/drivers/media/platform/exynos4-is/Kconfig
+++ b/drivers/media/platform/exynos4-is/Kconfig
@@ -60,7 +60,6 @@ config VIDEO_EXYNOS4_FIMC_IS
depends on HAS_DMA
select VIDEOBUF2_DMA_CONTIG
depends on OF
- select FW_LOADER
help
This is a V4L2 driver for Samsung EXYNOS4x12 SoC series
FIMC-IS (Imaging Subsystem).
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig
index 192f36f..631081a 100644
--- a/drivers/media/radio/Kconfig
+++ b/drivers/media/radio/Kconfig
@@ -214,7 +214,6 @@ config RADIO_WL1273
depends on I2C && VIDEO_V4L2
select MFD_CORE
select MFD_WL1273_CORE
- select FW_LOADER
---help---
Choose Y here if you have this FM radio chip.

diff --git a/drivers/media/usb/as102/Kconfig b/drivers/media/usb/as102/Kconfig
index 28aba00..5865029 100644
--- a/drivers/media/usb/as102/Kconfig
+++ b/drivers/media/usb/as102/Kconfig
@@ -1,7 +1,6 @@
config DVB_AS102
tristate "Abilis AS102 DVB receiver"
depends on DVB_CORE && USB && I2C && INPUT
- select FW_LOADER
help
Choose Y or M here if you have a device containing an AS102

diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
index 006242c..382bf64 100644
--- a/drivers/misc/Kconfig
+++ b/drivers/misc/Kconfig
@@ -489,7 +489,6 @@ config USB_SWITCH_FSA9480
config LATTICE_ECP3_CONFIG
tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
depends on SPI && SYSFS
- select FW_LOADER
default n
help
This option enables support for bitstream configuration (programming
diff --git a/drivers/misc/ti-st/Kconfig b/drivers/misc/ti-st/Kconfig
index f34dcc5..b434391 100644
--- a/drivers/misc/ti-st/Kconfig
+++ b/drivers/misc/ti-st/Kconfig
@@ -6,7 +6,6 @@ menu "Texas Instruments shared transport line discipline"
config TI_ST
tristate "Shared transport core driver"
depends on NET && GPIOLIB && TTY
- select FW_LOADER
help
This enables the shared transport core driver for TI
BT / FM and GPS combo chips. This enables protocol drivers
diff --git a/drivers/net/ethernet/broadcom/Kconfig b/drivers/net/ethernet/broadcom/Kconfig
index a6f9142..3c30944 100644
--- a/drivers/net/ethernet/broadcom/Kconfig
+++ b/drivers/net/ethernet/broadcom/Kconfig
@@ -74,7 +74,6 @@ config BNX2
tristate "QLogic bnx2 support"
depends on PCI
select CRC32
- select FW_LOADER
---help---
This driver supports QLogic bnx2 gigabit Ethernet cards.

@@ -122,7 +121,6 @@ config BNX2X
tristate "Broadcom NetXtremeII 10Gb support"
depends on PCI
select PTP_1588_CLOCK
- select FW_LOADER
select ZLIB_INFLATE
select LIBCRC32C
select MDIO
diff --git a/drivers/net/ethernet/chelsio/Kconfig b/drivers/net/ethernet/chelsio/Kconfig
index 7daa088..72ce340 100644
--- a/drivers/net/ethernet/chelsio/Kconfig
+++ b/drivers/net/ethernet/chelsio/Kconfig
@@ -49,7 +49,6 @@ config CHELSIO_T1_1G
config CHELSIO_T3
tristate "Chelsio Communications T3 10Gb Ethernet support"
depends on PCI && INET
- select FW_LOADER
select MDIO
---help---
This driver supports Chelsio T3-based gigabit and 10Gb Ethernet
@@ -69,7 +68,6 @@ config CHELSIO_T3
config CHELSIO_T4
tristate "Chelsio Communications T4/T5 Ethernet support"
depends on PCI && (IPV6 || IPV6=n)
- select FW_LOADER
select MDIO
---help---
This driver supports Chelsio T4 and T5 based gigabit, 10Gb Ethernet
diff --git a/drivers/net/ethernet/myricom/Kconfig b/drivers/net/ethernet/myricom/Kconfig
index 3932d08..07c2d4c 100644
--- a/drivers/net/ethernet/myricom/Kconfig
+++ b/drivers/net/ethernet/myricom/Kconfig
@@ -21,7 +21,6 @@ if NET_VENDOR_MYRI
config MYRI10GE
tristate "Myricom Myri-10G Ethernet support"
depends on PCI && INET
- select FW_LOADER
select CRC32
---help---
This driver supports Myricom Myri-10G Dual Protocol interface in
diff --git a/drivers/net/ethernet/qlogic/Kconfig b/drivers/net/ethernet/qlogic/Kconfig
index d49cba1..23efb7f 100644
--- a/drivers/net/ethernet/qlogic/Kconfig
+++ b/drivers/net/ethernet/qlogic/Kconfig
@@ -30,7 +30,6 @@ config QLA3XXX
config QLCNIC
tristate "QLOGIC QLCNIC 1/10Gb Converged Ethernet NIC Support"
depends on PCI
- select FW_LOADER
---help---
This driver supports QLogic QLE8240 and QLE8242 Converged Ethernet
devices.
@@ -89,7 +88,6 @@ config QLGE
config NETXEN_NIC
tristate "NetXen Multi port (1/10) Gigabit Ethernet NIC"
depends on PCI
- select FW_LOADER
---help---
This enables the support for NetXen's Gigabit Ethernet card.

diff --git a/drivers/net/ethernet/realtek/Kconfig b/drivers/net/ethernet/realtek/Kconfig
index ae5d027..e61f18f 100644
--- a/drivers/net/ethernet/realtek/Kconfig
+++ b/drivers/net/ethernet/realtek/Kconfig
@@ -103,7 +103,6 @@ config 8139_OLD_RX_RESET
config R8169
tristate "Realtek 8169 gigabit ethernet support"
depends on PCI
- select FW_LOADER
select CRC32
select MII
---help---
diff --git a/drivers/net/ethernet/toshiba/Kconfig b/drivers/net/ethernet/toshiba/Kconfig
index 5d244b6..ee7a7a7 100644
--- a/drivers/net/ethernet/toshiba/Kconfig
+++ b/drivers/net/ethernet/toshiba/Kconfig
@@ -43,7 +43,6 @@ config GELIC_WIRELESS
config SPIDER_NET
tristate "Spider Gigabit Ethernet driver"
depends on PCI && PPC_IBM_CELL_BLADE
- select FW_LOADER
select SUNGEM_PHY
---help---
This driver supports the Gigabit Ethernet chips present on the
diff --git a/drivers/net/irda/Kconfig b/drivers/net/irda/Kconfig
index a2c227b..52e8c92 100644
--- a/drivers/net/irda/Kconfig
+++ b/drivers/net/irda/Kconfig
@@ -243,7 +243,6 @@ comment "FIR device drivers"
config USB_IRDA
tristate "IrDA USB dongles"
depends on IRDA && USB
- select FW_LOADER
---help---
Say Y here if you want to build support for the USB IrDA FIR Dongle
device driver. To compile it as a module, choose M here: the module
diff --git a/drivers/net/wimax/i2400m/Kconfig b/drivers/net/wimax/i2400m/Kconfig
index 71453db..c35a6936 100644
--- a/drivers/net/wimax/i2400m/Kconfig
+++ b/drivers/net/wimax/i2400m/Kconfig
@@ -2,7 +2,6 @@
config WIMAX_I2400M
tristate
depends on WIMAX
- select FW_LOADER

comment "Enable USB support to see WiMAX USB drivers"
depends on USB = n
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 16604bd..1d7a035 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -35,7 +35,6 @@ config PCMCIA_RAYCS
config LIBERTAS_THINFIRM
tristate "Marvell 8xxx Libertas WLAN driver support with thin firmware"
depends on MAC80211
- select FW_LOADER
---help---
A library for Marvell Libertas 8xxx devices using thinfirm.

@@ -76,7 +75,6 @@ config ATMEL
depends on CFG80211 && (PCI || PCMCIA)
select WIRELESS_EXT
select WEXT_PRIV
- select FW_LOADER
select CRC32
---help---
A driver 802.11b wireless cards based on the Atmel fast-vnet
@@ -100,7 +98,6 @@ config PCMCIA_ATMEL
tristate "Atmel at76c502/at76c504 PCMCIA cards"
depends on ATMEL && PCMCIA
select WIRELESS_EXT
- select FW_LOADER
select CRC32
---help---
Enable support for PCMCIA cards containing the
@@ -109,7 +106,6 @@ config PCMCIA_ATMEL
config AT76C50X_USB
tristate "Atmel at76c503/at76c505/at76c505a USB cards"
depends on MAC80211 && USB
- select FW_LOADER
---help---
Enable support for USB Wireless devices using Atmel at76c503,
at76c505 or at76c505a chips.
@@ -152,7 +148,6 @@ config PRISM54
select WIRELESS_EXT
select WEXT_SPY
select WEXT_PRIV
- select FW_LOADER
---help---
This enables support for FullMAC PCI/Cardbus prism54 devices. This
driver is now deprecated in favor for the SoftMAC driver, p54pci.
@@ -171,7 +166,6 @@ config USB_ZD1201
depends on CFG80211 && USB
select WIRELESS_EXT
select WEXT_PRIV
- select FW_LOADER
---help---
Say Y if you want to use wireless LAN adapters based on the ZyDAS
ZD1201 chip.
diff --git a/drivers/net/wireless/ath/ar5523/Kconfig b/drivers/net/wireless/ath/ar5523/Kconfig
index 0d320cc..d454af5 100644
--- a/drivers/net/wireless/ath/ar5523/Kconfig
+++ b/drivers/net/wireless/ath/ar5523/Kconfig
@@ -2,7 +2,6 @@ config AR5523
tristate "Atheros AR5523 wireless driver support"
depends on MAC80211 && USB
select ATH_COMMON
- select FW_LOADER
---help---
This module add support for AR5523 based USB dongles such as D-Link
DWL-G132, Netgear WPN111 and many more.
diff --git a/drivers/net/wireless/ath/carl9170/Kconfig b/drivers/net/wireless/ath/carl9170/Kconfig
index 1a796e5..d89abac 100644
--- a/drivers/net/wireless/ath/carl9170/Kconfig
+++ b/drivers/net/wireless/ath/carl9170/Kconfig
@@ -2,7 +2,6 @@ config CARL9170
tristate "Linux Community AR9170 802.11n USB support"
depends on USB && MAC80211
select ATH_COMMON
- select FW_LOADER
select CRC32
help
This is another driver for the Atheros "otus" 802.11n USB devices.
diff --git a/drivers/net/wireless/b43/Kconfig b/drivers/net/wireless/b43/Kconfig
index 759fb8d..b47afb8 100644
--- a/drivers/net/wireless/b43/Kconfig
+++ b/drivers/net/wireless/b43/Kconfig
@@ -3,7 +3,6 @@ config B43
depends on (BCMA_POSSIBLE || SSB_POSSIBLE) && MAC80211 && HAS_DMA
select BCMA if B43_BCMA
select SSB if B43_SSB
- select FW_LOADER
---help---
b43 is a driver for the Broadcom 43xx series wireless devices.

diff --git a/drivers/net/wireless/b43legacy/Kconfig b/drivers/net/wireless/b43legacy/Kconfig
index 1ffa288..4391c66 100644
--- a/drivers/net/wireless/b43legacy/Kconfig
+++ b/drivers/net/wireless/b43legacy/Kconfig
@@ -2,7 +2,6 @@ config B43LEGACY
tristate "Broadcom 43xx-legacy wireless support (mac80211 stack)"
depends on SSB_POSSIBLE && MAC80211 && HAS_DMA
select SSB
- select FW_LOADER
---help---
b43legacy is a driver for 802.11b devices from Broadcom (BCM4301 and
BCM4303) and early model 802.11g chips (BCM4306 Ver. 2) used in the
diff --git a/drivers/net/wireless/brcm80211/Kconfig b/drivers/net/wireless/brcm80211/Kconfig
index fe3dc12..4901985 100644
--- a/drivers/net/wireless/brcm80211/Kconfig
+++ b/drivers/net/wireless/brcm80211/Kconfig
@@ -9,7 +9,6 @@ config BRCMSMAC
select NEW_LEDS if BCMA_DRIVER_GPIO
select LEDS_CLASS if BCMA_DRIVER_GPIO
select BRCMUTIL
- select FW_LOADER
select CORDIC
---help---
This module adds support for PCIe wireless adapters based on Broadcom
@@ -38,7 +37,6 @@ config BRCMFMAC_SDIO
depends on (MMC = y || MMC = BRCMFMAC)
depends on BRCMFMAC
select BRCMFMAC_PROTO_BCDC
- select FW_LOADER
default y
---help---
This option enables the SDIO bus interface support for Broadcom
@@ -50,7 +48,6 @@ config BRCMFMAC_USB
depends on (USB = y || USB = BRCMFMAC)
depends on BRCMFMAC
select BRCMFMAC_PROTO_BCDC
- select FW_LOADER
---help---
This option enables the USB bus interface support for Broadcom
IEEE802.11n embedded FullMAC WLAN driver. Say Y if you want to
@@ -62,7 +59,6 @@ config BRCMFMAC_PCIE
depends on PCI
depends on HAS_DMA
select BRCMFMAC_PROTO_MSGBUF
- select FW_LOADER
---help---
This option enables the PCIE bus interface support for Broadcom
IEEE802.11ac embedded FullMAC WLAN driver. Say Y if you want to
diff --git a/drivers/net/wireless/ipw2x00/Kconfig b/drivers/net/wireless/ipw2x00/Kconfig
index d6ec44d..ed43128 100644
--- a/drivers/net/wireless/ipw2x00/Kconfig
+++ b/drivers/net/wireless/ipw2x00/Kconfig
@@ -8,7 +8,6 @@ config IPW2100
select WIRELESS_EXT
select WEXT_SPY
select WEXT_PRIV
- select FW_LOADER
select LIB80211
select LIBIPW
---help---
@@ -70,7 +69,6 @@ config IPW2200
select WIRELESS_EXT
select WEXT_SPY
select WEXT_PRIV
- select FW_LOADER
select LIB80211
select LIBIPW
---help---
diff --git a/drivers/net/wireless/iwlegacy/Kconfig b/drivers/net/wireless/iwlegacy/Kconfig
index fb91972..faa68c9 100644
--- a/drivers/net/wireless/iwlegacy/Kconfig
+++ b/drivers/net/wireless/iwlegacy/Kconfig
@@ -1,6 +1,5 @@
config IWLEGACY
tristate
- select FW_LOADER
select NEW_LEDS
select LEDS_CLASS
select LEDS_TRIGGERS
diff --git a/drivers/net/wireless/iwlwifi/Kconfig b/drivers/net/wireless/iwlwifi/Kconfig
index 99f9760..e01e3c4 100644
--- a/drivers/net/wireless/iwlwifi/Kconfig
+++ b/drivers/net/wireless/iwlwifi/Kconfig
@@ -1,7 +1,6 @@
config IWLWIFI
tristate "Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) "
depends on PCI && MAC80211 && HAS_IOMEM
- select FW_LOADER
---help---
Select to build the driver supporting the:

diff --git a/drivers/net/wireless/libertas/Kconfig b/drivers/net/wireless/libertas/Kconfig
index e6268ce..73c91ae 100644
--- a/drivers/net/wireless/libertas/Kconfig
+++ b/drivers/net/wireless/libertas/Kconfig
@@ -4,7 +4,6 @@ config LIBERTAS
select WIRELESS_EXT
select WEXT_SPY
select LIB80211
- select FW_LOADER
---help---
A library for Marvell Libertas 8xxx devices.

diff --git a/drivers/net/wireless/mwifiex/Kconfig b/drivers/net/wireless/mwifiex/Kconfig
index aa01c9b..2e6bb9d 100644
--- a/drivers/net/wireless/mwifiex/Kconfig
+++ b/drivers/net/wireless/mwifiex/Kconfig
@@ -11,7 +11,6 @@ config MWIFIEX
config MWIFIEX_SDIO
tristate "Marvell WiFi-Ex Driver for SD8786/SD8787/SD8797/SD8887/SD8897"
depends on MWIFIEX && MMC
- select FW_LOADER
---help---
This adds support for wireless adapters based on Marvell
8786/8787/8797/8887/8897 chipsets with SDIO interface.
@@ -22,7 +21,6 @@ config MWIFIEX_SDIO
config MWIFIEX_PCIE
tristate "Marvell WiFi-Ex Driver for PCIE 8766/8897"
depends on MWIFIEX && PCI
- select FW_LOADER
---help---
This adds support for wireless adapters based on Marvell
8766/8897 chipsets with PCIe interface.
@@ -33,7 +31,6 @@ config MWIFIEX_PCIE
config MWIFIEX_USB
tristate "Marvell WiFi-Ex Driver for USB8766/8797/8897"
depends on MWIFIEX && USB
- select FW_LOADER
---help---
This adds support for wireless adapters based on Marvell
8797/8897 chipset with USB interface.
diff --git a/drivers/net/wireless/orinoco/Kconfig b/drivers/net/wireless/orinoco/Kconfig
index f6fa3f4..bf8c1ad 100644
--- a/drivers/net/wireless/orinoco/Kconfig
+++ b/drivers/net/wireless/orinoco/Kconfig
@@ -6,7 +6,6 @@ config HERMES
select WIRELESS_EXT
select WEXT_SPY
select WEXT_PRIV
- select FW_LOADER
select CRYPTO
select CRYPTO_MICHAEL_MIC
---help---
@@ -137,6 +136,5 @@ config PCMCIA_SPECTRUM
config ORINOCO_USB
tristate "Agere Orinoco USB support"
depends on USB && HERMES
- select FW_LOADER
---help---
This driver is for USB versions of the Agere Orinoco card.
diff --git a/drivers/net/wireless/p54/Kconfig b/drivers/net/wireless/p54/Kconfig
index cdafb8c..f2cdec8 100644
--- a/drivers/net/wireless/p54/Kconfig
+++ b/drivers/net/wireless/p54/Kconfig
@@ -1,7 +1,6 @@
config P54_COMMON
tristate "Softmac Prism54 support"
depends on MAC80211
- select FW_LOADER
select CRC_CCITT
---help---
This is common code for isl38xx/stlc45xx based modules.
diff --git a/drivers/net/wireless/rt2x00/Kconfig b/drivers/net/wireless/rt2x00/Kconfig
index 2b4ef25..9766408 100644
--- a/drivers/net/wireless/rt2x00/Kconfig
+++ b/drivers/net/wireless/rt2x00/Kconfig
@@ -244,7 +244,6 @@ config RT2X00_LIB

config RT2X00_LIB_FIRMWARE
bool
- select FW_LOADER

config RT2X00_LIB_CRYPTO
bool
diff --git a/drivers/net/wireless/rtlwifi/Kconfig b/drivers/net/wireless/rtlwifi/Kconfig
index 5cf509d..8941e3e 100644
--- a/drivers/net/wireless/rtlwifi/Kconfig
+++ b/drivers/net/wireless/rtlwifi/Kconfig
@@ -119,7 +119,6 @@ config RTL8192CU

config RTLWIFI
tristate
- select FW_LOADER

config RTLWIFI_PCI
tristate
diff --git a/drivers/net/wireless/ti/wl1251/Kconfig b/drivers/net/wireless/ti/wl1251/Kconfig
index 477a206..f1f6c4f 100644
--- a/drivers/net/wireless/ti/wl1251/Kconfig
+++ b/drivers/net/wireless/ti/wl1251/Kconfig
@@ -1,7 +1,6 @@
menuconfig WL1251
tristate "TI wl1251 driver support"
depends on MAC80211
- select FW_LOADER
select CRC7
---help---
This will enable TI wl1251 driver support. The drivers make
diff --git a/drivers/net/wireless/ti/wlcore/Kconfig b/drivers/net/wireless/ti/wlcore/Kconfig
index 7c09954..538fbd9 100644
--- a/drivers/net/wireless/ti/wlcore/Kconfig
+++ b/drivers/net/wireless/ti/wlcore/Kconfig
@@ -1,7 +1,6 @@
config WLCORE
tristate "TI wlcore support"
depends on WL_TI && MAC80211
- select FW_LOADER
---help---
This module contains the main code for TI WLAN chips. It abstracts
hardware-specific differences among different chipset families.
diff --git a/drivers/net/wireless/zd1211rw/Kconfig b/drivers/net/wireless/zd1211rw/Kconfig
index 95920581..eecc4ed 100644
--- a/drivers/net/wireless/zd1211rw/Kconfig
+++ b/drivers/net/wireless/zd1211rw/Kconfig
@@ -1,7 +1,6 @@
config ZD1211RW
tristate "ZyDAS ZD1211/ZD1211B USB-wireless support"
depends on USB && MAC80211
- select FW_LOADER
---help---
This is a driver for the ZyDAS ZD1211/ZD1211B wireless
chip, present in many USB-wireless adapters.
diff --git a/drivers/pcmcia/Kconfig b/drivers/pcmcia/Kconfig
index a65f821..d3bbb11 100644
--- a/drivers/pcmcia/Kconfig
+++ b/drivers/pcmcia/Kconfig
@@ -37,7 +37,6 @@ config PCMCIA
config PCMCIA_LOAD_CIS
bool "Load CIS updates from userspace"
depends on PCMCIA
- select FW_LOADER
default y
help
Some PCMCIA cards require an updated Card Information Structure (CIS)
diff --git a/drivers/remoteproc/Kconfig b/drivers/remoteproc/Kconfig
index 5e343ba..71ee9e3 100644
--- a/drivers/remoteproc/Kconfig
+++ b/drivers/remoteproc/Kconfig
@@ -5,7 +5,6 @@ config REMOTEPROC
tristate
depends on HAS_DMA
select CRC32
- select FW_LOADER
select VIRTIO
select VIRTUALIZATION

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index b021bcb..27a3c3e 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -1091,7 +1091,6 @@ config SCSI_SYM53C8XX_MMIO
config SCSI_IPR
tristate "IBM Power Linux RAID adapter support"
depends on PCI && SCSI && ATA
- select FW_LOADER
---help---
This driver supports the IBM Power Linux family RAID adapters.
This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
diff --git a/drivers/scsi/aic94xx/Kconfig b/drivers/scsi/aic94xx/Kconfig
index c83fe75..0ed391d 100644
--- a/drivers/scsi/aic94xx/Kconfig
+++ b/drivers/scsi/aic94xx/Kconfig
@@ -28,7 +28,6 @@ config SCSI_AIC94XX
tristate "Adaptec AIC94xx SAS/SATA support"
depends on PCI
select SCSI_SAS_LIBSAS
- select FW_LOADER
help
This driver supports Adaptec's SAS/SATA 3Gb/s 64 bit PCI-X
AIC94xx chip based host adapters.
diff --git a/drivers/scsi/csiostor/Kconfig b/drivers/scsi/csiostor/Kconfig
index 7c7e508..daf3524 100644
--- a/drivers/scsi/csiostor/Kconfig
+++ b/drivers/scsi/csiostor/Kconfig
@@ -2,7 +2,6 @@ config SCSI_CHELSIO_FCOE
tristate "Chelsio Communications FCoE support"
depends on PCI && SCSI
depends on SCSI_FC_ATTRS
- select FW_LOADER
help
This driver supports FCoE Offload functionality over
Chelsio T4-based 10Gb Converged Network Adapters.
diff --git a/drivers/scsi/mvsas/Kconfig b/drivers/scsi/mvsas/Kconfig
index 78f7e20..280db51 100644
--- a/drivers/scsi/mvsas/Kconfig
+++ b/drivers/scsi/mvsas/Kconfig
@@ -29,7 +29,6 @@ config SCSI_MVSAS
tristate "Marvell 88SE64XX/88SE94XX SAS/SATA support"
depends on PCI
select SCSI_SAS_LIBSAS
- select FW_LOADER
help
This driver supports Marvell's SAS/SATA 3Gb/s PCI-E 88SE64XX and 6Gb/s
PCI-E 88SE94XX chip based host adapters.
diff --git a/drivers/scsi/qla2xxx/Kconfig b/drivers/scsi/qla2xxx/Kconfig
index 33f60c9..2bbe0c3 100644
--- a/drivers/scsi/qla2xxx/Kconfig
+++ b/drivers/scsi/qla2xxx/Kconfig
@@ -2,7 +2,6 @@ config SCSI_QLA_FC
tristate "QLogic QLA2XXX Fibre Channel Support"
depends on PCI && SCSI
depends on SCSI_FC_ATTRS
- select FW_LOADER
---help---
This qla2xxx driver supports all QLogic Fibre Channel
PCI and PCIe host adapters.
diff --git a/drivers/staging/rtl8192e/rtl8192e/Kconfig b/drivers/staging/rtl8192e/rtl8192e/Kconfig
index 282e293..ad82bc3 100644
--- a/drivers/staging/rtl8192e/rtl8192e/Kconfig
+++ b/drivers/staging/rtl8192e/rtl8192e/Kconfig
@@ -5,5 +5,4 @@ config RTL8192E
select WIRELESS_EXT
select WEXT_PRIV
select CRYPTO
- select FW_LOADER
---help---
diff --git a/drivers/staging/rtl8712/Kconfig b/drivers/staging/rtl8712/Kconfig
index f160eee..b94b0f0 100644
--- a/drivers/staging/rtl8712/Kconfig
+++ b/drivers/staging/rtl8712/Kconfig
@@ -3,7 +3,6 @@ config R8712U
depends on WLAN && USB
select WIRELESS_EXT
select WEXT_PRIV
- select FW_LOADER
---help---
This option adds the Realtek RTL8712 USB device such as the D-Link DWA-130.
If built as a module, it will be called r8712u.
diff --git a/drivers/staging/vt6656/Kconfig b/drivers/staging/vt6656/Kconfig
index b602ef1..142e231 100644
--- a/drivers/staging/vt6656/Kconfig
+++ b/drivers/staging/vt6656/Kconfig
@@ -1,7 +1,6 @@
config VT6656
tristate "VIA Technologies VT6656 support"
depends on MAC80211 && USB && WLAN && m
- select FW_LOADER
---help---
This is a vendor-written driver for VIA VT6656.

diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
index c01f450..17c87a9 100644
--- a/drivers/tty/Kconfig
+++ b/drivers/tty/Kconfig
@@ -210,7 +210,6 @@ config ROCKETPORT
config CYCLADES
tristate "Cyclades async mux support"
depends on SERIAL_NONSTANDARD && (PCI || ISA)
- select FW_LOADER
---help---
This driver supports Cyclades Z and Y multiserial boards.
You would need something like this to connect more than two modems to
@@ -239,7 +238,6 @@ config CYZ_INTR
config MOXA_INTELLIO
tristate "Moxa Intellio support"
depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI)
- select FW_LOADER
help
Say Y here if you have a Moxa Intellio multiport serial card.

@@ -307,7 +305,6 @@ config NOZOMI
config ISI
tristate "Multi-Tech multiport card support"
depends on SERIAL_NONSTANDARD && PCI
- select FW_LOADER
help
This is a driver for the Multi-Tech cards which provide several
serial ports. The driver is experimental and can currently only be
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index 43b61f8..e6556bf 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -931,7 +931,6 @@ config SERIAL_ICOM
tristate "IBM Multiport Serial Adapter"
depends on PCI && PPC_PSERIES
select SERIAL_CORE
- select FW_LOADER
help
This driver is for a family of multiport serial adapters
including 2 port RVX, 2 port internal modem, 4 port internal
@@ -1158,7 +1157,6 @@ config SERIAL_QE
tristate "Freescale QUICC Engine serial port support"
depends on QUICC_ENGINE
select SERIAL_CORE
- select FW_LOADER
default n
help
This driver supports the QE serial ports on Freescale embedded
diff --git a/drivers/usb/atm/Kconfig b/drivers/usb/atm/Kconfig
index 0f92294..ec577f8 100644
--- a/drivers/usb/atm/Kconfig
+++ b/drivers/usb/atm/Kconfig
@@ -19,7 +19,6 @@ if USB_ATM

config USB_SPEEDTOUCH
tristate "Speedtouch USB support"
- select FW_LOADER
help
Say Y here if you have an SpeedTouch USB or SpeedTouch 330
modem. In order to use your modem you will need to install the
@@ -31,7 +30,6 @@ config USB_SPEEDTOUCH

config USB_CXACRU
tristate "Conexant AccessRunner USB support"
- select FW_LOADER
help
Say Y here if you have an ADSL USB modem based on the Conexant
AccessRunner chipset. In order to use your modem you will need to
@@ -43,7 +41,6 @@ config USB_CXACRU

config USB_UEAGLEATM
tristate "ADI 930 and eagle USB DSL modem"
- select FW_LOADER
help
Say Y here if you have an ADSL USB modem based on the ADI 930
or eagle chipset. In order to use your modem you will need to
diff --git a/drivers/usb/misc/Kconfig b/drivers/usb/misc/Kconfig
index f7a7fc2..84eda08 100644
--- a/drivers/usb/misc/Kconfig
+++ b/drivers/usb/misc/Kconfig
@@ -214,7 +214,6 @@ config USB_EHSET_TEST_FIXTURE

config USB_ISIGHTFW
tristate "iSight firmware loading support"
- select FW_LOADER
help
This driver loads firmware for USB Apple iSight cameras, allowing
them to be driven by the USB video class driver available at
diff --git a/drivers/uwb/Kconfig b/drivers/uwb/Kconfig
index c204094..a16b240 100644
--- a/drivers/uwb/Kconfig
+++ b/drivers/uwb/Kconfig
@@ -58,7 +58,6 @@ config UWB_WHCI
config UWB_I1480U
tristate "Support for Intel Wireless UWB Link 1480 HWA"
depends on UWB_HWA
- select FW_LOADER
help
This driver enables support for the i1480 when connected via
USB. It consists of a firmware uploader that will enable it
diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig
index 8545da9..5bba047 100644
--- a/sound/drivers/Kconfig
+++ b/sound/drivers/Kconfig
@@ -14,7 +14,6 @@ config SND_OPL4_LIB

config SND_VX_LIB
tristate
- select FW_LOADER
select SND_HWDEP
select SND_PCM

diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig
index 0216475..82349f9 100644
--- a/sound/isa/Kconfig
+++ b/sound/isa/Kconfig
@@ -383,7 +383,6 @@ config SND_SBAWE
config SND_SB16_CSP
bool "Sound Blaster 16/AWE CSP support"
depends on (SND_SB16 || SND_SBAWE) && (BROKEN || !PPC)
- select FW_LOADER
help
Say Y here to include support for the CSP core. This special
coprocessor can do variable tasks like various compression and
@@ -393,7 +392,6 @@ config SND_SSCAPE
tristate "Ensoniq SoundScape driver"
select SND_MPU401_UART
select SND_WSS_LIB
- select FW_LOADER
help
Say Y here to include support for Ensoniq SoundScape
and Ensoniq OEM soundcards.
@@ -412,7 +410,6 @@ config SND_SSCAPE

config SND_WAVEFRONT
tristate "Turtle Beach Maui,Tropez,Tropez+ (Wavefront)"
- select FW_LOADER
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_WSS_LIB
@@ -426,7 +423,6 @@ config SND_WAVEFRONT
config SND_MSND_PINNACLE
tristate "Turtle Beach MultiSound Pinnacle/Fiji driver"
depends on X86
- select FW_LOADER
select SND_MPU401_UART
select SND_PCM
help
@@ -439,7 +435,6 @@ config SND_MSND_PINNACLE
config SND_MSND_CLASSIC
tristate "Support for Turtle Beach MultiSound Classic, Tahiti, Monterey"
depends on X86
- select FW_LOADER
select SND_MPU401_UART
select SND_PCM
help
diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig
index edfc1b8..f357a3d 100644
--- a/sound/pci/Kconfig
+++ b/sound/pci/Kconfig
@@ -63,7 +63,6 @@ config SND_ALI5451
config SND_ASIHPI
tristate "AudioScience ASIxxxx"
depends on X86
- select FW_LOADER
select SND_PCM
select SND_HWDEP
help
@@ -257,7 +256,6 @@ config SND_CS46XX
tristate "Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x"
select SND_RAWMIDI
select SND_AC97_CODEC
- select FW_LOADER
help
Say Y here to include support for Cirrus Logic CS4610/CS4612/
CS4614/CS4615/CS4622/CS4624/CS4630/CS4280 chips.
@@ -314,7 +312,6 @@ config SND_CTXFI

config SND_DARLA20
tristate "(Echoaudio) Darla20"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Darla.
@@ -324,7 +321,6 @@ config SND_DARLA20

config SND_GINA20
tristate "(Echoaudio) Gina20"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Gina.
@@ -334,7 +330,6 @@ config SND_GINA20

config SND_LAYLA20
tristate "(Echoaudio) Layla20"
- select FW_LOADER
select SND_RAWMIDI
select SND_PCM
help
@@ -345,7 +340,6 @@ config SND_LAYLA20

config SND_DARLA24
tristate "(Echoaudio) Darla24"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Darla24.
@@ -355,7 +349,6 @@ config SND_DARLA24

config SND_GINA24
tristate "(Echoaudio) Gina24"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Gina24.
@@ -365,7 +358,6 @@ config SND_GINA24

config SND_LAYLA24
tristate "(Echoaudio) Layla24"
- select FW_LOADER
select SND_RAWMIDI
select SND_PCM
help
@@ -376,7 +368,6 @@ config SND_LAYLA24

config SND_MONA
tristate "(Echoaudio) Mona"
- select FW_LOADER
select SND_RAWMIDI
select SND_PCM
help
@@ -387,7 +378,6 @@ config SND_MONA

config SND_MIA
tristate "(Echoaudio) Mia"
- select FW_LOADER
select SND_RAWMIDI
select SND_PCM
help
@@ -398,7 +388,6 @@ config SND_MIA

config SND_ECHO3G
tristate "(Echoaudio) 3G cards"
- select FW_LOADER
select SND_RAWMIDI
select SND_PCM
help
@@ -409,7 +398,6 @@ config SND_ECHO3G

config SND_INDIGO
tristate "(Echoaudio) Indigo"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Indigo.
@@ -419,7 +407,6 @@ config SND_INDIGO

config SND_INDIGOIO
tristate "(Echoaudio) Indigo IO"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Indigo IO.
@@ -429,7 +416,6 @@ config SND_INDIGOIO

config SND_INDIGODJ
tristate "(Echoaudio) Indigo DJ"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Indigo DJ.
@@ -439,7 +425,6 @@ config SND_INDIGODJ

config SND_INDIGOIOX
tristate "(Echoaudio) Indigo IOx"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Indigo IOx.
@@ -449,7 +434,6 @@ config SND_INDIGOIOX

config SND_INDIGODJX
tristate "(Echoaudio) Indigo DJx"
- select FW_LOADER
select SND_PCM
help
Say 'Y' or 'M' to include support for Echoaudio Indigo DJx.
@@ -459,7 +443,6 @@ config SND_INDIGODJX

config SND_EMU10K1
tristate "Emu10k1 (SB Live!, Audigy, E-mu APS)"
- select FW_LOADER
select SND_HWDEP
select SND_RAWMIDI
select SND_AC97_CODEC
@@ -581,7 +564,6 @@ config SND_FM801_TEA575X_BOOL

config SND_HDSP
tristate "RME Hammerfall DSP Audio"
- select FW_LOADER
select SND_HWDEP
select SND_RAWMIDI
select SND_PCM
@@ -720,7 +702,6 @@ config SND_MAESTRO3_INPUT

config SND_MIXART
tristate "Digigram miXart"
- select FW_LOADER
select SND_HWDEP
select SND_PCM
help
@@ -741,7 +722,6 @@ config SND_NM256

config SND_PCXHR
tristate "Digigram PCXHR"
- select FW_LOADER
select SND_PCM
select SND_HWDEP
help
@@ -752,7 +732,6 @@ config SND_PCXHR

config SND_RIPTIDE
tristate "Conexant Riptide"
- select FW_LOADER
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_AC97_CODEC
diff --git a/sound/pci/hda/Kconfig b/sound/pci/hda/Kconfig
index 117bf5c..36db8e3 100644
--- a/sound/pci/hda/Kconfig
+++ b/sound/pci/hda/Kconfig
@@ -86,7 +86,6 @@ config SND_HDA_INPUT_BEEP_MODE

config SND_HDA_PATCH_LOADER
bool "Support initialization patch loading for HD-audio"
- select FW_LOADER
select SND_HDA_RECONFIG
help
Say Y here to allow the HD-audio driver to load a pseudo
@@ -193,7 +192,6 @@ config SND_HDA_CODEC_CA0132_DSP
bool "Support new DSP code for CA0132 codec"
depends on SND_HDA_CODEC_CA0132
select SND_HDA_DSP_LOADER
- select FW_LOADER
help
Say Y here to enable the DSP for Creative CA0132 for extended
features like equalizer or echo cancellation.
diff --git a/sound/soc/sh/Kconfig b/sound/soc/sh/Kconfig
index 07114b0..0856d5e 100644
--- a/sound/soc/sh/Kconfig
+++ b/sound/soc/sh/Kconfig
@@ -32,7 +32,6 @@ config SND_SOC_SH4_SIU
select DMA_ENGINE
select DMADEVICES
select SH_DMAE
- select FW_LOADER

config SND_SOC_RCAR
tristate "R-Car series SRU/SCU/SSIU/SSI support"
diff --git a/sound/usb/Kconfig b/sound/usb/Kconfig
index a452ad7..50bd312 100644
--- a/sound/usb/Kconfig
+++ b/sound/usb/Kconfig
@@ -103,7 +103,6 @@ config SND_USB_US122L

config SND_USB_6FIRE
tristate "TerraTec DMX 6Fire USB"
- select FW_LOADER
select BITREVERSE
select SND_RAWMIDI
select SND_PCM
--
2.3.2.209.gd67f9d5.dirty