--- a/local-symbols
+++ b/local-symbols
-@@ -388,45 +388,6 @@ USB_IPHETH=
- USB_SIERRA_NET=
+@@ -412,43 +412,6 @@ USB_SIERRA_NET=
USB_VL600=
USB_NET_CH9200=
+ USB_NET_AQC111=
-SSB_POSSIBLE=
-SSB=
-SSB_SPROM=
-SSB_SDIOHOST_POSSIBLE=
-SSB_SDIOHOST=
-SSB_HOST_SOC=
--SSB_SILENT=
--SSB_DEBUG=
-SSB_SERIAL=
-SSB_DRIVER_PCICORE_POSSIBLE=
-SSB_DRIVER_PCICORE=
-BCMA_DRIVER_GMAC_CMN=
-BCMA_DRIVER_GPIO=
-BCMA_DEBUG=
- NFC=
- NFC_DIGITAL=
- NFC_NCI=
+ USB_ACM=
+ USB_PRINTER=
+ USB_WDM=
+--- a/drivers/net/wireless/broadcom/b43/Kconfig
++++ b/drivers/net/wireless/broadcom/b43/Kconfig
+@@ -63,21 +63,21 @@ endchoice
+ config B43_PCI_AUTOSELECT
+ bool
+ depends on B43 && SSB_PCIHOST_POSSIBLE
+- select SSB_PCIHOST
+- select SSB_B43_PCI_BRIDGE
++ depends on SSB_PCIHOST
++ depends on SSB_B43_PCI_BRIDGE
+ default y
+
+ # Auto-select SSB PCICORE driver, if possible
+ config B43_PCICORE_AUTOSELECT
+ bool
+ depends on B43 && SSB_DRIVER_PCICORE_POSSIBLE
+- select SSB_DRIVER_PCICORE
++ depends on SSB_DRIVER_PCICORE
+ default y
+
+ config B43_SDIO
+ bool "Broadcom 43xx SDIO device support"
+ depends on B43 && B43_SSB && SSB_SDIOHOST_POSSIBLE
+- select SSB_SDIOHOST
++ depends on SSB_SDIOHOST
+ ---help---
+ Broadcom 43xx device support for Soft-MAC SDIO devices.
+
+@@ -96,13 +96,13 @@ config B43_SDIO
+ config B43_BCMA_PIO
+ bool
+ depends on B43 && B43_BCMA
+- select BCMA_BLOCKIO
++ depends on BCMA_BLOCKIO
+ default y
+
+ config B43_PIO
+ bool
+ depends on B43 && B43_SSB
+- select SSB_BLOCKIO
++ depends on SSB_BLOCKIO
+ default y
+
+ config B43_PHY_G
--- a/drivers/net/wireless/broadcom/b43/main.c
+++ b/drivers/net/wireless/broadcom/b43/main.c
-@@ -2876,7 +2876,7 @@ static struct ssb_device *b43_ssb_gpio_d
+@@ -2851,7 +2851,7 @@ static struct ssb_device *b43_ssb_gpio_d
{
struct ssb_bus *bus = dev->dev->sdev->bus;
return (bus->chipco.dev ? bus->chipco.dev : bus->pcicore.dev);
#else
return bus->chipco.dev;
-@@ -4893,7 +4893,7 @@ static int b43_wireless_core_init(struct
+@@ -4868,7 +4868,7 @@ static int b43_wireless_core_init(struct
}
if (sprom->boardflags_lo & B43_BFL_XTAL_NOSLOW)
hf |= B43_HF_DSCRQ; /* Disable slowclock requests from ucode. */
if (dev->dev->bus_type == B43_BUS_SSB &&
dev->dev->sdev->bus->bustype == SSB_BUSTYPE_PCI &&
dev->dev->sdev->bus->pcicore.dev->id.revision <= 10)
+--- a/drivers/net/wireless/broadcom/b43legacy/Kconfig
++++ b/drivers/net/wireless/broadcom/b43legacy/Kconfig
+@@ -3,7 +3,7 @@ config B43LEGACY
+ tristate "Broadcom 43xx-legacy wireless support (mac80211 stack)"
+ depends on m
+ depends on SSB_POSSIBLE && MAC80211 && HAS_DMA
+- select SSB
++ depends on SSB
+ depends on FW_LOADER
+ ---help---
+ b43legacy is a driver for 802.11b devices from Broadcom (BCM4301 and
+@@ -25,15 +25,15 @@ config B43LEGACY
+ config B43LEGACY_PCI_AUTOSELECT
+ bool
+ depends on B43LEGACY && SSB_PCIHOST_POSSIBLE
+- select SSB_PCIHOST
+- select SSB_B43_PCI_BRIDGE
++ depends on SSB_PCIHOST
++ depends on SSB_B43_PCI_BRIDGE
+ default y
+
+ # Auto-select SSB PCICORE driver, if possible
+ config B43LEGACY_PCICORE_AUTOSELECT
+ bool
+ depends on B43LEGACY && SSB_DRIVER_PCICORE_POSSIBLE
+- select SSB_DRIVER_PCICORE
++ depends on SSB_DRIVER_PCICORE
+ default y
+
+ # LED support
--- a/drivers/net/wireless/broadcom/b43legacy/main.c
+++ b/drivers/net/wireless/broadcom/b43legacy/main.c
-@@ -1937,7 +1937,7 @@ static int b43legacy_gpio_init(struct b4
+@@ -1906,7 +1906,7 @@ static int b43legacy_gpio_init(struct b4
if (dev->dev->id.revision >= 2)
mask |= 0x0010; /* FIXME: This is redundant. */
pcidev = bus->pcicore.dev;
#endif
gpiodev = bus->chipco.dev ? : pcidev;
-@@ -1956,7 +1956,7 @@ static void b43legacy_gpio_cleanup(struc
+@@ -1925,7 +1925,7 @@ static void b43legacy_gpio_cleanup(struc
struct ssb_bus *bus = dev->dev->bus;
struct ssb_device *gpiodev, *pcidev = NULL;
pcidev = bus->pcicore.dev;
#endif
gpiodev = bus->chipco.dev ? : pcidev;
---- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/Makefile
-+++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/Makefile
-@@ -42,6 +42,6 @@ brcmsmac-y := \
- brcms_trace_events.o \
- debug.o
-
--brcmsmac-$(CPTCFG_BCMA_DRIVER_GPIO) += led.o
-+brcmsmac-$(CONFIG_BCMA_DRIVER_GPIO) += led.o
-
- obj-$(CPTCFG_BRCMSMAC) += brcmsmac.o
--- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.h
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/led.h
@@ -22,7 +22,7 @@ struct brcms_led {
void brcms_led_unregister(struct brcms_info *wl);
int brcms_led_register(struct brcms_info *wl);
#else
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/Makefile
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/Makefile
+@@ -42,6 +42,6 @@ brcmsmac-y := \
+ brcms_trace_events.o \
+ debug.o
+
+-brcmsmac-$(CPTCFG_BCMA_DRIVER_GPIO) += led.o
++brcmsmac-$(CONFIG_BCMA_DRIVER_GPIO) += led.o
+
+ obj-$(CPTCFG_BRCMSMAC) += brcmsmac.o
+--- a/drivers/net/wireless/broadcom/brcm80211/Kconfig
++++ b/drivers/net/wireless/broadcom/brcm80211/Kconfig
+@@ -8,7 +8,7 @@ config BRCMSMAC
+ depends on m
+ depends on MAC80211
+ depends on BCMA_POSSIBLE
+- select BCMA
++ depends on BCMA
+ select NEW_LEDS if BCMA_DRIVER_GPIO
+ select LEDS_CLASS if BCMA_DRIVER_GPIO
+ select BRCMUTIL
+--- a/Kconfig.local
++++ b/Kconfig.local
+@@ -1240,117 +1240,6 @@ config BACKPORTED_USB_NET_CH9200
+ config BACKPORTED_USB_NET_AQC111
+ tristate
+ default USB_NET_AQC111
+-config BACKPORTED_SSB_POSSIBLE
+- tristate
+- default SSB_POSSIBLE
+-config BACKPORTED_SSB
+- tristate
+- default SSB
+-config BACKPORTED_SSB_SPROM
+- tristate
+- default SSB_SPROM
+-config BACKPORTED_SSB_BLOCKIO
+- tristate
+- default SSB_BLOCKIO
+-config BACKPORTED_SSB_PCIHOST_POSSIBLE
+- tristate
+- default SSB_PCIHOST_POSSIBLE
+-config BACKPORTED_SSB_PCIHOST
+- tristate
+- default SSB_PCIHOST
+-config BACKPORTED_SSB_B43_PCI_BRIDGE
+- tristate
+- default SSB_B43_PCI_BRIDGE
+-config BACKPORTED_SSB_PCMCIAHOST_POSSIBLE
+- tristate
+- default SSB_PCMCIAHOST_POSSIBLE
+-config BACKPORTED_SSB_PCMCIAHOST
+- tristate
+- default SSB_PCMCIAHOST
+-config BACKPORTED_SSB_SDIOHOST_POSSIBLE
+- tristate
+- default SSB_SDIOHOST_POSSIBLE
+-config BACKPORTED_SSB_SDIOHOST
+- tristate
+- default SSB_SDIOHOST
+-config BACKPORTED_SSB_HOST_SOC
+- tristate
+- default SSB_HOST_SOC
+-config BACKPORTED_SSB_SERIAL
+- tristate
+- default SSB_SERIAL
+-config BACKPORTED_SSB_DRIVER_PCICORE_POSSIBLE
+- tristate
+- default SSB_DRIVER_PCICORE_POSSIBLE
+-config BACKPORTED_SSB_DRIVER_PCICORE
+- tristate
+- default SSB_DRIVER_PCICORE
+-config BACKPORTED_SSB_PCICORE_HOSTMODE
+- tristate
+- default SSB_PCICORE_HOSTMODE
+-config BACKPORTED_SSB_DRIVER_MIPS
+- tristate
+- default SSB_DRIVER_MIPS
+-config BACKPORTED_SSB_SFLASH
+- tristate
+- default SSB_SFLASH
+-config BACKPORTED_SSB_EMBEDDED
+- tristate
+- default SSB_EMBEDDED
+-config BACKPORTED_SSB_DRIVER_EXTIF
+- tristate
+- default SSB_DRIVER_EXTIF
+-config BACKPORTED_SSB_DRIVER_GIGE
+- tristate
+- default SSB_DRIVER_GIGE
+-config BACKPORTED_SSB_DRIVER_GPIO
+- tristate
+- default SSB_DRIVER_GPIO
+-config BACKPORTED_BCMA_POSSIBLE
+- tristate
+- default BCMA_POSSIBLE
+-config BACKPORTED_BCMA
+- tristate
+- default BCMA
+-config BACKPORTED_BCMA_BLOCKIO
+- tristate
+- default BCMA_BLOCKIO
+-config BACKPORTED_BCMA_HOST_PCI_POSSIBLE
+- tristate
+- default BCMA_HOST_PCI_POSSIBLE
+-config BACKPORTED_BCMA_HOST_PCI
+- tristate
+- default BCMA_HOST_PCI
+-config BACKPORTED_BCMA_HOST_SOC
+- tristate
+- default BCMA_HOST_SOC
+-config BACKPORTED_BCMA_DRIVER_PCI
+- tristate
+- default BCMA_DRIVER_PCI
+-config BACKPORTED_BCMA_DRIVER_PCI_HOSTMODE
+- tristate
+- default BCMA_DRIVER_PCI_HOSTMODE
+-config BACKPORTED_BCMA_DRIVER_MIPS
+- tristate
+- default BCMA_DRIVER_MIPS
+-config BACKPORTED_BCMA_PFLASH
+- tristate
+- default BCMA_PFLASH
+-config BACKPORTED_BCMA_SFLASH
+- tristate
+- default BCMA_SFLASH
+-config BACKPORTED_BCMA_NFLASH
+- tristate
+- default BCMA_NFLASH
+-config BACKPORTED_BCMA_DRIVER_GMAC_CMN
+- tristate
+- default BCMA_DRIVER_GMAC_CMN
+-config BACKPORTED_BCMA_DRIVER_GPIO
+- tristate
+- default BCMA_DRIVER_GPIO
+-config BACKPORTED_BCMA_DEBUG
+- tristate
+- default BCMA_DEBUG
+ config BACKPORTED_USB_ACM
+ tristate
+ default USB_ACM
--- a/Kconfig.sources
+++ b/Kconfig.sources
-@@ -9,9 +9,6 @@ source "$BACKPORT_DIR/drivers/net/wirele
- #source "$BACKPORT_DIR/drivers/net/ethernet/Kconfig"
+@@ -7,9 +7,6 @@ source "$BACKPORT_DIR/net/mac80211/Kconf
+ source "$BACKPORT_DIR/drivers/net/wireless/Kconfig"
source "$BACKPORT_DIR/drivers/net/usb/Kconfig"
-source "$BACKPORT_DIR/drivers/ssb/Kconfig"
-source "$BACKPORT_DIR/drivers/bcma/Kconfig"
-
- source "$BACKPORT_DIR/net/nfc/Kconfig"
+ source "$BACKPORT_DIR/drivers/usb/class/Kconfig"
- #source "$BACKPORT_DIR/drivers/media/Kconfig"
+ source "$BACKPORT_DIR/drivers/staging/Kconfig"
--- a/Makefile.kernel
+++ b/Makefile.kernel
-@@ -42,8 +42,6 @@ obj-$(CPTCFG_MAC80211) += net/mac80211/
+@@ -40,8 +40,6 @@ obj-y += compat/
+ obj-$(CPTCFG_CFG80211) += net/wireless/
+ obj-$(CPTCFG_MAC80211) += net/mac80211/
obj-$(CPTCFG_WLAN) += drivers/net/wireless/
- #obj-$(CPTCFG_BT) += net/bluetooth/
- #obj-$(CPTCFG_BT) += drivers/bluetooth/
-obj-$(CPTCFG_SSB) += drivers/ssb/
-obj-$(CPTCFG_BCMA) += drivers/bcma/
- #obj-$(CPTCFG_ETHERNET) += drivers/net/ethernet/
obj-$(CPTCFG_USB_NET_RNDIS_WLAN) += drivers/net/usb/
- obj-$(CPTCFG_NFC) += net/nfc/
+
+ obj-$(CPTCFG_USB_WDM) += drivers/usb/class/