]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commitdiff
Merge tag 'v3.19-rc4' into next
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 15 Jan 2015 17:46:14 +0000 (09:46 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 15 Jan 2015 17:46:14 +0000 (09:46 -0800)
Merge with mainline to bring in the latest thermal and other changes.

1  2 
Documentation/devicetree/bindings/vendor-prefixes.txt
MAINTAINERS
drivers/input/evdev.c
drivers/input/keyboard/imx_keypad.c
drivers/input/mouse/alps.c
drivers/input/mouse/psmouse-base.c
drivers/input/mouse/synaptics.c

index 9f18b4f5cf09a85f7bba611ef71887e3e5e99216,b1df0ad1306c73e89a4d4be90ef4892b511b6cf3..38c13dc19983a20aca6deb65e4db72f7b8f4dff7
@@@ -14,6 -14,7 +14,7 @@@ allwinner     Allwinner Technology Co., Ltd
  altr  Altera Corp.
  amcc  Applied Micro Circuits Corporation (APM, formally AMCC)
  amd   Advanced Micro Devices (AMD), Inc.
+ amlogic       Amlogic, Inc.
  ams   AMS AG
  amstaos       AMS-Taos Inc.
  apm   Applied Micro Circuits Corporation (APM)
@@@ -29,37 -30,47 +30,48 @@@ calxeda    Calxed
  capella       Capella Microsystems, Inc
  cavium        Cavium, Inc.
  cdns  Cadence Design Systems Inc.
+ chipidea      Chipidea, Inc
  chrp  Common Hardware Reference Platform
  chunghwa      Chunghwa Picture Tubes Ltd.
  cirrus        Cirrus Logic, Inc.
+ cnm   Chips&Media, Inc.
  cortina       Cortina Systems, Inc.
  crystalfontz  Crystalfontz America, Inc.
  dallas        Maxim Integrated Products (formerly Dallas Semiconductor)
  davicom       DAVICOM Semiconductor, Inc.
  denx  Denx Software Engineering
  digi  Digi International Inc.
+ digilent      Diglent, Inc.
+ dlg   Dialog Semiconductor
  dlink D-Link Corporation
  dmo   Data Modul AG
  ebv   EBV Elektronik
  edt   Emerging Display Technologies
  elan  Elan Microelectronic Corp.
  emmicro       EM Microelectronic
+ energymicro   Silicon Laboratories (formerly Energy Micro AS)
  epcos EPCOS AG
  epfl  Ecole Polytechnique Fédérale de Lausanne
  epson Seiko Epson Corp.
  est   ESTeem Wireless Modems
 +ettus NI Ettus Research
  eukrea  Eukréa Electromatique
+ everest       Everest Semiconductor Co. Ltd.
  excito        Excito
+ fcs   Fairchild Semiconductor
  fsl   Freescale Semiconductor
  GEFanuc       GE Fanuc Intelligent Platforms Embedded Systems, Inc.
  gef   GE Fanuc Intelligent Platforms Embedded Systems, Inc.
+ geniatech     Geniatech, Inc.
  globalscale   Globalscale Technologies, Inc.
  gmt   Global Mixed-mode Technology, Inc.
  google        Google, Inc.
  gumstix       Gumstix, Inc.
+ gw    Gateworks Corporation
+ hannstar      HannStar Display Corporation
  haoyu Haoyu Microelectronic Co. Ltd.
  hisilicon     Hisilicon Limited.
+ hit   Hitachi Ltd.
  honeywell     Honeywell
  hp    Hewlett Packard
  i2se  I2SE GmbH
@@@ -67,9 -78,11 +79,11 @@@ ibm International Business Machines (IB
  idt   Integrated Device Technologies, Inc.
  iom   Iomega Corporation
  img   Imagination Technologies Ltd.
+ innolux       Innolux Corporation
  intel Intel Corporation
  intercontrol  Inter Control Group
  isee  ISEE 2007 S.L.
+ isil    Intersil (deprecated, use isl)
  isl   Intersil
  karo  Ka-Ro electronics GmbH
  keymile       Keymile GmbH
@@@ -83,11 -96,15 +97,15 @@@ lltc       Linear Technology Corporatio
  marvell       Marvell Technology Group Ltd.
  maxim Maxim Integrated Products
  mediatek      MediaTek Inc.
+ merrii        Merrii Technology Co., Ltd.
  micrel        Micrel Inc.
  microchip     Microchip Technology Inc.
+ micron        Micron Technology Inc.
+ mitsubishi    Mitsubishi Electric Corporation
  mosaixtech    Mosaix Technologies, Inc.
  moxa  Moxa
  mpl   MPL AG
+ mti   Imagination Technologies Ltd. (formerly MIPS Technologies Inc.)
  mundoreader   Mundo Reader S.L.
  murata        Murata Manufacturing Co., Ltd.
  mxicy Macronix International Co., Ltd.
@@@ -102,6 -119,7 +120,7 @@@ nxp        NXP Semiconductor
  onnn  ON Semiconductor Corp.
  opencores     OpenCores.org
  panasonic     Panasonic Corporation
+ pericom       Pericom Technology Inc.
  phytec        PHYTEC Messtechnik GmbH
  picochip      Picochip Ltd
  plathome      Plat'Home Co., Ltd.
@@@ -119,6 -137,7 +138,7 @@@ renesas    Renesas Electronics Corporatio
  ricoh Ricoh Co. Ltd.
  rockchip      Fuzhou Rockchip Electronics Co., Ltd
  samsung       Samsung Semiconductor
+ sandisk       Sandisk Corporation
  sbs   Smart Battery System
  schindler     Schindler
  seagate       Seagate Technology PLC
@@@ -126,21 -145,26 +146,26 @@@ sil     Silicon Imag
  silabs        Silicon Laboratories
  simtek
  sii   Seiko Instruments, Inc.
+ silergy       Silergy Corp.
  sirf  SiRF Technology, Inc.
+ sitronix      Sitronix Technology Corporation
  smsc  Standard Microsystems Corporation
- snps  Synopsys, Inc.
+ snps  Synopsys, Inc.
  solidrun      SolidRun
+ sony  Sony Corporation
  spansion      Spansion Inc.
  st    STMicroelectronics
  ste   ST-Ericsson
  stericsson    ST-Ericsson
  synology      Synology, Inc.
+ tbs   TBS Technologies
+ thine THine Electronics, Inc.
  ti    Texas Instruments
  tlm   Trusted Logic Mobility
  toradex       Toradex AG
  toshiba       Toshiba Corporation
  toumaz        Toumaz
- usi   Universal Scientifc Industrial Co., Ltd.
+ usi   Universal Scientific Industrial Co., Ltd.
  v3    V3 Semiconductor
  variscite     Variscite Ltd.
  via   VIA Technologies, Inc.
@@@ -149,6 -173,7 +174,7 @@@ winbond Winbond Electronics corp
  wlf   Wolfson Microelectronics
  wm    Wondermedia Technologies, Inc.
  xes   Extreme Engineering Solutions (X-ES)
+ xillybus      Xillybus Ltd.
  xlnx  Xilinx
  zyxel ZyXEL Communications Corp.
  zarlink       Zarlink Semiconductor
diff --combined MAINTAINERS
index d7269172981d251fed54507aa57f7aeb2287b6f3,3589d67437f867e121bc36b0ff2b92e758499c04..f14405a0f4fabbf7d80c9b385918dc028ae4cd68
@@@ -152,8 -152,9 +152,9 @@@ F: drivers/scsi/53c700
  
  6LOWPAN GENERIC (BTLE/IEEE 802.15.4)
  M:    Alexander Aring <alex.aring@gmail.com>
- L:    linux-zigbee-devel@lists.sourceforge.net (moderated for non-subscribers)
+ M:    Jukka Rissanen <jukka.rissanen@linux.intel.com>
  L:    linux-bluetooth@vger.kernel.org
+ L:    linux-wpan@vger.kernel.org
  S:    Maintained
  F:    net/6lowpan/
  F:    include/net/6lowpan.h
@@@ -563,7 -564,7 +564,7 @@@ L: linux-alpha@vger.kernel.or
  F:    arch/alpha/
  
  ALTERA TRIPLE SPEED ETHERNET DRIVER
- M:    Vince Bridgers <vbridgers2013@gmail.com>
+ M:    Vince Bridgers <vbridger@opensource.altera.com>
  L:    netdev@vger.kernel.org
  L:    nios2-dev@lists.rocketboards.org (moderated for non-subscribers)
  S:    Maintained
@@@ -617,6 -618,16 +618,16 @@@ S:       Maintaine
  F:    drivers/iommu/amd_iommu*.[ch]
  F:    include/linux/amd-iommu.h
  
+ AMD KFD
+ M:      Oded Gabbay <oded.gabbay@amd.com>
+ L:      dri-devel@lists.freedesktop.org
+ T:      git git://people.freedesktop.org/~gabbayo/linux.git
+ S:      Supported
+ F:      drivers/gpu/drm/amd/amdkfd/
+ F:      drivers/gpu/drm/radeon/radeon_kfd.c
+ F:      drivers/gpu/drm/radeon/radeon_kfd.h
+ F:      include/uapi/linux/kfd_ioctl.h
  AMD MICROCODE UPDATE SUPPORT
  M:    Andreas Herrmann <herrmann.der.user@googlemail.com>
  L:    amd64-microcode@amd64.org
@@@ -685,6 -696,17 +696,17 @@@ L:       alsa-devel@alsa-project.org (moderat
  W:    http://blackfin.uclinux.org/
  S:    Supported
  F:    sound/soc/blackfin/*
+  
+ ANALOG DEVICES INC IIO DRIVERS
+ M:    Lars-Peter Clausen <lars@metafoo.de>
+ M:    Michael Hennerich <Michael.Hennerich@analog.com>
+ W:    http://wiki.analog.com/
+ W:    http://ez.analog.com/community/linux-device-drivers
+ S:    Supported
+ F:    drivers/iio/*/ad*
+ X:    drivers/iio/*/adjd*
+ F:    drivers/staging/iio/*/ad*
+ F:    staging/iio/trigger/iio-trig-bfin-timer.c
  
  AOA (Apple Onboard Audio) ALSA DRIVER
  M:    Johannes Berg <johannes@sipsolutions.net>
@@@ -702,15 -724,15 +724,15 @@@ F:      include/uapi/linux/apm_bios.
  F:    drivers/char/apm-emulation.c
  
  APPLE BCM5974 MULTITOUCH DRIVER
- M:    Henrik Rydberg <rydberg@euromail.se>
+ M:    Henrik Rydberg <rydberg@bitmath.org>
  L:    linux-input@vger.kernel.org
- S:    Maintained
+ S:    Odd fixes
  F:    drivers/input/mouse/bcm5974.c
  
  APPLE SMC DRIVER
- M:    Henrik Rydberg <rydberg@euromail.se>
+ M:    Henrik Rydberg <rydberg@bitmath.org>
  L:    lm-sensors@lm-sensors.org
- S:    Maintained
+ S:    Odd fixes
  F:    drivers/hwmon/applesmc.c
  
  APPLETALK NETWORK LAYER
@@@ -722,7 -744,6 +744,6 @@@ F: net/appletalk
  APPLIED MICRO (APM) X-GENE SOC ETHERNET DRIVER
  M:    Iyappan Subramanian <isubramanian@apm.com>
  M:    Keyur Chudgar <kchudgar@apm.com>
- M:    Ravi Patel <rapatel@apm.com>
  S:    Supported
  F:    drivers/net/ethernet/apm/xgene/
  F:    Documentation/devicetree/bindings/net/apm-xgene-enet.txt
@@@ -835,6 -856,13 +856,13 @@@ M:       Emilio López <emilio@elopez.com.ar
  S:    Maintained
  F:    drivers/clk/sunxi/
  
+ ARM/Amlogic MesonX SoC support
+ M:    Carlo Caione <carlo@caione.org>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    drivers/media/rc/meson-ir.c
+ N:    meson[x68]
  ARM/ATMEL AT91RM9200 AND AT91SAM ARM ARCHITECTURES
  M:    Andrew Victor <linux@maxim.org.za>
  M:    Nicolas Ferre <nicolas.ferre@atmel.com>
@@@ -844,6 -872,7 +872,7 @@@ W: http://maxim.org.za/at91_26.htm
  W:    http://www.linux4sam.org
  S:    Supported
  F:    arch/arm/mach-at91/
+ F:    include/soc/at91/
  F:    arch/arm/boot/dts/at91*.dts
  F:    arch/arm/boot/dts/at91*.dtsi
  F:    arch/arm/boot/dts/sama*.dts
@@@ -861,10 -890,9 +890,9 @@@ S:        Maintaine
  F:    arch/arm/mach-highbank/
  
  ARM/CAVIUM NETWORKS CNS3XXX MACHINE SUPPORT
- M:    Anton Vorontsov <anton@enomsg.org>
+ M:    Krzysztof Halasa <khalasa@piap.pl>
  S:    Maintained
  F:    arch/arm/mach-cns3xxx/
- T:    git git://git.infradead.org/users/cbou/linux-cns3xxx.git
  
  ARM/CIRRUS LOGIC CLPS711X ARM ARCHITECTURE
  M:    Alexander Shiyan <shc_work@mail.ru>
@@@ -902,6 -930,15 +930,15 @@@ M:       Hubert Feurstein <hubert.feurstein@c
  S:    Maintained
  F:    arch/arm/mach-ep93xx/micro9.c
  
+ ARM/CORESIGHT FRAMEWORK AND DRIVERS
+ M:    Mathieu Poirier <mathieu.poirier@linaro.org>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    drivers/coresight/*
+ F:    Documentation/trace/coresight.txt
+ F:    Documentation/devicetree/bindings/arm/coresight.txt
+ F:    Documentation/ABI/testing/sysfs-bus-coresight-devices-*
  ARM/CORGI MACHINE SUPPORT
  M:    Richard Purdie <rpurdie@rpsys.net>
  S:    Maintained
@@@ -964,7 -1001,7 +1001,7 @@@ F:       arch/arm/include/asm/hardware/dec212
  F:    arch/arm/mach-footbridge/
  
  ARM/FREESCALE IMX / MXC ARM ARCHITECTURE
- M:    Shawn Guo <shawn.guo@freescale.com>
+ M:    Shawn Guo <shawn.guo@linaro.org>
  M:    Sascha Hauer <kernel@pengutronix.de>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
@@@ -1025,24 -1062,20 +1062,20 @@@ F:   arch/arm/mach-pxa/colibri-pxa270-inc
  
  ARM/INTEL IOP32X ARM ARCHITECTURE
  M:    Lennert Buytenhek <kernel@wantstofly.org>
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
  ARM/INTEL IOP33X ARM ARCHITECTURE
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
- S:    Maintained
+ S:    Orphan
  
  ARM/INTEL IOP13XX ARM ARCHITECTURE
  M:    Lennert Buytenhek <kernel@wantstofly.org>
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
  ARM/INTEL IQ81342EX MACHINE SUPPORT
  M:    Lennert Buytenhek <kernel@wantstofly.org>
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
@@@ -1053,7 -1086,7 +1086,7 @@@ S:      Maintaine
  
  ARM/INTEL IXP4XX ARM ARCHITECTURE
  M:    Imre Kaloz <kaloz@openwrt.org>
- M:    Krzysztof Halasa <khc@pm.waw.pl>
+ M:    Krzysztof Halasa <khalasa@piap.pl>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/mach-ixp4xx/
@@@ -1067,7 -1100,6 +1100,6 @@@ F:      drivers/pcmcia/pxa2xx_stargate2.
  
  ARM/INTEL XSC3 (MANZANO) ARM CORE
  M:    Lennert Buytenhek <kernel@wantstofly.org>
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
@@@ -1077,33 -1109,33 +1109,33 @@@ L:   linux-arm-kernel@lists.infradead.or
  S:    Maintained
  
  ARM/TEXAS INSTRUMENT KEYSTONE ARCHITECTURE
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/mach-keystone/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git
  
  ARM/TEXAS INSTRUMENT KEYSTONE CLOCK FRAMEWORK
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    drivers/clk/keystone/
  
  ARM/TEXAS INSTRUMENT KEYSTONE ClOCKSOURCE
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    drivers/clocksource/timer-keystone.c
  
  ARM/TEXAS INSTRUMENT KEYSTONE RESET DRIVER
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    drivers/power/reset/keystone-reset.c
  
  ARM/TEXAS INSTRUMENT AEMIF/EMIF DRIVERS
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    drivers/memory/*emif*
@@@ -1150,6 -1182,16 +1182,16 @@@ W:    http://www.digriz.org.uk/ts78xx/kern
  S:    Maintained
  F:    arch/arm/mach-orion5x/ts78xx-*
  
+ ARM/Mediatek SoC support
+ M:    Matthias Brugger <matthias.bgg@gmail.com>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    arch/arm/boot/dts/mt6*
+ F:    arch/arm/boot/dts/mt8*
+ F:    arch/arm/mach-mediatek/
+ N:    mtk
+ K:    mediatek
  ARM/MICREL KS8695 ARCHITECTURE
  M:    Greg Ungerer <gerg@uclinux.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -1287,38 -1329,29 +1329,29 @@@ F:   drivers/*/*rockchip
  F:    drivers/*/*/*rockchip*
  F:    sound/soc/rockchip/
  
- ARM/SAMSUNG ARM ARCHITECTURES
- M:    Ben Dooks <ben-linux@fluff.org>
- M:    Kukjin Kim <kgene.kim@samsung.com>
+ ARM/SAMSUNG EXYNOS ARM ARCHITECTURES
+ M:    Kukjin Kim <kgene@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-samsung-soc@vger.kernel.org (moderated for non-subscribers)
- W:    http://www.fluff.org/ben/linux/
  S:    Maintained
  F:    arch/arm/boot/dts/s3c*
  F:    arch/arm/boot/dts/exynos*
  F:    arch/arm/plat-samsung/
  F:    arch/arm/mach-s3c24*/
  F:    arch/arm/mach-s3c64xx/
+ F:    arch/arm/mach-s5p*/
+ F:    arch/arm/mach-exynos*/
  F:    drivers/*/*s3c2410*
  F:    drivers/*/*/*s3c2410*
  F:    drivers/spi/spi-s3c*
  F:    sound/soc/samsung/*
- ARM/S5P EXYNOS ARM ARCHITECTURES
- M:    Kukjin Kim <kgene.kim@samsung.com>
- L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
- L:    linux-samsung-soc@vger.kernel.org (moderated for non-subscribers)
- S:    Maintained
- F:    arch/arm/mach-s5p*/
- F:    arch/arm/mach-exynos*/
  N:    exynos
  
  ARM/SAMSUNG MOBILE MACHINE SUPPORT
  M:    Kyungmin Park <kyungmin.park@samsung.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
- F:    arch/arm/mach-s5pv210/mach-aquila.c
- F:    arch/arm/mach-s5pv210/mach-goni.c
+ F:    arch/arm/mach-s5pv210/
  
  ARM/SAMSUNG S5P SERIES 2D GRAPHICS ACCELERATION (G2D) SUPPORT
  M:    Kyungmin Park <kyungmin.park@samsung.com>
@@@ -1361,26 -1394,33 +1394,33 @@@ F:   arch/arm/boot/dts/sh
  F:    arch/arm/configs/ape6evm_defconfig
  F:    arch/arm/configs/armadillo800eva_defconfig
  F:    arch/arm/configs/bockw_defconfig
- F:    arch/arm/configs/genmai_defconfig
- F:    arch/arm/configs/koelsch_defconfig
  F:    arch/arm/configs/kzm9g_defconfig
  F:    arch/arm/configs/lager_defconfig
  F:    arch/arm/configs/mackerel_defconfig
  F:    arch/arm/configs/marzen_defconfig
  F:    arch/arm/configs/shmobile_defconfig
+ F:    arch/arm/include/debug/renesas-scif.S
  F:    arch/arm/mach-shmobile/
  F:    drivers/sh/
  
  ARM/SOCFPGA ARCHITECTURE
- M:    Dinh Nguyen <dinguyen@altera.com>
+ M:    Dinh Nguyen <dinguyen@opensource.altera.com>
  S:    Maintained
  F:    arch/arm/mach-socfpga/
+ W:    http://www.rocketboards.org
+ T:    git://git.rocketboards.org/linux-socfpga.git
+ T:    git://git.rocketboards.org/linux-socfpga-next.git
  
  ARM/SOCFPGA CLOCK FRAMEWORK SUPPORT
- M:    Dinh Nguyen <dinguyen@altera.com>
+ M:    Dinh Nguyen <dinguyen@opensource.altera.com>
  S:    Maintained
  F:    drivers/clk/socfpga/
  
+ ARM/SOCFPGA EDAC SUPPORT
+ M:    Thor Thayer <tthayer@opensource.altera.com>
+ S:    Maintained
+ F:    drivers/edac/altera_edac.
  ARM/STI ARCHITECTURE
  M:    Srinivas Kandagatla <srinivas.kandagatla@gmail.com>
  M:    Maxime Coquelin <maxime.coquelin@st.com>
@@@ -1392,12 -1432,18 +1432,18 @@@ S:   Maintaine
  F:    arch/arm/mach-sti/
  F:    arch/arm/boot/dts/sti*
  F:    drivers/clocksource/arm_global_timer.c
- F:    drivers/reset/sti/
- F:    drivers/pinctrl/pinctrl-st.c
- F:    drivers/media/rc/st_rc.c
  F:    drivers/i2c/busses/i2c-st.c
- F:    drivers/tty/serial/st-asc.c
+ F:    drivers/media/rc/st_rc.c
  F:    drivers/mmc/host/sdhci-st.c
+ F:    drivers/phy/phy-stih407-usb.c
+ F:    drivers/phy/phy-stih41x-usb.c
+ F:    drivers/pinctrl/pinctrl-st.c
+ F:    drivers/reset/sti/
+ F:    drivers/tty/serial/st-asc.c
+ F:    drivers/usb/dwc3/dwc3-st.c
+ F:    drivers/usb/host/ehci-st.c
+ F:    drivers/usb/host/ohci-st.c
+ F:    drivers/ata/ahci_st.c
  
  ARM/TECHNOLOGIC SYSTEMS TS7250 MACHINE SUPPORT
  M:    Lennert Buytenhek <kernel@wantstofly.org>
@@@ -1471,6 -1517,19 +1517,19 @@@ S:    Maintaine
  F:    drivers/clk/ux500/
  F:    include/linux/platform_data/clk-ux500.h
  
+ ARM/VERSATILE EXPRESS PLATFORM
+ M:    Liviu Dudau <liviu.dudau@arm.com>
+ M:    Sudeep Holla <sudeep.holla@arm.com>
+ M:    Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    arch/arm/boot/dts/vexpress*
+ F:    arch/arm/mach-vexpress/
+ F:    */*/vexpress*
+ F:    */*/*/vexpress*
+ F:    drivers/clk/versatile/clk-vexpress-osc.c
+ F:    drivers/clocksource/versatile.c
  ARM/VFP SUPPORT
  M:    Russell King <linux@arm.linux.org.uk>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -1511,12 -1570,14 +1570,14 @@@ F:   arch/arm/mach-pxa/include/mach/z2.
  
  ARM/ZYNQ ARCHITECTURE
  M:    Michal Simek <michal.simek@xilinx.com>
+ R:    Sören Brinkmann <soren.brinkmann@xilinx.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  W:    http://wiki.xilinx.com
  T:    git git://git.xilinx.com/linux-xlnx.git
  S:    Supported
  F:    arch/arm/mach-zynq/
  F:    drivers/cpuidle/cpuidle-zynq.c
+ F:    drivers/block/xsysace.c
  N:    zynq
  N:    xilinx
  F:    drivers/clocksource/cadence_ttc_timer.c
@@@ -1562,9 -1623,9 +1623,9 @@@ F:      drivers/platform/x86/asus*.
  F:    drivers/platform/x86/eeepc*.c
  
  ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
M:    Dan Williams <dan.j.williams@intel.com>
R:    Dan Williams <dan.j.williams@intel.com>
  W:    http://sourceforge.net/projects/xscaleiop
- S:    Maintained
+ S:    Odd fixes
  F:    Documentation/crypto/async-tx-api.txt
  F:    crypto/async_tx/
  F:    drivers/dma/
@@@ -1616,6 -1677,7 +1677,7 @@@ L:      wil6210@qca.qualcomm.co
  S:    Supported
  W:    http://wireless.kernel.org/en/users/Drivers/wil6210
  F:    drivers/net/wireless/ath/wil6210/
+ F:    include/uapi/linux/wil6210_uapi.h
  
  CARL9170 LINUX COMMUNITY WIRELESS DRIVER
  M:    Christian Lamparter <chunkeey@googlemail.com>
@@@ -1679,6 -1741,13 +1741,13 @@@ F:    drivers/dma/at_hdmac.
  F:    drivers/dma/at_hdmac_regs.h
  F:    include/linux/platform_data/dma-atmel.h
  
+ ATMEL XDMA DRIVER
+ M:    Ludovic Desroches <ludovic.desroches@atmel.com>
+ L:    linux-arm-kernel@lists.infradead.org
+ L:    dmaengine@vger.kernel.org
+ S:    Supported
+ F:    drivers/dma/at_xdmac.c
  ATMEL I2C DRIVER
  M:    Ludovic Desroches <ludovic.desroches@atmel.com>
  L:    linux-i2c@vger.kernel.org
@@@ -1704,11 -1773,24 +1773,24 @@@ M:   Nicolas Ferre <nicolas.ferre@atmel.c
  S:    Supported
  F:    drivers/net/ethernet/cadence/
  
+ ATMEL NAND DRIVER
+ M:    Josh Wu <josh.wu@atmel.com>
+ L:    linux-mtd@lists.infradead.org
+ S:    Supported
+ F:    drivers/mtd/nand/atmel_nand*
  ATMEL SPI DRIVER
  M:    Nicolas Ferre <nicolas.ferre@atmel.com>
  S:    Supported
  F:    drivers/spi/spi-atmel.*
  
+ ATMEL SSC DRIVER
+ M:    Bo Shen <voice.shen@atmel.com>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Supported
+ F:    drivers/misc/atmel-ssc.c
+ F:    include/linux/atmel-ssc.h
  ATMEL Timer Counter (TC) AND CLOCKSOURCE DRIVERS
  M:    Nicolas Ferre <nicolas.ferre@atmel.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -1738,10 -1820,11 +1820,11 @@@ S:   Supporte
  F:    drivers/scsi/esas2r
  
  AUDIT SUBSYSTEM
+ M:    Paul Moore <paul@paul-moore.com>
  M:    Eric Paris <eparis@redhat.com>
- L:    linux-audit@redhat.com (subscribers-only)
+ L:    linux-audit@redhat.com (moderated for non-subscribers)
  W:    http://people.redhat.com/sgrubb/audit/
- T:    git git://git.infradead.org/users/eparis/audit.git
+ T:    git git://git.infradead.org/users/pcmoore/audit
  S:    Maintained
  F:    include/linux/audit.h
  F:    include/uapi/linux/audit.h
@@@ -1780,7 -1863,7 +1863,7 @@@ F:      include/net/ax25.
  F:    net/ax25/
  
  AZ6007 DVB DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -1814,7 -1897,6 +1897,6 @@@ F:      drivers/net/wireless/b43legacy
  
  BACKLIGHT CLASS/SUBSYSTEM
  M:    Jingoo Han <jg1.han@samsung.com>
- M:    Bryan Wu <cooloney@gmail.com>
  M:    Lee Jones <lee.jones@linaro.org>
  S:    Maintained
  F:    drivers/video/backlight/
@@@ -1843,13 -1925,6 +1925,6 @@@ W:     http://bcache.evilpiepirate.or
  S:    Maintained:
  F:    drivers/md/bcache/
  
- BECEEM BCS200/BCS220-3/BCSM250 WIMAX SUPPORT
- M: Kevin McKinney <klmckinney1@gmail.com>
- M: Matthias Beyer <mail@beyermatthias.de>
- L: devel@driverdev.osuosl.org
- S: Maintained
- F: drivers/staging/bcm*
  BEFS FILE SYSTEM
  S:    Orphan
  F:    Documentation/filesystems/befs.txt
@@@ -2010,6 -2085,7 +2085,7 @@@ F:      drivers/net/ethernet/broadcom/bnx2x
  BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITECTURE
  M:    Christian Daudt <bcm@fixthebug.org>
  M:    Matt Porter <mporter@linaro.org>
+ M:    Florian Fainelli <f.fainelli@gmail.com>
  L:    bcm-kernel-feedback-list@broadcom.com
  T:    git git://github.com/broadcom/mach-bcm
  S:    Maintained
@@@ -2021,17 -2097,23 +2097,23 @@@ F:   arch/arm/configs/bcm_defconfi
  F:    drivers/mmc/host/sdhci-bcm-kona.c
  F:    drivers/clocksource/bcm_kona_timer.c
  
- BROADCOM BCM2835 ARM ARCHICTURE
+ BROADCOM BCM2835 ARM ARCHITECTURE
  M:    Stephen Warren <swarren@wwwdotorg.org>
+ M:    Lee Jones <lee@kernel.org>
  L:    linux-rpi-kernel@lists.infradead.org (moderated for non-subscribers)
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-rpi.git
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rpi/linux-rpi.git
  S:    Maintained
- F:    arch/arm/mach-bcm/board_bcm2835.c
- F:    arch/arm/boot/dts/bcm2835*
- F:    arch/arm/configs/bcm2835_defconfig
- F:    drivers/*/*bcm2835*
+ N:    bcm2835
  
- BROADCOM BCM5301X ARM ARCHICTURE
+ BROADCOM BCM33XX MIPS ARCHITECTURE
+ M:    Kevin Cernekee <cernekee@gmail.com>
+ L:    linux-mips@linux-mips.org
+ S:    Maintained
+ F:    arch/mips/bcm3384/*
+ F:    arch/mips/include/asm/mach-bcm3384/*
+ F:    arch/mips/kernel/*bmips*
+ BROADCOM BCM5301X ARM ARCHITECTURE
  M:    Hauke Mehrtens <hauke@hauke-m.de>
  L:    linux-arm-kernel@lists.infradead.org
  S:    Maintained
@@@ -2039,13 -2121,42 +2121,42 @@@ F:   arch/arm/mach-bcm/bcm_5301x.
  F:    arch/arm/boot/dts/bcm5301x.dtsi
  F:    arch/arm/boot/dts/bcm470*
  
+ BROADCOM BCM63XX ARM ARCHITECTURE
+ M:    Florian Fainelli <f.fainelli@gmail.com>
+ L:    linux-arm-kernel@lists.infradead.org
+ T:    git git://git.github.com/brcm/linux.git
+ S:    Maintained
+ F:    arch/arm/mach-bcm/bcm63xx.c
+ F:    arch/arm/include/debug/bcm63xx.S
+ BROADCOM BCM63XX/BCM33XX UDC DRIVER
+ M:    Kevin Cernekee <cernekee@gmail.com>
+ L:    linux-usb@vger.kernel.org
+ S:    Maintained
+ F:    drivers/usb/gadget/udc/bcm63xx_udc.*
  BROADCOM BCM7XXX ARM ARCHITECTURE
  M:    Marc Carino <marc.ceeeee@gmail.com>
  M:    Brian Norris <computersforpeace@gmail.com>
+ M:    Gregory Fong <gregory.0xf0@gmail.com>
+ M:    Florian Fainelli <f.fainelli@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/mach-bcm/*brcmstb*
  F:    arch/arm/boot/dts/bcm7*.dts*
+ F:    drivers/bus/brcmstb_gisb.c
+ BROADCOM BMIPS MIPS ARCHITECTURE
+ M:    Kevin Cernekee <cernekee@gmail.com>
+ M:    Florian Fainelli <f.fainelli@gmail.com>
+ L:    linux-mips@linux-mips.org
+ S:    Maintained
+ F:    arch/mips/bmips/*
+ F:    arch/mips/include/asm/mach-bmips/*
+ F:    arch/mips/kernel/*bmips*
+ F:    arch/mips/boot/dts/bcm*.dts*
+ F:    drivers/irqchip/irq-bcm7*
+ F:    drivers/irqchip/irq-brcmstb*
  
  BROADCOM TG3 GIGABIT ETHERNET DRIVER
  M:    Prashant Sreedharan <prashant@broadcom.com>
@@@ -2076,6 -2187,20 +2187,20 @@@ L:    linux-scsi@vger.kernel.or
  S:    Supported
  F:    drivers/scsi/bnx2i/
  
+ BROADCOM CYGNUS/IPROC ARM ARCHITECTURE
+ M:    Ray Jui <rjui@broadcom.com>
+ M:    Scott Branden <sbranden@broadcom.com>
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ L:    bcm-kernel-feedback-list@broadcom.com
+ T:    git git://git.github.com/brcm/linux.git
+ S:    Maintained
+ N:    iproc
+ N:    cygnus
+ N:    bcm9113*
+ N:    bcm9583*
+ N:    bcm583*
+ N:    bcm113*
  BROADCOM KONA GPIO DRIVER
  M:    Ray Jui <rjui@broadcom.com>
  L:    bcm-kernel-feedback-list@broadcom.com
@@@ -2134,6 -2259,7 +2259,7 @@@ F:      drivers/gpio/gpio-bt8xx.
  BTRFS FILE SYSTEM
  M:    Chris Mason <clm@fb.com>
  M:    Josef Bacik <jbacik@fb.com>
+ M:    David Sterba <dsterba@suse.cz>
  L:    linux-btrfs@vger.kernel.org
  W:    http://btrfs.wiki.kernel.org/
  Q:    http://patchwork.kernel.org/project/linux-btrfs/list/
@@@ -2143,7 -2269,7 +2269,7 @@@ F:      Documentation/filesystems/btrfs.tx
  F:    fs/btrfs/
  
  BTTV VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -2253,6 -2379,14 +2379,14 @@@ F:    security/capability.
  F:    security/commoncap.c
  F:    kernel/capability.c
  
+ CC2520 IEEE-802.15.4 RADIO DRIVER
+ M:    Varka Bhadram <varkabhadram@gmail.com>
+ L:    linux-wpan@vger.kernel.org
+ S:    Maintained
+ F:    drivers/net/ieee802154/cc2520.c
+ F:    include/linux/spi/cc2520.h
+ F:    Documentation/devicetree/bindings/net/ieee802154/cc2520.txt
  CELL BROADBAND ENGINE ARCHITECTURE
  M:    Arnd Bergmann <arnd@arndb.de>
  L:    linuxppc-dev@lists.ozlabs.org
@@@ -2434,10 -2568,18 +2568,18 @@@ F:   fs/coda
  F:    include/linux/coda*.h
  F:    include/uapi/linux/coda*.h
  
+ CODA V4L2 MEM2MEM DRIVER
+ M:    Philipp Zabel <p.zabel@pengutronix.de>
+ L:    linux-media@vger.kernel.org
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/media/coda.txt
+ F:    drivers/media/platform/coda/
  COMMON CLK FRAMEWORK
  M:    Mike Turquette <mturquette@linaro.org>
+ M:    Stephen Boyd <sboyd@codeaurora.org>
  L:    linux-kernel@vger.kernel.org
- T:    git git://git.linaro.org/people/mturquette/linux.git
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git
  S:    Maintained
  F:    drivers/clk/
  X:    drivers/clk/clkdev.c
@@@ -2449,8 -2591,7 +2591,7 @@@ M:      Steve French <sfrench@samba.org
  L:    linux-cifs@vger.kernel.org
  L:    samba-technical@lists.samba.org (moderated for non-subscribers)
  W:    http://linux-cifs.samba.org/
- Q:    http://patchwork.ozlabs.org/project/linux-cifs-client/list/
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6.git
+ T:    git git://git.samba.org/sfrench/cifs-2.6.git
  S:    Supported
  F:    Documentation/filesystems/cifs/
  F:    fs/cifs/
@@@ -2527,7 -2668,7 +2668,7 @@@ L:      cgroups@vger.kernel.or
  L:    linux-mm@kvack.org
  S:    Maintained
  F:    mm/memcontrol.c
- F:    mm/page_cgroup.c
+ F:    mm/swap_cgroup.c
  
  CORETEMP HARDWARE MONITORING DRIVER
  M:    Fenghua Yu <fenghua.yu@intel.com>
@@@ -2577,6 -2718,16 +2718,16 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    drivers/cpuidle/cpuidle-big_little.c
  
+ CPUIDLE DRIVER - ARM EXYNOS
+ M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
+ M:    Daniel Lezcano <daniel.lezcano@linaro.org>
+ M:    Kukjin Kim <kgene@kernel.org>
+ L:    linux-pm@vger.kernel.org
+ L:    linux-samsung-soc@vger.kernel.org
+ S:    Supported
+ F:    drivers/cpuidle/cpuidle-exynos.c
+ F:    arch/arm/mach-exynos/pm.c
  CPUIDLE DRIVERS
  M:    Rafael J. Wysocki <rjw@rjwysocki.net>
  M:    Daniel Lezcano <daniel.lezcano@linaro.org>
@@@ -2644,7 -2795,7 +2795,7 @@@ F:      drivers/net/wireless/cw1200
  
  CX18 VIDEO4LINUX DRIVER
  M:    Andy Walls <awalls@md.metrocast.net>
- L:    ivtv-devel@ivtvdriver.org (moderated for non-subscribers)
+ L:    ivtv-devel@ivtvdriver.org (subscribers-only)
  L:    linux-media@vger.kernel.org
  T:    git git://linuxtv.org/media_tree.git
  W:    http://linuxtv.org
@@@ -2664,7 -2815,7 +2815,7 @@@ F:      drivers/media/common/cx2341x
  F:    include/media/cx2341x*
  
  CX88 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -2689,6 -2840,13 +2840,13 @@@ W:    http://www.chelsio.co
  S:    Supported
  F:    drivers/net/ethernet/chelsio/cxgb3/
  
+ CXGB3 ISCSI DRIVER (CXGB3I)
+ M:      Karen Xie <kxie@chelsio.com>
+ L:      linux-scsi@vger.kernel.org
+ W:      http://www.chelsio.com
+ S:      Supported
+ F:      drivers/scsi/cxgbi/cxgb3i
  CXGB3 IWARP RNIC DRIVER (IW_CXGB3)
  M:    Steve Wise <swise@chelsio.com>
  L:    linux-rdma@vger.kernel.org
@@@ -2703,6 -2861,13 +2861,13 @@@ W:    http://www.chelsio.co
  S:    Supported
  F:    drivers/net/ethernet/chelsio/cxgb4/
  
+ CXGB4 ISCSI DRIVER (CXGB4I)
+ M:      Karen Xie <kxie@chelsio.com>
+ L:      linux-scsi@vger.kernel.org
+ W:      http://www.chelsio.com
+ S:      Supported
+ F:      drivers/scsi/cxgbi/cxgb4i
  CXGB4 IWARP RNIC DRIVER (IW_CXGB4)
  M:    Steve Wise <swise@chelsio.com>
  L:    linux-rdma@vger.kernel.org
@@@ -2717,6 -2882,18 +2882,18 @@@ W:    http://www.chelsio.co
  S:    Supported
  F:    drivers/net/ethernet/chelsio/cxgb4vf/
  
+ CXL (IBM Coherent Accelerator Processor Interface CAPI) DRIVER
+ M:    Ian Munsie <imunsie@au1.ibm.com>
+ M:    Michael Neuling <mikey@neuling.org>
+ L:    linuxppc-dev@lists.ozlabs.org
+ S:    Supported
+ F:    drivers/misc/cxl/
+ F:    include/misc/cxl.h
+ F:    include/uapi/misc/cxl.h
+ F:    Documentation/powerpc/cxl.txt
+ F:    Documentation/powerpc/cxl.txt
+ F:    Documentation/ABI/testing/sysfs-class-cxl
  STMMAC ETHERNET DRIVER
  M:    Giuseppe Cavallaro <peppe.cavallaro@st.com>
  L:    netdev@vger.kernel.org
@@@ -2781,11 -2958,10 +2958,10 @@@ F:   Documentation/networking/dmfe.tx
  F:    drivers/net/ethernet/dec/tulip/dmfe.c
  
  DC390/AM53C974 SCSI driver
- M:    Kurt Garloff <garloff@suse.de>
- W:    http://www.garloff.de/kurt/linux/dc390/
- M:    Guennadi Liakhovetski <g.liakhovetski@gmx.de>
+ M:    Hannes Reinecke <hare@suse.de>
+ L:    linux-scsi@vger.kernel.org
  S:    Maintained
- F:    drivers/scsi/tmscsim.*
+ F:    drivers/scsi/am53c974.c
  
  DC395x SCSI driver
  M:    Oliver Neukum <oliver@neukum.org>
@@@ -2854,6 -3030,7 +3030,7 @@@ F:      drivers/platform/x86/dell-wmi.
  DESIGNWARE USB2 DRD IP DRIVER
  M:    Paul Zimmerman <paulz@synopsys.com>
  L:    linux-usb@vger.kernel.org
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git
  S:    Maintained
  F:    drivers/usb/dwc2/
  
@@@ -2865,6 -3042,13 +3042,13 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    drivers/usb/dwc3/
  
+ DEVICE COREDUMP (DEV_COREDUMP)
+ M:    Johannes Berg <johannes@sipsolutions.net>
+ L:    linux-kernel@vger.kernel.org
+ S:    Maintained
+ F:    drivers/base/devcoredump.c
+ F:    include/linux/devcoredump.h
  DEVICE FREQUENCY (DEVFREQ)
  M:    MyungJoo Ham <myungjoo.ham@samsung.com>
  M:    Kyungmin Park <kyungmin.park@samsung.com>
@@@ -2985,7 -3169,7 +3169,7 @@@ M:      Sumit Semwal <sumit.semwal@linaro.or
  S:    Maintained
  L:    linux-media@vger.kernel.org
  L:    dri-devel@lists.freedesktop.org
- L:    linaro-mm-sig@lists.linaro.org
+ L:    linaro-mm-sig@lists.linaro.org (moderated for non-subscribers)
  F:    drivers/dma-buf/
  F:    include/linux/dma-buf*
  F:    include/linux/reservation.h
@@@ -2995,14 -3179,13 +3179,13 @@@ T:   git git://git.linaro.org/people/sumi
  
  DMA GENERIC OFFLOAD ENGINE SUBSYSTEM
  M:    Vinod Koul <vinod.koul@intel.com>
- M:    Dan Williams <dan.j.williams@intel.com>
  L:    dmaengine@vger.kernel.org
  Q:    https://patchwork.kernel.org/project/linux-dmaengine/list/
- S:    Supported
+ S:    Maintained
  F:    drivers/dma/
  F:    include/linux/dma*
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx.git
- T:    git git://git.infradead.org/users/vkoul/slave-dma.git (slave-dma)
+ F:    Documentation/dmaengine/
+ T:    git git://git.infradead.org/users/vkoul/slave-dma.git
  
  DME1737 HARDWARE MONITOR DRIVER
  M:    Juerg Haefliger <juergh@gmail.com>
@@@ -3018,7 -3201,7 +3201,7 @@@ S:      Supporte
  F:    drivers/acpi/dock.c
  
  DOCUMENTATION
- M:    Jiri Kosina <jkosina@suse.cz>
+ M:    Jonathan Corbet <corbet@lwn.net>
  L:    linux-doc@vger.kernel.org
  S:    Maintained
  F:    Documentation/
@@@ -3096,7 -3279,7 +3279,7 @@@ F:      include/drm/drm_panel.
  F:    Documentation/devicetree/bindings/panel/
  
  INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets)
- M:    Daniel Vetter <daniel.vetter@ffwll.ch>
+ M:    Daniel Vetter <daniel.vetter@intel.com>
  M:    Jani Nikula <jani.nikula@linux.intel.com>
  L:    intel-gfx@lists.freedesktop.org
  L:    dri-devel@lists.freedesktop.org
@@@ -3119,6 -3302,13 +3302,13 @@@ F:    drivers/gpu/drm/exynos
  F:    include/drm/exynos*
  F:    include/uapi/drm/exynos*
  
+ DRM DRIVERS FOR FREESCALE IMX
+ M:    Philipp Zabel <p.zabel@pengutronix.de>
+ L:    dri-devel@lists.freedesktop.org
+ S:    Maintained
+ F:    drivers/gpu/drm/imx/
+ F:    Documentation/devicetree/bindings/drm/imx/
  DRM DRIVERS FOR NVIDIA TEGRA
  M:    Thierry Reding <thierry.reding@gmail.com>
  M:    Terje Bergström <tbergstrom@nvidia.com>
@@@ -3277,14 -3467,6 +3467,14 @@@ M:    "Maciej W. Rozycki" <macro@linux-mip
  S:    Maintained
  F:    drivers/tty/serial/dz.*
  
 +E3X0 POWER BUTTON DRIVER
 +M:    Moritz Fischer <moritz.fischer@ettus.com>
 +L:    usrp-users@lists.ettus.com
 +W:    http://www.ettus.com
 +S:    Supported
 +F:    drivers/input/misc/e3x0-button.c
 +F:    Documentation/devicetree/bindings/input/e3x0-button.txt
 +
  E4000 MEDIA DRIVER
  M:    Antti Palosaari <crope@iki.fi>
  L:    linux-media@vger.kernel.org
@@@ -3323,7 -3505,7 +3513,7 @@@ F:      fs/ecryptfs
  EDAC-CORE
  M:    Doug Thompson <dougthompson@xmission.com>
  M:    Borislav Petkov <bp@alien8.de>
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Supported
@@@ -3372,7 -3554,7 +3562,7 @@@ S:      Maintaine
  F:    drivers/edac/e7xxx_edac.c
  
  EDAC-GHES
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3400,21 -3582,21 +3590,21 @@@ S:   Maintaine
  F:    drivers/edac/i5000_edac.c
  
  EDAC-I5400
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
  F:    drivers/edac/i5400_edac.c
  
  EDAC-I7300
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
  F:    drivers/edac/i7300_edac.c
  
  EDAC-I7CORE
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3457,7 -3639,7 +3647,7 @@@ S:      Maintaine
  F:    drivers/edac/r82600_edac.c
  
  EDAC-SBRIDGE
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-edac@vger.kernel.org
  W:    bluesmoke.sourceforge.net
  S:    Maintained
@@@ -3517,7 -3699,7 +3707,7 @@@ S:      Maintaine
  F:    drivers/net/ethernet/ibm/ehea/
  
  EM28XX VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -3564,6 -3746,11 +3754,11 @@@ T:    git git://git.kernel.org/pub/scm/lin
  F:    drivers/video/fbdev/s1d13xxxfb.c
  F:    include/video/s1d13xxxfb.h
  
+ ET131X NETWORK DRIVER
+ M:    Mark Einon <mark.einon@gmail.com>
+ S:    Odd Fixes
+ F:    drivers/net/ethernet/agere/
  ETHERNET BRIDGE
  M:    Stephen Hemminger <stephen@networkplumber.org>
  L:    bridge@lists.linux-foundation.org
@@@ -3880,7 -4067,7 +4075,7 @@@ F:      drivers/tty/serial/ucc_uart.
  FREESCALE SOC SOUND DRIVERS
  M:    Timur Tabi <timur@tabi.org>
  M:    Nicolin Chen <nicoleotsuka@gmail.com>
- M:    Xiubo Li <Li.Xiubo@freescale.com>
+ M:    Xiubo Li <Xiubo.Lee@gmail.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Maintained
@@@ -4191,6 -4378,16 +4386,16 @@@ L:    linuxppc-dev@lists.ozlabs.or
  S:    Odd Fixes
  F:    drivers/tty/hvc/
  
+ HACKRF MEDIA DRIVER
+ M:    Antti Palosaari <crope@iki.fi>
+ L:    linux-media@vger.kernel.org
+ W:    http://linuxtv.org/
+ W:    http://palosaari.fi/linux/
+ Q:    http://patchwork.linuxtv.org/project/linux-media/list/
+ T:    git git://linuxtv.org/anttip/media_tree.git
+ S:    Maintained
+ F:    drivers/media/usb/hackrf/
  HARDWARE MONITORING
  M:    Jean Delvare <jdelvare@suse.de>
  M:    Guenter Roeck <linux@roeck-us.net>
@@@ -4234,15 -4431,16 +4439,16 @@@ S:   Maintaine
  F:    drivers/media/dvb-frontends/hd29l2*
  
  HEWLETT-PACKARD SMART2 RAID DRIVER
- M:    Chirag Kantharia <chirag.kantharia@hp.com>
  L:    iss_storagedev@hp.com
- S:    Maintained
+ S:    Orphan
  F:    Documentation/blockdev/cpqarray.txt
  F:    drivers/block/cpqarray.*
  
  HEWLETT-PACKARD SMART ARRAY RAID DRIVER (hpsa)
- M:    "Stephen M. Cameron" <scameron@beardog.cce.hp.com>
+ M:    Don Brace <don.brace@pmcs.com>
  L:    iss_storagedev@hp.com
+ L:    storagedev@pmcs.com
+ L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    Documentation/scsi/hpsa.txt
  F:    drivers/scsi/hpsa*.[ch]
@@@ -4250,8 -4448,10 +4456,10 @@@ F:    include/linux/cciss*.
  F:    include/uapi/linux/cciss*.h
  
  HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
- M:    Mike Miller <mike.miller@hp.com>
+ M:    Don Brace <don.brace@pmcs.com>
  L:    iss_storagedev@hp.com
+ L:    storagedev@pmcs.com
+ L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    Documentation/blockdev/cciss.txt
  F:    drivers/block/cciss*
@@@ -4484,6 -4684,7 +4692,7 @@@ W:      https://i2c.wiki.kernel.org
  Q:    https://patchwork.ozlabs.org/project/linux-i2c/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git
  S:    Maintained
+ F:    Documentation/devicetree/bindings/i2c/
  F:    Documentation/i2c/
  F:    drivers/i2c/
  F:    include/linux/i2c.h
@@@ -4537,7 -4738,7 +4746,7 @@@ S:      Supporte
  F:    drivers/crypto/nx/
  
  IBM Power 842 compression accelerator
- M:    Nathan Fontenot <nfont@linux.vnet.ibm.com>
+ M:    Dan Streetman <ddstreet@us.ibm.com>
  S:    Supported
  F:    drivers/crypto/nx/nx-842.c
  F:    include/linux/nx842.h
@@@ -4615,13 -4816,27 +4824,27 @@@ F:   drivers/idle/i7300_idle.
  
  IEEE 802.15.4 SUBSYSTEM
  M:    Alexander Aring <alex.aring@gmail.com>
- L:    linux-zigbee-devel@lists.sourceforge.net (moderated for non-subscribers)
- W:    http://apps.sourceforge.net/trac/linux-zigbee
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan.git
+ L:    linux-wpan@vger.kernel.org
+ W:    https://github.com/linux-wpan
+ T:    git git://github.com/linux-wpan/linux-wpan-next.git
  S:    Maintained
  F:    net/ieee802154/
  F:    net/mac802154/
  F:    drivers/net/ieee802154/
+ F:    include/linux/nl802154.h
+ F:    include/linux/ieee802154.h
+ F:    include/net/nl802154.h
+ F:    include/net/mac802154.h
+ F:    include/net/af_ieee802154.h
+ F:    include/net/cfg802154.h
+ F:    include/net/ieee802154_netdev.h
+ F:    Documentation/networking/ieee802154.txt
+ IGORPLUG-USB IR RECEIVER
+ M:    Sean Young <sean@mess.org>
+ L:    linux-media@vger.kernel.org
+ S:    Maintained
+ F:    drivers/media/rc/igorplugusb.c
  
  IGUANAWORKS USB IR TRANSCEIVER
  M:    Sean Young <sean@mess.org>
@@@ -4631,10 -4846,14 +4854,14 @@@ F:   drivers/media/rc/iguanair.
  
  IIO SUBSYSTEM AND DRIVERS
  M:    Jonathan Cameron <jic23@kernel.org>
+ R:    Hartmut Knaack <knaack.h@gmx.de>
+ R:    Lars-Peter Clausen <lars@metafoo.de>
+ R:    Peter Meerwald <pmeerw@pmeerw.net>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
  F:    drivers/iio/
  F:    drivers/staging/iio/
+ F:    include/linux/iio/
  
  IKANOS/ADI EAGLE ADSL USB DRIVER
  M:    Matthieu Castet <castet.matthieu@free.fr>
@@@ -4676,6 -4895,11 +4903,11 @@@ L:    linux-security-module@vger.kernel.or
  S:    Supported
  F:    security/integrity/ima/
  
+ IMGTEC IR DECODER DRIVER
+ M:    James Hogan <james.hogan@imgtec.com>
+ S:    Maintained
+ F:    drivers/media/rc/img-ir/
  IMS TWINTURBO FRAMEBUFFER DRIVER
  L:    linux-fbdev@vger.kernel.org
  S:    Orphan
@@@ -4717,10 -4941,10 +4949,10 @@@ F:   include/uapi/linux/input.
  F:    include/linux/input/
  
  INPUT MULTITOUCH (MT) PROTOCOL
- M:    Henrik Rydberg <rydberg@euromail.se>
+ M:    Henrik Rydberg <rydberg@bitmath.org>
  L:    linux-input@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rydberg/input-mt.git
- S:    Maintained
+ S:    Odd fixes
  F:    Documentation/input/multi-touch-protocol.txt
  F:    drivers/input/input-mt.c
  K:    \b(ABS|SYN)_MT_
@@@ -4741,6 -4965,12 +4973,12 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Supported
  F:    drivers/idle/intel_idle.c
  
+ INTEL PSTATE DRIVER
+ M:    Kristen Carlson Accardi <kristen@linux.intel.com>
+ L:    linux-pm@vger.kernel.org
+ S:    Supported
+ F:    drivers/cpufreq/intel_pstate.c
  INTEL FRAMEBUFFER DRIVER (excluding 810 and 815)
  M:    Maik Broemme <mbroemme@plusserver.de>
  L:    linux-fbdev@vger.kernel.org
@@@ -4768,8 -4998,8 +5006,8 @@@ F:      arch/x86/kernel/cpu/microcode/core
  F:    arch/x86/kernel/cpu/microcode/intel*
  
  INTEL I/OAT DMA DRIVER
- M:    Dan Williams <dan.j.williams@intel.com>
  M:    Dave Jiang <dave.jiang@intel.com>
+ R:    Dan Williams <dan.j.williams@intel.com>
  L:    dmaengine@vger.kernel.org
  Q:    https://patchwork.kernel.org/project/linux-dmaengine/list/
  S:    Supported
@@@ -4784,12 -5014,12 +5022,12 @@@ F:   drivers/iommu/intel-iommu.
  F:    include/linux/intel-iommu.h
  
  INTEL IOP-ADMA DMA DRIVER
M:    Dan Williams <dan.j.williams@intel.com>
R:    Dan Williams <dan.j.williams@intel.com>
  S:    Odd fixes
  F:    drivers/dma/iop-adma.c
  
  INTEL IXP4XX QMGR, NPE, ETHERNET and HSS SUPPORT
- M:    Krzysztof Halasa <khc@pm.waw.pl>
+ M:    Krzysztof Halasa <khalasa@piap.pl>
  S:    Maintained
  F:    arch/arm/mach-ixp4xx/include/mach/qmgr.h
  F:    arch/arm/mach-ixp4xx/include/mach/npe.h
@@@ -4803,14 -5033,14 +5041,14 @@@ M:   Deepak Saxena <dsaxena@plexity.net
  S:    Maintained
  F:    drivers/char/hw_random/ixp4xx-rng.c
  
- INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/igbvf/ixgb/ixgbe/ixgbevf/i40e/i40evf)
+ INTEL ETHERNET DRIVERS (e100/e1000/e1000e/fm10k/igb/igbvf/ixgb/ixgbe/ixgbevf/i40e/i40evf)
  M:    Jeff Kirsher <jeffrey.t.kirsher@intel.com>
  M:    Jesse Brandeburg <jesse.brandeburg@intel.com>
  M:    Bruce Allan <bruce.w.allan@intel.com>
  M:    Carolyn Wyborny <carolyn.wyborny@intel.com>
  M:    Don Skidmore <donald.c.skidmore@intel.com>
  M:    Greg Rose <gregory.v.rose@intel.com>
- M:    Alex Duyck <alexander.h.duyck@intel.com>
+ M:    Matthew Vick <matthew.vick@intel.com>
  M:    John Ronciak <john.ronciak@intel.com>
  M:    Mitch Williams <mitch.a.williams@intel.com>
  M:    Linux NICS <linux.nics@intel.com>
@@@ -4999,6 -5229,7 +5237,7 @@@ L:      linux-kernel@vger.kernel.or
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
  T:    git git://git.infradead.org/users/jcooper/linux.git irqchip/core
+ F:    Documentation/devicetree/bindings/interrupt-controller/
  F:    drivers/irqchip/
  
  IRQ DOMAINS (IRQ NUMBER MAPPING LIBRARY)
@@@ -5040,6 -5271,7 +5279,7 @@@ F:      include/scsi/*iscsi
  
  ISCSI EXTENSIONS FOR RDMA (ISER) INITIATOR
  M:    Or Gerlitz <ogerlitz@mellanox.com>
+ M:    Sagi Grimberg <sagig@mellanox.com>
  M:    Roi Dayan <roid@mellanox.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
@@@ -5084,11 -5316,11 +5324,11 @@@ W:   http://palosaari.fi/linux
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/anttip/media_tree.git
  S:    Maintained
- F:    drivers/media/tuners/tuner_it913x*
+ F:    drivers/media/tuners/it913x*
  
  IVTV VIDEO4LINUX DRIVER
  M:    Andy Walls <awalls@md.metrocast.net>
- L:    ivtv-devel@ivtvdriver.org (moderated for non-subscribers)
+ L:    ivtv-devel@ivtvdriver.org (subscribers-only)
  L:    linux-media@vger.kernel.org
  T:    git git://linuxtv.org/media_tree.git
  W:    http://www.ivtvdriver.org
@@@ -5232,6 -5464,13 +5472,13 @@@ F:    include/linux/lockd
  F:    include/linux/sunrpc/
  F:    include/uapi/linux/sunrpc/
  
+ KERNEL SELFTEST FRAMEWORK
+ M:    Shuah Khan <shuahkh@osg.samsung.com>
+ L:    linux-api@vger.kernel.org
+ T:    git git://git.kernel.org/pub/scm/shuah/linux-kselftest
+ S:    Maintained
+ F:    tools/testing/selftests
  KERNEL VIRTUAL MACHINE (KVM)
  M:    Gleb Natapov <gleb@kernel.org>
  M:    Paolo Bonzini <pbonzini@redhat.com>
@@@ -5264,15 -5503,6 +5511,6 @@@ S:     Supporte
  F:    arch/powerpc/include/asm/kvm*
  F:    arch/powerpc/kvm/
  
- KERNEL VIRTUAL MACHINE For Itanium (KVM/IA64)
- M:    Xiantao Zhang <xiantao.zhang@intel.com>
- L:    kvm-ia64@vger.kernel.org
- W:    http://kvm.qumranet.com
- S:    Supported
- F:    Documentation/ia64/kvm.txt
- F:    arch/ia64/include/asm/kvm*
- F:    arch/ia64/kvm/
  KERNEL VIRTUAL MACHINE for s390 (KVM/s390)
  M:    Christian Borntraeger <borntraeger@de.ibm.com>
  M:    Cornelia Huck <cornelia.huck@de.ibm.com>
@@@ -5612,8 -5842,8 +5850,8 @@@ M:      Ingo Molnar <mingo@redhat.com
  L:    linux-kernel@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/locking
  S:    Maintained
- F:    Documentation/lockdep*.txt
- F:    Documentation/lockstat.txt
+ F:    Documentation/locking/lockdep*.txt
+ F:    Documentation/locking/lockstat.txt
  F:    include/linux/lockdep.h
  F:    kernel/locking/
  
@@@ -5678,11 -5908,8 +5916,8 @@@ T:     git git://github.com/linux-test-proj
  S:    Maintained
  
  M32R ARCHITECTURE
- M:    Hirokazu Takata <takata@linux-m32r.org>
- L:    linux-m32r@ml.linux-m32r.org (moderated for non-subscribers)
- L:    linux-m32r-ja@ml.linux-m32r.org (in Japanese)
  W:    http://www.linux-m32r.org/
- S:    Maintained
+ S:    Orphan
  F:    arch/m32r/
  
  M68K ARCHITECTURE
@@@ -5760,6 -5987,14 +5995,14 @@@ S:    Maintaine
  F:    drivers/net/macvlan.c
  F:    include/linux/if_macvlan.h
  
+ MAILBOX API
+ M:    Jassi Brar <jassisinghbrar@gmail.com>
+ L:    linux-kernel@vger.kernel.org
+ S:    Maintained
+ F:    drivers/mailbox/
+ F:    include/linux/mailbox_client.h
+ F:    include/linux/mailbox_controller.h
  MAN-PAGES: MANUAL PAGES FOR LINUX -- Sections 2, 3, 4, 5, and 7
  M:    Michael Kerrisk <mtk.manpages@gmail.com>
  W:    http://www.kernel.org/doc/man-pages
@@@ -5771,6 -6006,11 +6014,11 @@@ M:    Russell King <rmk+kernel@arm.linux.o
  S:    Maintained
  F:    drivers/gpu/drm/armada/
  
+ MARVELL 88E6352 DSA support
+ M:    Guenter Roeck <linux@roeck-us.net>
+ S:    Maintained
+ F:    drivers/net/dsa/mv88e6352.c
  MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
  M:    Mirko Lindner <mlindner@marvell.com>
  M:    Stephen Hemminger <stephen@networkplumber.org>
@@@ -5852,7 -6092,7 +6100,7 @@@ S:      Maintaine
  F:    drivers/media/radio/radio-maxiradio*
  
  MEDIA INPUT INFRASTRUCTURE (V4L/DVB)
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  P:    LinuxTV.org Project
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
@@@ -5881,10 -6121,13 +6129,13 @@@ W:   http://linuxtv.or
  S:    Odd Fixes
  F:    drivers/media/parport/pms*
  
- MEGARAID SCSI DRIVERS
- M:    Neela Syam Kolli <megaraidlinux@lsi.com>
+ MEGARAID SCSI/SAS DRIVERS
+ M:    Kashyap Desai <kashyap.desai@avagotech.com>
+ M:    Sumit Saxena <sumit.saxena@avagotech.com>
+ M:    Uday Lingala <uday.lingala@avagotech.com>
+ L:    megaraidlinux.pdl@avagotech.com
  L:    linux-scsi@vger.kernel.org
- W:    http://megaraid.lsilogic.com
+ W:    http://www.lsi.com
  S:    Maintained
  F:    Documentation/scsi/megaraid.txt
  F:    drivers/scsi/megaraid.*
@@@ -5916,6 -6159,7 +6167,7 @@@ L:      linux-mtd@lists.infradead.or
  W:    http://www.linux-mtd.infradead.org/
  Q:    http://patchwork.ozlabs.org/project/linux-mtd/list/
  T:    git git://git.infradead.org/linux-mtd.git
+ T:    git git://git.infradead.org/l2-mtd.git
  S:    Maintained
  F:    drivers/mtd/
  F:    include/linux/mtd/
@@@ -5933,6 -6177,15 +6185,15 @@@ S:    Supporte
  F:    drivers/mcb/
  F:    include/linux/mcb.h
  
+ MEN F21BMC (Board Management Controller)
+ M:    Andreas Werner <andreas.werner@men.de>
+ S:    Supported
+ F:    drivers/mfd/menf21bmc.c
+ F:    drivers/watchdog/menf21bmc_wdt.c
+ F:    drivers/leds/leds-menf21bmc.c
+ F:    drivers/hwmon/menf21bmc_hwmon.c
+ F:    Documentation/hwmon/menf21bmc
  METAG ARCHITECTURE
  M:    James Hogan <james.hogan@imgtec.com>
  L:    linux-metag@vger.kernel.org
@@@ -5997,6 -6250,28 +6258,28 @@@ S:    Supporte
  F:    include/linux/mlx5/
  F:    drivers/infiniband/hw/mlx5/
  
+ MN88472 MEDIA DRIVER
+ M:    Antti Palosaari <crope@iki.fi>
+ L:    linux-media@vger.kernel.org
+ W:    http://linuxtv.org/
+ W:    http://palosaari.fi/linux/
+ Q:    http://patchwork.linuxtv.org/project/linux-media/list/
+ T:    git git://linuxtv.org/anttip/media_tree.git
+ S:    Maintained
+ F:    drivers/staging/media/mn88472/
+ F:    drivers/media/dvb-frontends/mn88472.h
+ MN88473 MEDIA DRIVER
+ M:    Antti Palosaari <crope@iki.fi>
+ L:    linux-media@vger.kernel.org
+ W:    http://linuxtv.org/
+ W:    http://palosaari.fi/linux/
+ Q:    http://patchwork.linuxtv.org/project/linux-media/list/
+ T:    git git://linuxtv.org/anttip/media_tree.git
+ S:    Maintained
+ F:    drivers/staging/media/mn88473/
+ F:    drivers/media/dvb-frontends/mn88473.h
  MODULE SUPPORT
  M:    Rusty Russell <rusty@rustcorp.com.au>
  S:    Maintained
@@@ -6185,7 -6460,6 +6468,6 @@@ F:      drivers/scsi/g_NCR5380.
  F:    drivers/scsi/g_NCR5380_mmio.c
  F:    drivers/scsi/mac_scsi.*
  F:    drivers/scsi/pas16.*
- F:    drivers/scsi/sun3_NCR5380.c
  F:    drivers/scsi/sun3_scsi.*
  F:    drivers/scsi/sun3_scsi_vme.c
  F:    drivers/scsi/t128.*
@@@ -6344,19 -6618,8 +6626,8 @@@ L:     netdev@vger.kernel.or
  S:    Maintained
  
  NETWORKING [WIRELESS]
- M:    "John W. Linville" <linville@tuxdriver.com>
  L:    linux-wireless@vger.kernel.org
  Q:    http://patchwork.kernel.org/project/linux-wireless/list/
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless.git
- S:    Maintained
- F:    net/mac80211/
- F:    net/rfkill/
- F:    net/wireless/
- F:    include/net/ieee80211*
- F:    include/linux/wireless.h
- F:    include/uapi/linux/wireless.h
- F:    include/net/iw_handler.h
- F:    drivers/net/wireless/
  
  NETWORKING DRIVERS
  L:    netdev@vger.kernel.org
@@@ -6377,6 -6640,14 +6648,14 @@@ F:    include/linux/inetdevice.
  F:    include/uapi/linux/if_*
  F:    include/uapi/linux/netdevice.h
  
+ NETWORKING DRIVERS (WIRELESS)
+ M:    Kalle Valo <kvalo@codeaurora.org>
+ L:    linux-wireless@vger.kernel.org
+ Q:    http://patchwork.kernel.org/project/linux-wireless/list/
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers.git/
+ S:    Maintained
+ F:    drivers/net/wireless/
  NETXEN (1/10) GbE SUPPORT
  M:    Manish Chopra <manish.chopra@qlogic.com>
  M:    Sony Chacko <sony.chacko@qlogic.com>
@@@ -6391,7 -6662,7 +6670,7 @@@ M:      Lauro Ramos Venancio <lauro.venancio
  M:    Aloisio Almeida Jr <aloisio.almeida@openbossa.org>
  M:    Samuel Ortiz <sameo@linux.intel.com>
  L:    linux-wireless@vger.kernel.org
- L:    linux-nfc@lists.01.org (moderated for non-subscribers)
+ L:    linux-nfc@lists.01.org (subscribers-only)
  S:    Supported
  F:    net/nfc/
  F:    include/net/nfc/
@@@ -6441,6 -6712,13 +6720,13 @@@ S:    Maintaine
  F:    Documentation/scsi/NinjaSCSI.txt
  F:    drivers/scsi/nsp32*
  
+ NIOS2 ARCHITECTURE
+ M:    Ley Foon Tan <lftan@altera.com>
+ L:    nios2-dev@lists.rocketboards.org (moderated for non-subscribers)
+ T:    git git://git.rocketboards.org/linux-socfpga.git
+ S:    Maintained
+ F:    arch/nios2/
  NTB DRIVER
  M:    Jon Mason <jdmason@kudzu.us>
  M:    Dave Jiang <dave.jiang@intel.com>
@@@ -6481,6 -6759,12 +6767,12 @@@ S:    Supporte
  F:    drivers/gpu/drm/i2c/tda998x_drv.c
  F:    include/drm/i2c/tda998x.h
  
+ NXP TFA9879 DRIVER
+ M:    Peter Rosin <peda@axentia.se>
+ L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    sound/soc/codecs/tfa9879*
  OMAP SUPPORT
  M:    Tony Lindgren <tony@atomide.com>
  L:    linux-omap@vger.kernel.org
@@@ -6491,6 -6775,23 +6783,23 @@@ T:    git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    arch/arm/*omap*/
  F:    drivers/i2c/busses/i2c-omap.c
+ F:    drivers/irqchip/irq-omap-intc.c
+ F:    drivers/mfd/*omap*.c
+ F:    drivers/mfd/menelaus.c
+ F:    drivers/mfd/palmas.c
+ F:    drivers/mfd/tps65217.c
+ F:    drivers/mfd/tps65218.c
+ F:    drivers/mfd/tps65910.c
+ F:    drivers/mfd/twl-core.[ch]
+ F:    drivers/mfd/twl4030*.c
+ F:    drivers/mfd/twl6030*.c
+ F:    drivers/mfd/twl6040*.c
+ F:    drivers/regulator/palmas-regulator*.c
+ F:    drivers/regulator/pbias-regulator.c
+ F:    drivers/regulator/tps65217-regulator.c
+ F:    drivers/regulator/tps65218-regulator.c
+ F:    drivers/regulator/tps65910-regulator.c
+ F:    drivers/regulator/twl-regulator.c
  F:    include/linux/i2c-omap.h
  
  OMAP DEVICE TREE SUPPORT
@@@ -6501,6 -6802,9 +6810,9 @@@ L:      devicetree@vger.kernel.or
  S:    Maintained
  F:    arch/arm/boot/dts/*omap*
  F:    arch/arm/boot/dts/*am3*
+ F:    arch/arm/boot/dts/*am4*
+ F:    arch/arm/boot/dts/*am5*
+ F:    arch/arm/boot/dts/*dra7*
  
  OMAP CLOCK FRAMEWORK SUPPORT
  M:    Paul Walmsley <paul@pwsan.com>
@@@ -6530,6 -6834,14 +6842,14 @@@ L:    linux-omap@vger.kernel.or
  S:    Maintained
  F:    sound/soc/omap/
  
+ OMAP GENERAL PURPOSE MEMORY CONTROLLER SUPPORT
+ M:    Roger Quadros <rogerq@ti.com>
+ M:    Tony Lindgren <tony@atomide.com>
+ L:    linux-omap@vger.kernel.org
+ S:    Maintained
+ F:    drivers/memory/omap-gpmc.c
+ F:    arch/arm/mach-omap2/*gpmc*
  OMAP FRAMEBUFFER SUPPORT
  M:    Tomi Valkeinen <tomi.valkeinen@ti.com>
  L:    linux-fbdev@vger.kernel.org
@@@ -6559,10 -6871,9 +6879,9 @@@ S:     Maintaine
  F:    drivers/mmc/host/omap.c
  
  OMAP HS MMC SUPPORT
- M:    Balaji T K <balajitk@ti.com>
  L:    linux-mmc@vger.kernel.org
  L:    linux-omap@vger.kernel.org
- S:    Maintained
+ S:    Orphan
  F:    drivers/mmc/host/omap_hsmmc.c
  
  OMAP RANDOM NUMBER GENERATOR SUPPORT
@@@ -6601,7 -6912,7 +6920,7 @@@ F:      arch/arm/*omap*/usb
  
  OMAP GPIO DRIVER
  M:    Javier Martinez Canillas <javier@dowhile0.org>
- M:    Santosh Shilimkar <santosh.shilimkar@ti.com>
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
  M:    Kevin Hilman <khilman@deeprootsystems.com>
  L:    linux-omap@vger.kernel.org
  S:    Maintained
@@@ -6739,7 -7050,7 +7058,7 @@@ S:      Orpha
  F:    drivers/net/wireless/orinoco/
  
  OSD LIBRARY and FILESYSTEM
- M:    Boaz Harrosh <bharrosh@panasas.com>
+ M:    Boaz Harrosh <ooo@electrozaur.com>
  M:    Benny Halevy <bhalevy@primarydata.com>
  L:    osd-dev@open-osd.org
  W:    http://open-osd.org
@@@ -6749,6 -7060,14 +7068,14 @@@ F:    drivers/scsi/osd
  F:    include/scsi/osd_*
  F:    fs/exofs/
  
+ OVERLAY FILESYSTEM
+ M:    Miklos Szeredi <miklos@szeredi.hu>
+ L:    linux-unionfs@vger.kernel.org
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git
+ S:    Supported
+ F:    fs/overlayfs/
+ F:    Documentation/filesystems/overlayfs.txt
  P54 WIRELESS DRIVER
  M:    Christian Lamparter <chunkeey@googlemail.com>
  L:    linux-wireless@vger.kernel.org
@@@ -6892,6 -7211,24 +7219,24 @@@ F:    include/linux/pci
  F:    arch/x86/pci/
  F:    arch/x86/kernel/quirks.c
  
+ PCI DRIVER FOR APPLIEDMICRO XGENE
+ M:    Tanmay Inamdar <tinamdar@apm.com>
+ L:    linux-pci@vger.kernel.org
+ L:    linux-arm-kernel@lists.infradead.org
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/pci/xgene-pci.txt
+ F:    drivers/pci/host/pci-xgene.c
+ PCI DRIVER FOR FREESCALE LAYERSCAPE
+ M:    Minghuan Lian <minghuan.Lian@freescale.com>
+ M:    Mingkai Hu <mingkai.hu@freescale.com>
+ M:    Roy Zang <tie-fei.zang@freescale.com>
+ L:    linuxppc-dev@lists.ozlabs.org
+ L:    linux-pci@vger.kernel.org
+ L:    linux-arm-kernel@lists.infradead.org
+ S:    Maintained
+ F:    drivers/pci/host/*layerscape*
  PCI DRIVER FOR IMX6
  M:    Richard Zhu <r65037@freescale.com>
  M:    Lucas Stach <l.stach@pengutronix.de>
@@@ -6900,6 -7237,13 +7245,13 @@@ L:    linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    drivers/pci/host/*imx6*
  
+ PCI DRIVER FOR TI KEYSTONE
+ M:    Murali Karicheri <m-karicheri2@ti.com>
+ L:    linux-pci@vger.kernel.org
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    drivers/pci/host/*keystone*
  PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support)
  M:    Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  M:    Jason Cooper <jason@lakedaemon.net>
@@@ -7055,6 -7399,7 +7407,7 @@@ F:      drivers/crypto/picoxcell
  
  PIN CONTROL SUBSYSTEM
  M:    Linus Walleij <linus.walleij@linaro.org>
+ L:    linux-gpio@vger.kernel.org
  S:    Maintained
  F:    drivers/pinctrl/
  F:    include/linux/pinctrl/
@@@ -7063,7 -7408,13 +7416,13 @@@ PIN CONTROLLER - ATMEL AT9
  M:    Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
- F:    drivers/pinctrl/pinctrl-at91.c
+ F:    drivers/pinctrl/pinctrl-at91.*
+ PIN CONTROLLER - INTEL
+ M:    Mika Westerberg <mika.westerberg@linux.intel.com>
+ M:    Heikki Krogerus <heikki.krogerus@linux.intel.com>
+ S:    Maintained
+ F:    drivers/pinctrl/intel/
  
  PIN CONTROLLER - RENESAS
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
@@@ -7302,6 -7653,14 +7661,14 @@@ T:    git git://linuxtv.org/media_tree.gi
  S:    Maintained
  F:    drivers/media/usb/pwc/*
  
+ PWM FAN DRIVER
+ M:    Kamil Debski <k.debski@samsung.com>
+ L:    lm-sensors@lm-sensors.org
+ S:    Supported
+ F:    Documentation/devicetree/bindings/hwmon/pwm-fan.txt
+ F:    Documentation/hwmon/pwm-fan
+ F:    drivers/hwmon/pwm-fan.c
  PWM SUBSYSTEM
  M:    Thierry Reding <thierry.reding@gmail.com>
  L:    linux-pwm@vger.kernel.org
@@@ -7315,12 -7674,12 +7682,12 @@@ F:   drivers/video/backlight/pwm_bl.
  F:    include/linux/pwm_backlight.h
  
  PXA2xx/PXA3xx SUPPORT
- M:    Eric Miao <eric.y.miao@gmail.com>
- M:    Russell King <linux@arm.linux.org.uk>
+ M:    Daniel Mack <daniel@zonque.org>
  M:    Haojian Zhuang <haojian.zhuang@gmail.com>
+ M:    Robert Jarzmik <robert.jarzmik@free.fr>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  T:    git git://github.com/hzhuang1/linux.git
- T:    git git://git.linaro.org/people/ycmiao/pxa-linux.git
+ T:    git git://github.com/rjarzmik/linux.git
  S:    Maintained
  F:    arch/arm/mach-pxa/
  F:    drivers/pcmcia/pxa2xx*
@@@ -7397,15 -7756,15 +7764,15 @@@ F:   drivers/net/ethernet/qlogic/qla3xxx.
  
  QLOGIC QLCNIC (1/10)Gb ETHERNET DRIVER
  M:    Shahed Shaikh <shahed.shaikh@qlogic.com>
- M:    Dept-HSGLinuxNICDev@qlogic.com
+ M:    Dept-GELinuxNICDev@qlogic.com
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/qlogic/qlcnic/
  
  QLOGIC QLGE 10Gb ETHERNET DRIVER
- M:    Shahed Shaikh <shahed.shaikh@qlogic.com>
- M:    Jitendra Kalsaria <jitendra.kalsaria@qlogic.com>
- M:    Ron Mercer <ron.mercer@qlogic.com>
+ M:    Harish Patil <harish.patil@qlogic.com>
+ M:    Sudarsana Kalluru <sudarsana.kalluru@qlogic.com>
+ M:    Dept-GELinuxNICDev@qlogic.com
  M:    linux-driver@qlogic.com
  L:    netdev@vger.kernel.org
  S:    Supported
@@@ -7508,13 -7867,12 +7875,12 @@@ F:   drivers/video/fbdev/aty/aty128fb.
  
  RALINK RT2X00 WIRELESS LAN DRIVER
  P:    rt2x00 project
- M:    Ivo van Doorn <IvDoorn@gmail.com>
+ M:    Stanislaw Gruszka <sgruszka@redhat.com>
  M:    Helmut Schaa <helmut.schaa@googlemail.com>
  L:    linux-wireless@vger.kernel.org
  L:    users@rt2x00.serialmonkey.com (moderated for non-subscribers)
  W:    http://rt2x00.serialmonkey.com/
  S:    Maintained
- T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ivd/rt2x00.git
  F:    drivers/net/wireless/rt2x00/
  
  RAMDISK RAM BLOCK DEVICE DRIVER
@@@ -7616,6 -7974,7 +7982,7 @@@ F:      fs/reiserfs
  
  REGISTER MAP ABSTRACTION
  M:    Mark Brown <broonie@kernel.org>
+ L:    linux-kernel@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git
  S:    Supported
  F:    drivers/base/regmap/
@@@ -7674,6 -8033,13 +8041,13 @@@ F:    drivers/hid/hid-roccat
  F:    include/linux/hid-roccat*
  F:    Documentation/ABI/*/sysfs-driver-hid-roccat*
  
+ ROCKER DRIVER
+ M:    Jiri Pirko <jiri@resnulli.us>
+ M:    Scott Feldman <sfeldma@gmail.com>
+ L:    netdev@vger.kernel.org
+ S:    Supported
+ F:    drivers/net/ethernet/rocker/
  ROCKETPORT DRIVER
  P:    Comtrol Corp.
  W:    http://www.comtrol.com
@@@ -7681,6 -8047,12 +8055,12 @@@ S:    Maintaine
  F:    Documentation/serial/rocket.txt
  F:    drivers/tty/rocket*
  
+ ROCKETPORT EXPRESS/INFINITY DRIVER
+ M:    Kevin Cernekee <cernekee@gmail.com>
+ L:    linux-serial@vger.kernel.org
+ S:    Odd Fixes
+ F:    drivers/tty/serial/rp2.*
  ROSE NETWORK LAYER
  M:    Ralf Baechle <ralf@linux-mips.org>
  L:    linux-hams@vger.kernel.org
@@@ -7721,11 -8093,10 +8101,10 @@@ S:   Maintaine
  F:    drivers/media/dvb-frontends/rtl2832_sdr*
  
  RTL8180 WIRELESS DRIVER
- M:    "John W. Linville" <linville@tuxdriver.com>
  L:    linux-wireless@vger.kernel.org
  W:    http://wireless.kernel.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
- S:    Maintained
+ S:    Orphan
  F:    drivers/net/wireless/rtl818x/rtl8180/
  
  RTL8187 WIRELESS DRIVER
@@@ -7842,7 -8213,7 +8221,7 @@@ S:      Odd Fixe
  F:    drivers/media/i2c/saa6588*
  
  SAA7134 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -7884,7 -8255,6 +8263,6 @@@ S:      Supporte
  F:    drivers/mfd/sec*.c
  F:    drivers/regulator/s2m*.c
  F:    drivers/regulator/s5m*.c
- F:    drivers/rtc/rtc-sec.c
  F:    include/linux/mfd/samsung/
  
  SAMSUNG S5P/EXYNOS4 SOC SERIES CAMERA SUBSYSTEM DRIVERS
@@@ -7955,7 -8325,7 +8333,7 @@@ SYNOPSYS DESIGNWARE DMAC DRIVE
  M:    Viresh Kumar <viresh.linux@gmail.com>
  M:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  S:    Maintained
- F:    include/linux/dw_dmac.h
+ F:    include/linux/platform_data/dma-dw.h
  F:    drivers/dma/dw/
  
  SYNOPSYS DESIGNWARE MMC/SD/SDIO DRIVER
@@@ -8108,6 -8478,8 +8486,8 @@@ F:      drivers/mmc/host/sdhci-pltfm.[ch
  
  SECURE COMPUTING
  M:    Kees Cook <keescook@chromium.org>
+ R:    Andy Lutomirski <luto@amacapital.net>
+ R:    Will Drewry <wad@chromium.org>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git seccomp
  S:    Supported
  F:    kernel/seccomp.c
@@@ -8299,7 -8671,7 +8679,7 @@@ S:      Maintaine
  F:    drivers/media/radio/si4713/radio-usb-si4713.c
  
  SIANO DVB DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -8309,6 -8681,14 +8689,14 @@@ F:    drivers/media/usb/siano
  F:    drivers/media/usb/siano/
  F:    drivers/media/mmc/siano/
  
+ SIMPLEFB FB DRIVER
+ M:    Hans de Goede <hdegoede@redhat.com>
+ L:    linux-fbdev@vger.kernel.org
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/video/simple-framebuffer.txt
+ F:    drivers/video/fbdev/simplefb.c
+ F:    include/linux/platform_data/simplefb.h
  SH_VEU V4L2 MEM2MEM DRIVER
  L:    linux-media@vger.kernel.org
  S:    Orphan
@@@ -8350,7 -8730,6 +8738,6 @@@ F:      arch/arm/mach-s3c24xx/bast-irq.
  TI DAVINCI MACHINE SUPPORT
  M:    Sekhar Nori <nsekhar@ti.com>
  M:    Kevin Hilman <khilman@deeprootsystems.com>
- L:    davinci-linux-open-source@linux.davincidsp.com (moderated for non-subscribers)
  T:    git git://gitorious.org/linux-davinci/linux-davinci.git
  Q:    http://patchwork.kernel.org/project/linux-davinci/list/
  S:    Supported
@@@ -8360,7 -8739,6 +8747,6 @@@ F:      drivers/i2c/busses/i2c-davinci.
  TI DAVINCI SERIES MEDIA DRIVER
  M:    Lad, Prabhakar <prabhakar.csengg@gmail.com>
  L:    linux-media@vger.kernel.org
- L:    davinci-linux-open-source@linux.davincidsp.com (moderated for non-subscribers)
  W:    http://linuxtv.org/
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
@@@ -8428,11 -8806,11 +8814,11 @@@ S:   Maintaine
  F:    Documentation/security/Smack.txt
  F:    security/smack/
  
SMARTREFLEX DRIVERS FOR ADAPTIVE VOLTAGE SCALING (AVS)
+ DRIVERS FOR ADAPTIVE VOLTAGE SCALING (AVS)
  M:    Kevin Hilman <khilman@kernel.org>
  M:    Nishanth Menon <nm@ti.com>
  S:    Maintained
- F:    drivers/power/avs/smartreflex.c
+ F:    drivers/power/avs/
  F:    include/linux/power/smartreflex.h
  L:    linux-pm@vger.kernel.org
  
@@@ -8512,7 -8890,9 +8898,9 @@@ S:      Maintaine
  F:    drivers/leds/leds-net48xx.c
  
  SOFTLOGIC 6x10 MPEG CODEC
- M:    Ismael Luceno <ismael.luceno@corp.bluecherry.net>
+ M:    Bluecherry Maintainers <maintainers@bluecherrydvr.com>
+ M:    Andrey Utkin <andrey.utkin@corp.bluecherry.net>
+ M:    Andrey Utkin <andrey.krieger.utkin@gmail.com>
  L:    linux-media@vger.kernel.org
  S:    Supported
  F:    drivers/media/pci/solo6x10/
@@@ -8602,6 -8982,14 +8990,14 @@@ F:    include/sound/dmaengine_pcm.
  F:    sound/core/pcm_dmaengine.c
  F:    sound/soc/soc-generic-dmaengine-pcm.c
  
+ SP2 MEDIA DRIVER
+ M:    Olli Salonen <olli.salonen@iki.fi>
+ L:    linux-media@vger.kernel.org
+ W:    http://linuxtv.org/
+ Q:    http://patchwork.linuxtv.org/project/linux-media/list/
+ S:    Maintained
+ F:    drivers/media/dvb-frontends/sp2*
  SPARC + UltraSPARC (sparc/sparc64)
  M:    "David S. Miller" <davem@davemloft.net>
  L:    sparclinux@vger.kernel.org
@@@ -8713,11 -9101,6 +9109,6 @@@ M:     H Hartley Sweeten <hsweeten@visionen
  S:    Odd Fixes
  F:    drivers/staging/comedi/
  
- STAGING - ET131X NETWORK DRIVER
- M:    Mark Einon <mark.einon@gmail.com>
- S:    Odd Fixes
- F:    drivers/staging/et131x/
  STAGING - FLARION FT1000 DRIVERS
  M:    Marek Belisko <marek.belisko@gmail.com>
  S:    Odd Fixes
@@@ -8735,6 -9118,14 +9126,14 @@@ W:    http://www.lirc.org
  S:    Odd Fixes
  F:    drivers/staging/media/lirc/
  
+ STAGING - LUSTRE PARALLEL FILESYSTEM
+ M:    Oleg Drokin <oleg.drokin@intel.com>
+ M:    Andreas Dilger <andreas.dilger@intel.com>
+ L:    HPDD-discuss@lists.01.org (moderated for non-subscribers)
+ W:    http://lustre.opensfs.org/
+ S:    Maintained
+ F:    drivers/staging/lustre
  STAGING - NVIDIA COMPLIANT EMBEDDED CONTROLLER INTERFACE (nvec)
  M:    Julian Andres Klode <jak@jak-linux.org>
  M:    Marc Dietrich <marvin24@gmx.de>
@@@ -8814,13 -9205,6 +9213,13 @@@ F:    arch/m68k/sun3*
  F:    arch/m68k/include/asm/sun3*
  F:    drivers/net/ethernet/i825xx/sun3*
  
 +SUN4I LOW RES ADC ATTACHED TABLET KEYS DRIVER
 +M:    Hans de Goede <hdegoede@redhat.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt
 +F:    drivers/input/keyboard/sun4i-lradc-keys.c
 +
  SUNDANCE NETWORK DRIVER
  M:    Denis Kirjanov <kda@linux-powerpc.org>
  L:    netdev@vger.kernel.org
@@@ -8865,6 -9249,13 +9264,13 @@@ F:    lib/swiotlb.
  F:    arch/*/kernel/pci-swiotlb.c
  F:    include/linux/swiotlb.h
  
+ SWITCHDEV
+ M:    Jiri Pirko <jiri@resnulli.us>
+ L:    netdev@vger.kernel.org
+ S:    Supported
+ F:    net/switchdev/
+ F:    include/net/switchdev.h
  SYNOPSYS ARC ARCHITECTURE
  M:    Vineet Gupta <vgupta@synopsys.com>
  S:    Supported
@@@ -8982,7 -9373,7 +9388,7 @@@ S:      Maintaine
  F:    drivers/media/i2c/tda9840*
  
  TEA5761 TUNER DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -8990,7 -9381,7 +9396,7 @@@ S:      Odd fixe
  F:    drivers/media/tuners/tea5761.*
  
  TEA5767 TUNER DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -9035,17 -9426,13 +9441,13 @@@ F:   drivers/media/rc/ttusbir.
  TEGRA ARCHITECTURE SUPPORT
  M:    Stephen Warren <swarren@wwwdotorg.org>
  M:    Thierry Reding <thierry.reding@gmail.com>
+ M:    Alexandre Courbot <gnurou@gmail.com>
  L:    linux-tegra@vger.kernel.org
  Q:    http://patchwork.ozlabs.org/project/linux-tegra/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux.git
  S:    Supported
  N:    [^a-z]tegra
  
- TEGRA ASOC DRIVER
- M:    Stephen Warren <swarren@wwwdotorg.org>
- S:    Supported
- F:    sound/soc/tegra/
  TEGRA CLOCK DRIVER
  M:    Peter De Schrijver <pdeschrijver@nvidia.com>
  M:    Prashant Gaikwad <pgaikwad@nvidia.com>
@@@ -9057,11 -9444,6 +9459,6 @@@ M:     Laxman Dewangan <ldewangan@nvidia.co
  S:    Supported
  F:    drivers/dma/tegra20-apb-dma.c
  
- TEGRA GPIO DRIVER
- M:    Stephen Warren <swarren@wwwdotorg.org>
- S:    Supported
- F:    drivers/gpio/gpio-tegra.c
  TEGRA I2C DRIVER
  M:    Laxman Dewangan <ldewangan@nvidia.com>
  S:    Supported
@@@ -9078,11 -9460,6 +9475,6 @@@ M:     Laxman Dewangan <ldewangan@nvidia.co
  S:    Supported
  F:    drivers/input/keyboard/tegra-kbc.c
  
- TEGRA PINCTRL DRIVER
- M:    Stephen Warren <swarren@wwwdotorg.org>
- S:    Supported
- F:    drivers/pinctrl/pinctrl-tegra*
  TEGRA PWM DRIVER
  M:    Thierry Reding <thierry.reding@gmail.com>
  S:    Supported
@@@ -9135,6 -9512,7 +9527,7 @@@ Q:      https://patchwork.kernel.org/project
  S:    Supported
  F:    drivers/thermal/
  F:    include/linux/thermal.h
+ F:    include/uapi/linux/thermal.h
  F:    include/linux/cpu_cooling.h
  F:    Documentation/devicetree/bindings/thermal/
  
@@@ -9173,6 -9551,15 +9566,15 @@@ F:    drivers/misc/tifm
  F:    drivers/mmc/host/tifm_sd.c
  F:    include/linux/tifm.h
  
+ TI KEYSTONE MULTICORE NAVIGATOR DRIVERS
+ M:    Santosh Shilimkar <ssantosh@kernel.org>
+ L:    linux-kernel@vger.kernel.org
+ L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+ S:    Maintained
+ F:    drivers/soc/ti/*
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone.git
  TI LM49xxx FAMILY ASoC CODEC DRIVERS
  M:    M R Swami Reddy <mr.swami.reddy@ti.com>
  M:    Vishwas A Deshpande <vishwas.a.deshpande@ti.com>
@@@ -9230,7 -9617,7 +9632,7 @@@ F:      include/uapi/linux/tipc*.
  F:    net/tipc/
  
  TILE ARCHITECTURE
- M:    Chris Metcalf <cmetcalf@tilera.com>
+ M:    Chris Metcalf <cmetcalf@ezchip.com>
  W:    http://www.tilera.com/scm/
  S:    Supported
  F:    arch/tile/
@@@ -9307,13 -9694,21 +9709,21 @@@ F:   include/linux/shmem_fs.
  F:    mm/shmem.c
  
  TM6000 VIDEO4LINUX DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
  S:    Odd fixes
  F:    drivers/media/usb/tm6000/
  
+ TW68 VIDEO4LINUX DRIVER
+ M:    Hans Verkuil <hverkuil@xs4all.nl>
+ L:    linux-media@vger.kernel.org
+ T:    git git://linuxtv.org/media_tree.git
+ W:    http://linuxtv.org
+ S:    Odd Fixes
+ F:    drivers/media/pci/tw68/
  TPM DEVICE DRIVER
  M:    Peter Huewe <peterhuewe@gmx.de>
  M:    Ashley Lai <ashley@ashleylai.com>
@@@ -9335,6 -9730,7 +9745,7 @@@ F:      include/*/ftrace.
  F:    include/linux/trace*.h
  F:    include/trace/
  F:    kernel/trace/
+ F:    tools/testing/selftests/ftrace/
  
  TRIVIAL PATCHES
  M:    Jiri Kosina <trivial@kernel.org>
@@@ -9469,7 -9865,6 +9880,6 @@@ F:     drivers/staging/unisys
  
  UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER
  M:    Vinayak Holikatti <vinholikatti@gmail.com>
- M:    Santosh Y <santoshsy@gmail.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    Documentation/scsi/ufs.txt
@@@ -9563,11 -9958,6 +9973,6 @@@ S:     Maintaine
  F:    Documentation/hid/hiddev.txt
  F:    drivers/hid/usbhid/
  
- USB/IP DRIVERS
- L:    linux-usb@vger.kernel.org
- S:    Orphan
- F:    drivers/staging/usbip/
  USB ISP116X DRIVER
  M:    Olav Kongas <ok@artecdesign.ee>
  L:    linux-usb@vger.kernel.org
@@@ -9708,7 -10098,7 +10113,7 @@@ USB WEBCAM GADGE
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
- F:    drivers/usb/gadget/function/*uvc*.c
+ F:    drivers/usb/gadget/function/*uvc*
  F:    drivers/usb/gadget/legacy/webcam.c
  
  USB WIRELESS RNDIS DRIVER (rndis_wlan)
@@@ -9855,13 -10245,13 +10260,13 @@@ L: netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/via/via-velocity.*
  
- VIVI VIRTUAL VIDEO DRIVER
+ VIVID VIRTUAL VIDEO DRIVER
  M:    Hans Verkuil <hverkuil@xs4all.nl>
  L:    linux-media@vger.kernel.org
  T:    git git://linuxtv.org/media_tree.git
  W:    http://linuxtv.org
  S:    Maintained
- F:    drivers/media/platform/vivi*
+ F:    drivers/media/platform/vivid/*
  
  VLAN (802.1Q)
  M:    Patrick McHardy <kaber@trash.net>
@@@ -9922,6 -10312,7 +10327,7 @@@ F:    drivers/scsi/vmw_pvscsi.
  VOLTAGE AND CURRENT REGULATOR FRAMEWORK
  M:    Liam Girdwood <lgirdwood@gmail.com>
  M:    Mark Brown <broonie@kernel.org>
+ L:    linux-kernel@vger.kernel.org
  W:    http://opensource.wolfsonmicro.com/node/15
  W:    http://www.slimlogic.co.uk/?p=48
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git
@@@ -10123,8 -10514,15 +10529,15 @@@ L: linux-edac@vger.kernel.or
  S:    Maintained
  F:    arch/x86/kernel/cpu/mcheck/*
  
+ X86 VDSO
+ M:    Andy Lutomirski <luto@amacapital.net>
+ L:    linux-kernel@vger.kernel.org
+ T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/vdso
+ S:    Maintained
+ F:    arch/x86/vdso/
  XC2028/3028 TUNER DRIVER
- M:    Mauro Carvalho Chehab <m.chehab@samsung.com>
+ M:    Mauro Carvalho Chehab <mchehab@osg.samsung.com>
  L:    linux-media@vger.kernel.org
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
@@@ -10181,6 -10579,15 +10594,15 @@@ S: Supporte
  F:    drivers/block/xen-blkback/*
  F:    drivers/block/xen*
  
+ XEN PVSCSI DRIVERS
+ M:    Juergen Gross <jgross@suse.com>
+ L:    xen-devel@lists.xenproject.org (moderated for non-subscribers)
+ L:    linux-scsi@vger.kernel.org
+ S:    Supported
+ F:    drivers/scsi/xen-scsifront.c
+ F:    drivers/xen/xen-scsiback.c
+ F:    include/xen/interface/io/vscsiif.h
  XEN SWIOTLB SUBSYSTEM
  M:    Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
  L:    xen-devel@lists.xenproject.org (moderated for non-subscribers)
@@@ -10205,16 -10612,18 +10627,18 @@@ M:        John Linn <John.Linn@xilinx.com
  S:    Maintained
  F:    drivers/net/ethernet/xilinx/xilinx_axienet*
  
- XILINX SYSTEMACE DRIVER
- S:    Orphan
- F:    drivers/block/xsysace.c
  XILINX UARTLITE SERIAL DRIVER
  M:    Peter Korsgaard <jacmet@sunsite.dk>
  L:    linux-serial@vger.kernel.org
  S:    Maintained
  F:    drivers/tty/serial/uartlite.c
  
+ XILLYBUS DRIVER
+ M:    Eli Billauer <eli.billauer@gmail.com>
+ L:    linux-kernel@vger.kernel.org
+ S:    Supported
+ F:    drivers/char/xillybus/
  XTENSA XTFPGA PLATFORM SUPPORT
  M:    Max Filippov <jcmvbkbc@gmail.com>
  L:    linux-xtensa@linux-xtensa.org
diff --combined drivers/input/evdev.c
index 8d4c6ca781ff07f880bc4d6022aacea82789bfa5,18d4b2c8fe55092aa8e31c411faf051d968fb49d..e7cee3880b7503c7433eea602b3469940aa1eea6
@@@ -62,6 -62,26 +62,6 @@@ struct evdev_client 
        struct input_event buffer[];
  };
  
 -static int evdev_set_clk_type(struct evdev_client *client, unsigned int clkid)
 -{
 -      switch (clkid) {
 -
 -      case CLOCK_REALTIME:
 -              client->clk_type = EV_CLK_REAL;
 -              break;
 -      case CLOCK_MONOTONIC:
 -              client->clk_type = EV_CLK_MONO;
 -              break;
 -      case CLOCK_BOOTTIME:
 -              client->clk_type = EV_CLK_BOOT;
 -              break;
 -      default:
 -              return -EINVAL;
 -      }
 -
 -      return 0;
 -}
 -
  /* flush queued events of type @type, caller must hold client->buffer_lock */
  static void __evdev_flush_queue(struct evdev_client *client, unsigned int type)
  {
        client->head = head;
  }
  
 -/* queue SYN_DROPPED event */
 -static void evdev_queue_syn_dropped(struct evdev_client *client)
 +/* queue SYN_DROPPED event and flush queue if flush parameter is true */
 +static void evdev_queue_syn_dropped(struct evdev_client *client, bool flush)
  {
        unsigned long flags;
        struct input_event ev;
  
        spin_lock_irqsave(&client->buffer_lock, flags);
  
 +      if (flush)
 +              client->packet_head = client->head = client->tail;
 +
        client->buffer[client->head++] = ev;
        client->head &= client->bufsize - 1;
  
        spin_unlock_irqrestore(&client->buffer_lock, flags);
  }
  
 +static int evdev_set_clk_type(struct evdev_client *client, unsigned int clkid)
 +{
 +      if (client->clk_type == clkid)
 +              return 0;
 +
 +      switch (clkid) {
 +
 +      case CLOCK_REALTIME:
 +              client->clk_type = EV_CLK_REAL;
 +              break;
 +      case CLOCK_MONOTONIC:
 +              client->clk_type = EV_CLK_MONO;
 +              break;
 +      case CLOCK_BOOTTIME:
 +              client->clk_type = EV_CLK_BOOT;
 +              break;
 +      default:
 +              return -EINVAL;
 +      }
 +
 +      /* Flush pending events and queue SYN_DROPPED event.*/
 +      evdev_queue_syn_dropped(client, true);
 +
 +      return 0;
 +}
 +
  static void __pass_event(struct evdev_client *client,
                         const struct input_event *event)
  {
@@@ -460,7 -451,7 +460,7 @@@ static int evdev_open(struct inode *ino
  
   err_free_client:
        evdev_detach_client(evdev, client);
-       kfree(client);
+       kvfree(client);
        return error;
  }
  
@@@ -803,7 -794,7 +803,7 @@@ static int evdev_handle_get_val(struct 
  
        ret = bits_to_user(mem, maxbit, maxlen, p, compat);
        if (ret < 0)
 -              evdev_queue_syn_dropped(client);
 +              evdev_queue_syn_dropped(client, false);
  
        kfree(mem);
  
index 3b681c8042abed29621b442e5b8e2eb780f2c17b,e53f232eda0ece0a97fdacb47714aaaa8c09b537..2e855e6f3565cffe0644922445581dec92c00914
@@@ -448,7 -448,8 +448,7 @@@ static int imx_keypad_probe(struct plat
                return -ENOMEM;
        }
  
 -      keypad = devm_kzalloc(&pdev->dev, sizeof(struct imx_keypad),
 -                            GFP_KERNEL);
 +      keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad), GFP_KERNEL);
        if (!keypad) {
                dev_err(&pdev->dev, "not enough memory for driver data\n");
                return -ENOMEM;
@@@ -579,7 -580,6 +579,6 @@@ static SIMPLE_DEV_PM_OPS(imx_kbd_pm_ops
  static struct platform_driver imx_keypad_driver = {
        .driver         = {
                .name   = "imx-keypad",
-               .owner  = THIS_MODULE,
                .pm     = &imx_kbd_pm_ops,
                .of_match_table = of_match_ptr(imx_keypad_of_match),
        },
index dd2fd397466ad62e12d1394083c58a34eddb6e7a,d88d73d835526a16d2e5e4e48c6a2562c802a4cf..f719f28d370cf2e80c69d6ea4bab73d4f298c486
@@@ -475,13 -475,6 +475,13 @@@ static void alps_process_trackstick_pac
        struct input_dev *dev = priv->dev2;
        int x, y, z, left, right, middle;
  
 +      /* It should be a DualPoint when received trackstick packet */
 +      if (!(priv->flags & ALPS_DUALPOINT)) {
 +              psmouse_warn(psmouse,
 +                           "Rejected trackstick packet from non DualPoint device");
 +              return;
 +      }
 +
        /* Sanity check packet */
        if (!(packet[0] & 0x40)) {
                psmouse_dbg(psmouse, "Bad trackstick packet, discarding\n");
@@@ -706,8 -699,7 +706,8 @@@ static void alps_process_touchpad_packe
  
        alps_report_semi_mt_data(psmouse, fingers);
  
 -      if (!(priv->quirks & ALPS_QUIRK_TRACKSTICK_BUTTONS)) {
 +      if ((priv->flags & ALPS_DUALPOINT) &&
 +          !(priv->quirks & ALPS_QUIRK_TRACKSTICK_BUTTONS)) {
                input_report_key(dev2, BTN_LEFT, f->ts_left);
                input_report_key(dev2, BTN_RIGHT, f->ts_right);
                input_report_key(dev2, BTN_MIDDLE, f->ts_middle);
@@@ -751,11 -743,8 +751,11 @@@ static void alps_process_packet_v6(stru
         */
        if (packet[5] == 0x7F) {
                /* It should be a DualPoint when received Trackpoint packet */
 -              if (!(priv->flags & ALPS_DUALPOINT))
 +              if (!(priv->flags & ALPS_DUALPOINT)) {
 +                      psmouse_warn(psmouse,
 +                                   "Rejected trackstick packet from non DualPoint device");
                        return;
 +              }
  
                /* Trackpoint packet */
                x = packet[1] | ((packet[3] & 0x20) << 2);
@@@ -846,8 -835,8 +846,8 @@@ static void alps_process_packet_v4(stru
                f->fingers = alps_process_bitmap(priv, f);
        }
  
-       f->left = packet[4] & 0x01;
-       f->right = packet[4] & 0x02;
+       f->left = !!(packet[4] & 0x01);
+       f->right = !!(packet[4] & 0x02);
  
        f->st.x = ((packet[1] & 0x7f) << 4) | ((packet[3] & 0x30) >> 2) |
                  ((packet[0] & 0x30) >> 4);
@@@ -1037,13 -1026,6 +1037,13 @@@ static void alps_process_trackstick_pac
        struct input_dev *dev2 = priv->dev2;
        int x, y, z, left, right, middle;
  
 +      /* It should be a DualPoint when received trackstick packet */
 +      if (!(priv->flags & ALPS_DUALPOINT)) {
 +              psmouse_warn(psmouse,
 +                           "Rejected trackstick packet from non DualPoint device");
 +              return;
 +      }
 +
        /*
         *        b7 b6 b5 b4 b3 b2 b1 b0
         * Byte0   0  1  0  0  1  0  0  0
@@@ -1238,7 -1220,13 +1238,13 @@@ static psmouse_ret_t alps_process_byte(
  {
        struct alps_data *priv = psmouse->private;
  
-       if ((psmouse->packet[0] & 0xc8) == 0x08) { /* PS/2 packet */
+       /*
+        * Check if we are dealing with a bare PS/2 packet, presumably from
+        * a device connected to the external PS/2 port. Because bare PS/2
+        * protocol does not have enough constant bits to self-synchronize
+        * properly we only do this if the device is fully synchronized.
+        */
+       if (!psmouse->out_of_sync_cnt && (psmouse->packet[0] & 0xc8) == 0x08) {
                if (psmouse->pktcnt == 3) {
                        alps_report_bare_ps2_packet(psmouse, psmouse->packet,
                                                    true);
        }
  
        /* Bytes 2 - pktsize should have 0 in the highest bit */
-       if ((priv->proto_version < ALPS_PROTO_V5) &&
+       if (priv->proto_version < ALPS_PROTO_V5 &&
            psmouse->pktcnt >= 2 && psmouse->pktcnt <= psmouse->pktsize &&
            (psmouse->packet[psmouse->pktcnt - 1] & 0x80)) {
                psmouse_dbg(psmouse, "refusing packet[%i] = %x\n",
                            psmouse->pktcnt - 1,
                            psmouse->packet[psmouse->pktcnt - 1]);
+               if (priv->proto_version == ALPS_PROTO_V3 &&
+                   psmouse->pktcnt == psmouse->pktsize) {
+                       /*
+                        * Some Dell boxes, such as Latitude E6440 or E7440
+                        * with closed lid, quite often smash last byte of
+                        * otherwise valid packet with 0xff. Given that the
+                        * next packet is very likely to be valid let's
+                        * report PSMOUSE_FULL_PACKET but not process data,
+                        * rather than reporting PSMOUSE_BAD_DATA and
+                        * filling the logs.
+                        */
+                       return PSMOUSE_FULL_PACKET;
+               }
                return PSMOUSE_BAD_DATA;
        }
  
@@@ -2440,24 -2443,14 +2461,24 @@@ int alps_init(struct psmouse *psmouse
                dev1->keybit[BIT_WORD(BTN_MIDDLE)] |= BIT_MASK(BTN_MIDDLE);
        }
  
 +      if (priv->flags & ALPS_DUALPOINT) {
 +              /*
 +               * format of input device name is: "protocol vendor name"
 +               * see function psmouse_switch_protocol() in psmouse-base.c
 +               */
 +              dev2->name = "AlpsPS/2 ALPS DualPoint Stick";
 +              dev2->id.product = PSMOUSE_ALPS;
 +              dev2->id.version = priv->proto_version;
 +      } else {
 +              dev2->name = "PS/2 ALPS Mouse";
 +              dev2->id.product = PSMOUSE_PS2;
 +              dev2->id.version = 0x0000;
 +      }
 +
        snprintf(priv->phys, sizeof(priv->phys), "%s/input1", psmouse->ps2dev.serio->phys);
        dev2->phys = priv->phys;
 -      dev2->name = (priv->flags & ALPS_DUALPOINT) ?
 -                   "DualPoint Stick" : "ALPS PS/2 Device";
        dev2->id.bustype = BUS_I8042;
        dev2->id.vendor  = 0x0002;
 -      dev2->id.product = PSMOUSE_ALPS;
 -      dev2->id.version = 0x0000;
        dev2->dev.parent = &psmouse->ps2dev.serio->dev;
  
        dev2->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REL);
        /* We are having trouble resyncing ALPS touchpads so disable it for now */
        psmouse->resync_time = 0;
  
+       /* Allow 2 invalid packets without resetting device */
+       psmouse->resetafter = psmouse->pktsize * 2;
        return 0;
  
  init_fail:
index 4a9de33a9afd0ab96b75f337d313d8851fa60d1f,95a3a6e2faf6f29aef187485a0c832f6595121ff..68469feda470d9d8b34c249cbcd02426795f94c8
@@@ -725,19 -725,16 +725,19 @@@ static int psmouse_extensions(struct ps
  
  /* Always check for focaltech, this is safe as it uses pnp-id matching */
        if (psmouse_do_detect(focaltech_detect, psmouse, set_properties) == 0) {
 -              if (!set_properties || focaltech_init(psmouse) == 0) {
 -                      /*
 -                       * Not supported yet, use bare protocol.
 -                       * Note that we need to also restrict
 -                       * psmouse_max_proto so that psmouse_initialize()
 -                       * does not try to reset rate and resolution,
 -                       * because even that upsets the device.
 -                       */
 -                      psmouse_max_proto = PSMOUSE_PS2;
 -                      return PSMOUSE_PS2;
 +              if (max_proto > PSMOUSE_IMEX) {
 +                      if (!set_properties || focaltech_init(psmouse) == 0) {
 +                              if (focaltech_supported())
 +                                      return PSMOUSE_FOCALTECH;
 +                              /*
 +                               * Note that we need to also restrict
 +                               * psmouse_max_proto so that psmouse_initialize()
 +                               * does not try to reset rate and resolution,
 +                               * because even that upsets the device.
 +                               */
 +                              psmouse_max_proto = PSMOUSE_PS2;
 +                              return PSMOUSE_PS2;
 +                      }
                }
        }
  
@@@ -1066,15 -1063,6 +1066,15 @@@ static const struct psmouse_protocol ps
                .alias          = "cortps",
                .detect         = cortron_detect,
        },
 +#ifdef CONFIG_MOUSE_PS2_FOCALTECH
 +      {
 +              .type           = PSMOUSE_FOCALTECH,
 +              .name           = "FocalTechPS/2",
 +              .alias          = "focaltech",
 +              .detect         = focaltech_detect,
 +              .init           = focaltech_init,
 +      },
 +#endif
        {
                .type           = PSMOUSE_AUTO,
                .name           = "auto",
@@@ -1548,16 -1536,9 +1548,9 @@@ static int psmouse_reconnect(struct ser
  {
        struct psmouse *psmouse = serio_get_drvdata(serio);
        struct psmouse *parent = NULL;
-       struct serio_driver *drv = serio->drv;
        unsigned char type;
        int rc = -1;
  
-       if (!drv || !psmouse) {
-               psmouse_dbg(psmouse,
-                           "reconnect request, but serio is disconnected, ignoring...\n");
-               return -1;
-       }
        mutex_lock(&psmouse_mutex);
  
        if (serio->parent && serio->id.type == SERIO_PS_PSTHRU) {
index 8ae1841059b1db8ed9d19c83d96812d66a8bd624,f9472920d986368f7aa83eb7d0621489d774b050..f89de8971bf8f1e2c1094cb838fe07cf7a7eb9b2
@@@ -135,14 -135,18 +135,18 @@@ static const struct min_max_quirk min_m
                1232, 5710, 1156, 4696
        },
        {
-               (const char * const []){"LEN0034", "LEN0036", "LEN2002",
-                                       "LEN2004", NULL},
+               (const char * const []){"LEN0034", "LEN0036", "LEN0039",
+                                       "LEN2002", "LEN2004", NULL},
                1024, 5112, 2024, 4832
        },
        {
                (const char * const []){"LEN2001", NULL},
                1024, 5022, 2508, 4832
        },
+       {
+               (const char * const []){"LEN2006", NULL},
+               1264, 5675, 1171, 4688
+       },
        { }
  };
  
@@@ -163,6 -167,7 +167,7 @@@ static const char * const topbuttonpad_
        "LEN0036", /* T440 */
        "LEN0037",
        "LEN0038",
+       "LEN0039", /* T440s */
        "LEN0041",
        "LEN0042", /* Yoga */
        "LEN0045",
@@@ -569,6 -574,14 +574,6 @@@ static void synaptics_pt_create(struct 
   *    Functions to interpret the absolute mode packets
   ****************************************************************************/
  
 -static void synaptics_mt_state_set(struct synaptics_mt_state *state, int count,
 -                                 int sgm, int agm)
 -{
 -      state->count = count;
 -      state->sgm = sgm;
 -      state->agm = agm;
 -}
 -
  static void synaptics_parse_agm(const unsigned char buf[],
                                struct synaptics_data *priv,
                                struct synaptics_hw_state *hw)
                break;
  
        case 2:
 -              /* AGM-CONTACT packet: (count, sgm, agm) */
 -              synaptics_mt_state_set(&agm->mt_state, buf[1], buf[2], buf[4]);
 +              /* AGM-CONTACT packet: we are only interested in the count */
 +              priv->agm_count = buf[1];
                break;
  
        default:
                break;
        }
 -
 -      /* Record that at least one AGM has been received since last SGM */
 -      priv->agm_pending = true;
  }
  
  static bool is_forcepad;
@@@ -787,68 -803,424 +792,68 @@@ static void synaptics_report_buttons(st
                input_report_key(dev, BTN_0 + i, hw->ext_buttons & (1 << i));
  }
  
 -static void synaptics_report_slot(struct input_dev *dev, int slot,
 -                                const struct synaptics_hw_state *hw)
 -{
 -      input_mt_slot(dev, slot);
 -      input_mt_report_slot_state(dev, MT_TOOL_FINGER, (hw != NULL));
 -      if (!hw)
 -              return;
 -
 -      input_report_abs(dev, ABS_MT_POSITION_X, hw->x);
 -      input_report_abs(dev, ABS_MT_POSITION_Y, synaptics_invert_y(hw->y));
 -      input_report_abs(dev, ABS_MT_PRESSURE, hw->z);
 -}
 -
  static void synaptics_report_mt_data(struct psmouse *psmouse,
 -                                   struct synaptics_mt_state *mt_state,
 -                                   const struct synaptics_hw_state *sgm)
 +                                   const struct synaptics_hw_state *sgm,
 +                                   int num_fingers)
  {
        struct input_dev *dev = psmouse->dev;
        struct synaptics_data *priv = psmouse->private;
 -      struct synaptics_hw_state *agm = &priv->agm;
 -      struct synaptics_mt_state *old = &priv->mt_state;
 +      const struct synaptics_hw_state *hw[2] = { sgm, &priv->agm };
 +      struct input_mt_pos pos[2];
 +      int slot[2], nsemi, i;
  
 -      switch (mt_state->count) {
 -      case 0:
 -              synaptics_report_slot(dev, 0, NULL);
 -              synaptics_report_slot(dev, 1, NULL);
 -              break;
 -      case 1:
 -              if (mt_state->sgm == -1) {
 -                      synaptics_report_slot(dev, 0, NULL);
 -                      synaptics_report_slot(dev, 1, NULL);
 -              } else if (mt_state->sgm == 0) {
 -                      synaptics_report_slot(dev, 0, sgm);
 -                      synaptics_report_slot(dev, 1, NULL);
 -              } else {
 -                      synaptics_report_slot(dev, 0, NULL);
 -                      synaptics_report_slot(dev, 1, sgm);
 -              }
 -              break;
 -      default:
 -              /*
 -               * If the finger slot contained in SGM is valid, and either
 -               * hasn't changed, or is new, or the old SGM has now moved to
 -               * AGM, then report SGM in MTB slot 0.
 -               * Otherwise, empty MTB slot 0.
 -               */
 -              if (mt_state->sgm != -1 &&
 -                  (mt_state->sgm == old->sgm ||
 -                   old->sgm == -1 || mt_state->agm == old->sgm))
 -                      synaptics_report_slot(dev, 0, sgm);
 -              else
 -                      synaptics_report_slot(dev, 0, NULL);
 +      nsemi = clamp_val(num_fingers, 0, 2);
  
 -              /*
 -               * If the finger slot contained in AGM is valid, and either
 -               * hasn't changed, or is new, then report AGM in MTB slot 1.
 -               * Otherwise, empty MTB slot 1.
 -               *
 -               * However, in the case where the AGM is new, make sure that
 -               * that it is either the same as the old SGM, or there was no
 -               * SGM.
 -               *
 -               * Otherwise, if the SGM was just 1, and the new AGM is 2, then
 -               * the new AGM will keep the old SGM's tracking ID, which can
 -               * cause apparent drumroll.  This happens if in the following
 -               * valid finger sequence:
 -               *
 -               *  Action                 SGM  AGM (MTB slot:Contact)
 -               *  1. Touch contact 0    (0:0)
 -               *  2. Touch contact 1    (0:0, 1:1)
 -               *  3. Lift  contact 0    (1:1)
 -               *  4. Touch contacts 2,3 (0:2, 1:3)
 -               *
 -               * In step 4, contact 3, in AGM must not be given the same
 -               * tracking ID as contact 1 had in step 3.  To avoid this,
 -               * the first agm with contact 3 is dropped and slot 1 is
 -               * invalidated (tracking ID = -1).
 -               */
 -              if (mt_state->agm != -1 &&
 -                  (mt_state->agm == old->agm ||
 -                   (old->agm == -1 &&
 -                    (old->sgm == -1 || mt_state->agm == old->sgm))))
 -                      synaptics_report_slot(dev, 1, agm);
 -              else
 -                      synaptics_report_slot(dev, 1, NULL);
 -              break;
 +      for (i = 0; i < nsemi; i++) {
 +              pos[i].x = hw[i]->x;
 +              pos[i].y = synaptics_invert_y(hw[i]->y);
        }
  
 +      input_mt_assign_slots(dev, slot, pos, nsemi);
 +
 +      for (i = 0; i < nsemi; i++) {
 +              input_mt_slot(dev, slot[i]);
 +              input_mt_report_slot_state(dev, MT_TOOL_FINGER, true);
 +              input_report_abs(dev, ABS_MT_POSITION_X, pos[i].x);
 +              input_report_abs(dev, ABS_MT_POSITION_Y, pos[i].y);
 +              input_report_abs(dev, ABS_MT_PRESSURE, hw[i]->z);
 +      }
 +
 +      input_mt_drop_unused(dev);
 +
        /* Don't use active slot count to generate BTN_TOOL events. */
        input_mt_report_pointer_emulation(dev, false);
  
        /* Send the number of fingers reported by touchpad itself. */
 -      input_mt_report_finger_count(dev, mt_state->count);
 +      input_mt_report_finger_count(dev, num_fingers);
  
        synaptics_report_buttons(psmouse, sgm);
  
        input_sync(dev);
  }
  
 -/* Handle case where mt_state->count = 0 */
 -static void synaptics_image_sensor_0f(struct synaptics_data *priv,
 -                                    struct synaptics_mt_state *mt_state)
 -{
 -      synaptics_mt_state_set(mt_state, 0, -1, -1);
 -      priv->mt_state_lost = false;
 -}
 -
 -/* Handle case where mt_state->count = 1 */
 -static void synaptics_image_sensor_1f(struct synaptics_data *priv,
 -                                    struct synaptics_mt_state *mt_state)
 -{
 -      struct synaptics_hw_state *agm = &priv->agm;
 -      struct synaptics_mt_state *old = &priv->mt_state;
 -
 -      /*
 -       * If the last AGM was (0,0,0), and there is only one finger left,
 -       * then we absolutely know that SGM contains slot 0, and all other
 -       * fingers have been removed.
 -       */
 -      if (priv->agm_pending && agm->z == 0) {
 -              synaptics_mt_state_set(mt_state, 1, 0, -1);
 -              priv->mt_state_lost = false;
 -              return;
 -      }
 -
 -      switch (old->count) {
 -      case 0:
 -              synaptics_mt_state_set(mt_state, 1, 0, -1);
 -              break;
 -      case 1:
 -              /*
 -               * If mt_state_lost, then the previous transition was 3->1,
 -               * and SGM now contains either slot 0 or 1, but we don't know
 -               * which.  So, we just assume that the SGM now contains slot 1.
 -               *
 -               * If pending AGM and either:
 -               *   (a) the previous SGM slot contains slot 0, or
 -               *   (b) there was no SGM slot
 -               * then, the SGM now contains slot 1
 -               *
 -               * Case (a) happens with very rapid "drum roll" gestures, where
 -               * slot 0 finger is lifted and a new slot 1 finger touches
 -               * within one reporting interval.
 -               *
 -               * Case (b) happens if initially two or more fingers tap
 -               * briefly, and all but one lift before the end of the first
 -               * reporting interval.
 -               *
 -               * (In both these cases, slot 0 will becomes empty, so SGM
 -               * contains slot 1 with the new finger)
 -               *
 -               * Else, if there was no previous SGM, it now contains slot 0.
 -               *
 -               * Otherwise, SGM still contains the same slot.
 -               */
 -              if (priv->mt_state_lost ||
 -                  (priv->agm_pending && old->sgm <= 0))
 -                      synaptics_mt_state_set(mt_state, 1, 1, -1);
 -              else if (old->sgm == -1)
 -                      synaptics_mt_state_set(mt_state, 1, 0, -1);
 -              break;
 -      case 2:
 -              /*
 -               * If mt_state_lost, we don't know which finger SGM contains.
 -               *
 -               * So, report 1 finger, but with both slots empty.
 -               * We will use slot 1 on subsequent 1->1
 -               */
 -              if (priv->mt_state_lost) {
 -                      synaptics_mt_state_set(mt_state, 1, -1, -1);
 -                      break;
 -              }
 -              /*
 -               * Since the last AGM was NOT (0,0,0), it was the finger in
 -               * slot 0 that has been removed.
 -               * So, SGM now contains previous AGM's slot, and AGM is now
 -               * empty.
 -               */
 -              synaptics_mt_state_set(mt_state, 1, old->agm, -1);
 -              break;
 -      case 3:
 -              /*
 -               * Since last AGM was not (0,0,0), we don't know which finger
 -               * is left.
 -               *
 -               * So, report 1 finger, but with both slots empty.
 -               * We will use slot 1 on subsequent 1->1
 -               */
 -              synaptics_mt_state_set(mt_state, 1, -1, -1);
 -              priv->mt_state_lost = true;
 -              break;
 -      case 4:
 -      case 5:
 -              /* mt_state was updated by AGM-CONTACT packet */
 -              break;
 -      }
 -}
 -
 -/* Handle case where mt_state->count = 2 */
 -static void synaptics_image_sensor_2f(struct synaptics_data *priv,
 -                                    struct synaptics_mt_state *mt_state)
 -{
 -      struct synaptics_mt_state *old = &priv->mt_state;
 -
 -      switch (old->count) {
 -      case 0:
 -              synaptics_mt_state_set(mt_state, 2, 0, 1);
 -              break;
 -      case 1:
 -              /*
 -               * If previous SGM contained slot 1 or higher, SGM now contains
 -               * slot 0 (the newly touching finger) and AGM contains SGM's
 -               * previous slot.
 -               *
 -               * Otherwise, SGM still contains slot 0 and AGM now contains
 -               * slot 1.
 -               */
 -              if (old->sgm >= 1)
 -                      synaptics_mt_state_set(mt_state, 2, 0, old->sgm);
 -              else
 -                      synaptics_mt_state_set(mt_state, 2, 0, 1);
 -              break;
 -      case 2:
 -              /*
 -               * If mt_state_lost, SGM now contains either finger 1 or 2, but
 -               * we don't know which.
 -               * So, we just assume that the SGM contains slot 0 and AGM 1.
 -               */
 -              if (priv->mt_state_lost)
 -                      synaptics_mt_state_set(mt_state, 2, 0, 1);
 -              /*
 -               * Otherwise, use the same mt_state, since it either hasn't
 -               * changed, or was updated by a recently received AGM-CONTACT
 -               * packet.
 -               */
 -              break;
 -      case 3:
 -              /*
 -               * 3->2 transitions have two unsolvable problems:
 -               *  1) no indication is given which finger was removed
 -               *  2) no way to tell if agm packet was for finger 3
 -               *     before 3->2, or finger 2 after 3->2.
 -               *
 -               * So, report 2 fingers, but empty all slots.
 -               * We will guess slots [0,1] on subsequent 2->2.
 -               */
 -              synaptics_mt_state_set(mt_state, 2, -1, -1);
 -              priv->mt_state_lost = true;
 -              break;
 -      case 4:
 -      case 5:
 -              /* mt_state was updated by AGM-CONTACT packet */
 -              break;
 -      }
 -}
 -
 -/* Handle case where mt_state->count = 3 */
 -static void synaptics_image_sensor_3f(struct synaptics_data *priv,
 -                                    struct synaptics_mt_state *mt_state)
 -{
 -      struct synaptics_mt_state *old = &priv->mt_state;
 -
 -      switch (old->count) {
 -      case 0:
 -              synaptics_mt_state_set(mt_state, 3, 0, 2);
 -              break;
 -      case 1:
 -              /*
 -               * If previous SGM contained slot 2 or higher, SGM now contains
 -               * slot 0 (one of the newly touching fingers) and AGM contains
 -               * SGM's previous slot.
 -               *
 -               * Otherwise, SGM now contains slot 0 and AGM contains slot 2.
 -               */
 -              if (old->sgm >= 2)
 -                      synaptics_mt_state_set(mt_state, 3, 0, old->sgm);
 -              else
 -                      synaptics_mt_state_set(mt_state, 3, 0, 2);
 -              break;
 -      case 2:
 -              /*
 -               * If the AGM previously contained slot 3 or higher, then the
 -               * newly touching finger is in the lowest available slot.
 -               *
 -               * If SGM was previously 1 or higher, then the new SGM is
 -               * now slot 0 (with a new finger), otherwise, the new finger
 -               * is now in a hidden slot between 0 and AGM's slot.
 -               *
 -               * In all such cases, the SGM now contains slot 0, and the AGM
 -               * continues to contain the same slot as before.
 -               */
 -              if (old->agm >= 3) {
 -                      synaptics_mt_state_set(mt_state, 3, 0, old->agm);
 -                      break;
 -              }
 -
 -              /*
 -               * After some 3->1 and all 3->2 transitions, we lose track
 -               * of which slot is reported by SGM and AGM.
 -               *
 -               * For 2->3 in this state, report 3 fingers, but empty all
 -               * slots, and we will guess (0,2) on a subsequent 0->3.
 -               *
 -               * To userspace, the resulting transition will look like:
 -               *    2:[0,1] -> 3:[-1,-1] -> 3:[0,2]
 -               */
 -              if (priv->mt_state_lost) {
 -                      synaptics_mt_state_set(mt_state, 3, -1, -1);
 -                      break;
 -              }
 -
 -              /*
 -               * If the (SGM,AGM) really previously contained slots (0, 1),
 -               * then we cannot know what slot was just reported by the AGM,
 -               * because the 2->3 transition can occur either before or after
 -               * the AGM packet. Thus, this most recent AGM could contain
 -               * either the same old slot 1 or the new slot 2.
 -               * Subsequent AGMs will be reporting slot 2.
 -               *
 -               * To userspace, the resulting transition will look like:
 -               *    2:[0,1] -> 3:[0,-1] -> 3:[0,2]
 -               */
 -              synaptics_mt_state_set(mt_state, 3, 0, -1);
 -              break;
 -      case 3:
 -              /*
 -               * If, for whatever reason, the previous agm was invalid,
 -               * Assume SGM now contains slot 0, AGM now contains slot 2.
 -               */
 -              if (old->agm <= 2)
 -                      synaptics_mt_state_set(mt_state, 3, 0, 2);
 -              /*
 -               * mt_state either hasn't changed, or was updated by a recently
 -               * received AGM-CONTACT packet.
 -               */
 -              break;
 -
 -      case 4:
 -      case 5:
 -              /* mt_state was updated by AGM-CONTACT packet */
 -              break;
 -      }
 -}
 -
 -/* Handle case where mt_state->count = 4, or = 5 */
 -static void synaptics_image_sensor_45f(struct synaptics_data *priv,
 -                                     struct synaptics_mt_state *mt_state)
 -{
 -      /* mt_state was updated correctly by AGM-CONTACT packet */
 -      priv->mt_state_lost = false;
 -}
 -
  static void synaptics_image_sensor_process(struct psmouse *psmouse,
                                           struct synaptics_hw_state *sgm)
  {
        struct synaptics_data *priv = psmouse->private;
 -      struct synaptics_hw_state *agm = &priv->agm;
 -      struct synaptics_mt_state mt_state;
 -
 -      /* Initialize using current mt_state (as updated by last agm) */
 -      mt_state = agm->mt_state;
 +      int num_fingers;
  
        /*
         * Update mt_state using the new finger count and current mt_state.
         */
        if (sgm->z == 0)
 -              synaptics_image_sensor_0f(priv, &mt_state);
 +              num_fingers = 0;
        else if (sgm->w >= 4)
 -              synaptics_image_sensor_1f(priv, &mt_state);
 +              num_fingers = 1;
        else if (sgm->w == 0)
 -              synaptics_image_sensor_2f(priv, &mt_state);
 -      else if (sgm->w == 1 && mt_state.count <= 3)
 -              synaptics_image_sensor_3f(priv, &mt_state);
 +              num_fingers = 2;
 +      else if (sgm->w == 1)
 +              num_fingers = priv->agm_count ? priv->agm_count : 3;
        else
 -              synaptics_image_sensor_45f(priv, &mt_state);
 +              num_fingers = 4;
  
        /* Send resulting input events to user space */
 -      synaptics_report_mt_data(psmouse, &mt_state, sgm);
 -
 -      /* Store updated mt_state */
 -      priv->mt_state = agm->mt_state = mt_state;
 -      priv->agm_pending = false;
 -}
 -
 -static void synaptics_profile_sensor_process(struct psmouse *psmouse,
 -                                           struct synaptics_hw_state *sgm,
 -                                           int num_fingers)
 -{
 -      struct input_dev *dev = psmouse->dev;
 -      struct synaptics_data *priv = psmouse->private;
 -      struct synaptics_hw_state *hw[2] = { sgm, &priv->agm };
 -      struct input_mt_pos pos[2];
 -      int slot[2], nsemi, i;
 -
 -      nsemi = clamp_val(num_fingers, 0, 2);
 -
 -      for (i = 0; i < nsemi; i++) {
 -              pos[i].x = hw[i]->x;
 -              pos[i].y = synaptics_invert_y(hw[i]->y);
 -      }
 -
 -      input_mt_assign_slots(dev, slot, pos, nsemi);
 -
 -      for (i = 0; i < nsemi; i++) {
 -              input_mt_slot(dev, slot[i]);
 -              input_mt_report_slot_state(dev, MT_TOOL_FINGER, true);
 -              input_report_abs(dev, ABS_MT_POSITION_X, pos[i].x);
 -              input_report_abs(dev, ABS_MT_POSITION_Y, pos[i].y);
 -              input_report_abs(dev, ABS_MT_PRESSURE, hw[i]->z);
 -      }
 -
 -      input_mt_drop_unused(dev);
 -      input_mt_report_pointer_emulation(dev, false);
 -      input_mt_report_finger_count(dev, num_fingers);
 -
 -      synaptics_report_buttons(psmouse, sgm);
 -
 -      input_sync(dev);
 +      synaptics_report_mt_data(psmouse, sgm, num_fingers);
  }
  
  /*
@@@ -915,7 -1287,7 +920,7 @@@ static void synaptics_process_packet(st
        }
  
        if (cr48_profile_sensor) {
 -              synaptics_profile_sensor_process(psmouse, &hw, num_fingers);
 +              synaptics_report_mt_data(psmouse, &hw, num_fingers);
                return;
        }
  
@@@ -1072,7 -1444,7 +1077,7 @@@ static void set_input_params(struct psm
                                        ABS_MT_POSITION_Y);
                /* Image sensors can report per-contact pressure */
                input_set_abs_params(dev, ABS_MT_PRESSURE, 0, 255, 0, 0);
 -              input_mt_init_slots(dev, 2, INPUT_MT_POINTER);
 +              input_mt_init_slots(dev, 2, INPUT_MT_POINTER | INPUT_MT_TRACK);
  
                /* Image sensors can signal 4 and 5 finger clicks */
                __set_bit(BTN_TOOL_QUADTAP, dev->keybit);