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
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
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
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>
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
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
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>
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
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>
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
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
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
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/
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
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*
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)
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>
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>
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>
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)
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
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/
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>
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
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)
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
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
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/
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
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
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
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>
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
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/
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
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
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
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/
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>
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>
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
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
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
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
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
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>
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/
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>
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
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>
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/
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
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>
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
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
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
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
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
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
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
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
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>
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]
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*
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
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
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>
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>
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
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_
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
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
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
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>
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)
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
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
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>
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>
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/
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
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
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>
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
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.*
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/
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
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
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.*
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
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>
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/
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>
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
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
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>
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
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
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
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
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
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>
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>
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/
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>
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
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*
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
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
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/
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
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
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
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
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
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
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
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
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
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
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
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
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/
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
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
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>
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
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
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
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
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>
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
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
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/
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>
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/
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>
F: include/linux/trace*.h
F: include/trace/
F: kernel/trace/
+ F: tools/testing/selftests/ftrace/
TRIVIAL PATCHES
M: Jiri Kosina <trivial@kernel.org>
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
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
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)
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>
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
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
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)
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
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
+ },
{ }
};
"LEN0036", /* T440 */
"LEN0037",
"LEN0038",
+ "LEN0039", /* T440s */
"LEN0041",
"LEN0042", /* Yoga */
"LEN0045",
* 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;
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);
}
/*
}
if (cr48_profile_sensor) {
- synaptics_profile_sensor_process(psmouse, &hw, num_fingers);
+ synaptics_report_mt_data(psmouse, &hw, num_fingers);
return;
}
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);