]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
Merge tag 'char-misc-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregk...
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 5 Apr 2018 03:07:20 +0000 (20:07 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 5 Apr 2018 03:07:20 +0000 (20:07 -0700)
Pull char/misc updates from Greg KH:
 "Here is the big set of char/misc driver patches for 4.17-rc1.

  There are a lot of little things in here, nothing huge, but all
  important to the different hardware types involved:

   -  thunderbolt driver updates

   -  parport updates (people still care...)

   -  nvmem driver updates

   -  mei updates (as always)

   -  hwtracing driver updates

   -  hyperv driver updates

   -  extcon driver updates

   -  ... and a handful of even smaller driver subsystem and individual
      driver updates

  All of these have been in linux-next with no reported issues"

* tag 'char-misc-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (149 commits)
  hwtracing: Add HW tracing support menu
  intel_th: Add ACPI glue layer
  intel_th: Allow forcing host mode through drvdata
  intel_th: Pick up irq number from resources
  intel_th: Don't touch switch routing in host mode
  intel_th: Use correct method of finding hub
  intel_th: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate
  stm class: Make dummy's master/channel ranges configurable
  stm class: Add SPDX GPL-2.0 header to replace GPLv2 boilerplate
  MAINTAINERS: Bestow upon myself the care for drivers/hwtracing
  hv: add SPDX license id to Kconfig
  hv: add SPDX license to trace
  Drivers: hv: vmbus: do not mark HV_PCIE as perf_device
  Drivers: hv: vmbus: respect what we get from hv_get_synint_state()
  /dev/mem: Avoid overwriting "err" in read_mem()
  eeprom: at24: use SPDX identifier instead of GPL boiler-plate
  eeprom: at24: simplify the i2c functionality checking
  eeprom: at24: fix a line break
  eeprom: at24: tweak newlines
  eeprom: at24: refactor at24_probe()
  ...

1  2 
MAINTAINERS
arch/x86/entry/entry_64.S
drivers/char/Kconfig
drivers/nvmem/Kconfig
drivers/parport/parport_serial.c
include/linux/pci_ids.h

diff --combined MAINTAINERS
index 30bc6e417a035925e05546237f8219388b9fd4f7,bff407de157bdbe2898c887eac7553ca0e118685..89fd8040e29521f37487317c16650ed2c4cad172
@@@ -766,8 -766,6 +766,8 @@@ F: drivers/gpu/drm/amd/amdgpu/amdgpu_am
  F:    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
  F:    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c
  F:    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c
 +F:    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c
 +F:    drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
  F:    drivers/gpu/drm/amd/amdkfd/
  F:    drivers/gpu/drm/amd/include/cik_structs.h
  F:    drivers/gpu/drm/amd/include/kgd_kfd_interface.h
@@@ -868,17 -866,7 +868,17 @@@ F:       drivers/iio/*/ad
  F:    drivers/iio/adc/ltc2497*
  X:    drivers/iio/*/adjd*
  F:    drivers/staging/iio/*/ad*
 -F:    drivers/staging/iio/trigger/iio-trig-bfin-timer.c
 +
 +ANDES ARCHITECTURE
 +M:    Greentime Hu <green.hu@gmail.com>
 +M:    Vincent Chen <deanbo422@gmail.com>
 +T:    git https://github.com/andestech/linux.git
 +S:    Supported
 +F:    arch/nds32/
 +F:    Documentation/devicetree/bindings/interrupt-controller/andestech,ativic32.txt
 +F:    Documentation/devicetree/bindings/nds32/
 +K:    nds32
 +N:    nds32
  
  ANDROID CONFIG FRAGMENTS
  M:    Rob Herring <robh@kernel.org>
@@@ -1072,42 -1060,41 +1072,42 @@@ ARM POR
  M:    Russell King <linux@armlinux.org.uk>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  W:    http://www.armlinux.org.uk/
 -S:    Maintained
 +S:    Odd Fixes
  T:    git git://git.armlinux.org.uk/~rmk/linux-arm.git
  F:    arch/arm/
 +X:    arch/arm/boot/dts/
  
  ARM PRIMECELL AACI PL041 DRIVER
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    sound/arm/aaci.*
  
  ARM PRIMECELL BUS SUPPORT
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/amba/
  F:    include/linux/amba/bus.h
  
  ARM PRIMECELL CLCD PL110 DRIVER
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/video/fbdev/amba-clcd.*
  
  ARM PRIMECELL KMI PL050 DRIVER
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/input/serio/ambakmi.*
  F:    include/linux/amba/kmi.h
  
  ARM PRIMECELL MMCI PL180/1 DRIVER
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/mmc/host/mmci.*
  F:    include/linux/amba/mmci.h
  
  ARM PRIMECELL UART PL010 AND PL011 DRIVERS
  M:    Russell King <linux@armlinux.org.uk>
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/tty/serial/amba-pl01*.c
  F:    include/linux/amba/serial.h
  
@@@ -1165,7 -1152,7 +1165,7 @@@ S:      Maintaine
  F:    drivers/clk/sunxi/
  
  ARM/Allwinner sunXi SoC support
 -M:    Maxime Ripard <maxime.ripard@free-electrons.com>
 +M:    Maxime Ripard <maxime.ripard@bootlin.com>
  M:    Chen-Yu Tsai <wens@csie.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
@@@ -2642,6 -2629,51 +2642,6 @@@ F:     Documentation/filesystems/bfs.tx
  F:    fs/bfs/
  F:    include/uapi/linux/bfs_fs.h
  
 -BLACKFIN ARCHITECTURE
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -T:    git git://git.code.sf.net/p/adi-linux/code
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    arch/blackfin/
 -
 -BLACKFIN EMAC DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    drivers/net/ethernet/adi/
 -
 -BLACKFIN MEDIA DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org/
 -S:    Orphan
 -F:    drivers/media/platform/blackfin/
 -F:    drivers/media/i2c/adv7183*
 -F:    drivers/media/i2c/vs6624*
 -
 -BLACKFIN RTC DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    drivers/rtc/rtc-bfin.c
 -
 -BLACKFIN SDH DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    drivers/mmc/host/bfin_sdh.c
 -
 -BLACKFIN SERIAL DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    drivers/tty/serial/bfin_uart.c
 -
 -BLACKFIN WATCHDOG DRIVER
 -L:    adi-buildroot-devel@lists.sourceforge.net (moderated for non-subscribers)
 -W:    http://blackfin.uclinux.org
 -S:    Orphan
 -F:    drivers/watchdog/bfin_wdt.c
 -
  BLINKM RGB LED DRIVER
  M:    Jan-Simon Moeller <jansimon.moeller@gmx.de>
  S:    Maintained
@@@ -3252,11 -3284,12 +3252,11 @@@ F:   drivers/net/ieee802154/cc2520.
  F:    include/linux/spi/cc2520.h
  F:    Documentation/devicetree/bindings/net/ieee802154/cc2520.txt
  
 -CCREE ARM TRUSTZONE CRYPTOCELL 700 REE DRIVER
 +CCREE ARM TRUSTZONE CRYPTOCELL REE DRIVER
  M:    Gilad Ben-Yossef <gilad@benyossef.com>
  L:    linux-crypto@vger.kernel.org
 -L:    driverdev-devel@linuxdriverproject.org
  S:    Supported
 -F:    drivers/staging/ccree/
 +F:    drivers/crypto/ccree/
  W:    https://developer.arm.com/products/system-ip/trustzone-cryptocell/cryptocell-700-family
  
  CEC FRAMEWORK
@@@ -3274,7 -3307,6 +3274,7 @@@ F:      include/media/cec-notifier.
  F:    include/uapi/linux/cec.h
  F:    include/uapi/linux/cec-funcs.h
  F:    Documentation/devicetree/bindings/media/cec.txt
 +F:    Documentation/ABI/testing/debugfs-cec-error-inj
  
  CEC GPIO DRIVER
  M:    Hans Verkuil <hans.verkuil@cisco.com>
@@@ -3717,6 -3749,16 +3717,6 @@@ S:     Maintaine
  F:    Documentation/filesystems/cramfs.txt
  F:    fs/cramfs/
  
 -CRIS PORT
 -M:    Mikael Starvik <starvik@axis.com>
 -M:    Jesper Nilsson <jesper.nilsson@axis.com>
 -L:    linux-cris-kernel@axis.com
 -W:    http://developer.axis.com
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris.git
 -S:    Maintained
 -F:    arch/cris/
 -F:    drivers/tty/serial/crisv10.*
 -
  CRYPTO API
  M:    Herbert Xu <herbert@gondor.apana.org.au>
  M:    "David S. Miller" <davem@davemloft.net>
@@@ -4079,7 -4121,7 +4079,7 @@@ S:      Supporte
  F:    drivers/mtd/nand/denali*
  
  DESIGNWARE USB2 DRD IP DRIVER
 -M:    John Youn <johnyoun@synopsys.com>
 +M:    Minas Harutyunyan <hminas@synopsys.com>
  L:    linux-usb@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git
  S:    Maintained
@@@ -4370,12 -4412,6 +4370,12 @@@ L:    linux-kernel@vger.kernel.or
  S:    Maintained
  F:    drivers/staging/fsl-dpaa2/ethernet
  
 +DPAA2 ETHERNET SWITCH DRIVER
 +M:    Razvan Stefanescu <razvan.stefanescu@nxp.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +F:    drivers/staging/fsl-dpaa2/ethsw
 +
  DPT_I2O SCSI RAID DRIVER
  M:    Adaptec OEM Raid Solutions <aacraid@adaptec.com>
  L:    linux-scsi@vger.kernel.org
@@@ -4422,13 -4458,6 +4422,13 @@@ T:    git git://anongit.freedesktop.org/dr
  S:    Supported
  F:    drivers/gpu/drm/pl111/
  
 +DRM DRIVER FOR ARM VERSATILE TFT PANELS
 +M:    Linus Walleij <linus.walleij@linaro.org>
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +S:    Maintained
 +F:    drivers/gpu/drm/panel/panel-arm-versatile.c
 +F:    Documentation/devicetree/bindings/display/panel/arm,versatile-tft-panel.txt
 +
  DRM DRIVER FOR AST SERVER GRAPHICS CHIPS
  M:    Dave Airlie <airlied@redhat.com>
  S:    Odd Fixes
@@@ -4583,8 -4612,8 +4583,8 @@@ F:      include/uapi/drm
  F:    include/linux/vga*
  
  DRM DRIVERS AND MISC GPU PATCHES
 -M:    Daniel Vetter <daniel.vetter@intel.com>
  M:    Gustavo Padovan <gustavo@padovan.org>
 +M:    Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
  M:    Sean Paul <seanpaul@chromium.org>
  W:    https://01.org/linuxgraphics/gfx-docs/maintainer-tools/drm-misc.html
  S:    Maintained
@@@ -4597,7 -4626,7 +4597,7 @@@ F:      include/uapi/drm/drm
  F:    include/linux/vga*
  
  DRM DRIVERS FOR ALLWINNER A10
 -M:    Maxime Ripard  <maxime.ripard@free-electrons.com>
 +M:    Maxime Ripard  <maxime.ripard@bootlin.com>
  L:    dri-devel@lists.freedesktop.org
  S:    Supported
  F:    drivers/gpu/drm/sun4i/
@@@ -4710,7 -4739,6 +4710,7 @@@ F:      drivers/gpu/drm/rcar-du
  F:    drivers/gpu/drm/shmobile/
  F:    include/linux/platform_data/shmob_drm.h
  F:    Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt
 +F:    Documentation/devicetree/bindings/display/bridge/renesas,lvds.txt
  F:    Documentation/devicetree/bindings/display/renesas,du.txt
  
  DRM DRIVERS FOR ROCKCHIP
@@@ -5524,7 -5552,7 +5524,7 @@@ M:      Luis R. Rodriguez <mcgrof@kernel.org
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/firmware_class/
 -F:    drivers/base/firmware*.c
 +F:    drivers/base/firmware_loader/
  F:    include/linux/firmware.h
  
  FLASH ADAPTER DRIVER (IBM Flash Adapter 900GB Full Height PCI Flash Card)
@@@ -5609,7 -5637,7 +5609,7 @@@ S:      Maintaine
  F:    drivers/dma/fsldma.*
  
  FREESCALE eTSEC ETHERNET DRIVER (GIANFAR)
 -M:    Claudiu Manoil <claudiu.manoil@freescale.com>
 +M:    Claudiu Manoil <claudiu.manoil@nxp.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/ethernet/freescale/gianfar*
@@@ -5771,6 -5799,10 +5771,6 @@@ F:     fs/crypto
  F:    include/linux/fscrypt*.h
  F:    Documentation/filesystems/fscrypt.rst
  
 -FUJITSU FR-V (FRV) PORT
 -S:    Orphan
 -F:    arch/frv/
 -
  FUJITSU LAPTOP EXTRAS
  M:    Jonathan Woithe <jwoithe@just42.net>
  L:    platform-driver-x86@vger.kernel.org
@@@ -6212,6 -6244,11 +6212,11 @@@ F:    Documentation/hw_random.tx
  F:    drivers/char/hw_random/
  F:    include/linux/hw_random.h
  
+ HARDWARE TRACING FACILITIES
+ M:    Alexander Shishkin <alexander.shishkin@linux.intel.com>
+ S:    Maintained
+ F:    drivers/hwtracing/
  HARDWARE SPINLOCK CORE
  M:    Ohad Ben-Cohen <ohad@wizery.com>
  M:    Bjorn Andersson <bjorn.andersson@linaro.org>
@@@ -6871,13 -6908,6 +6876,13 @@@ M:    James Hogan <jhogan@kernel.org
  S:    Maintained
  F:    drivers/media/rc/img-ir/
  
 +IMON SOUNDGRAPH USB IR RECEIVER
 +M:    Sean Young <sean@mess.org>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/media/rc/imon_raw.c
 +F:    drivers/media/rc/imon.c
 +
  IMS TWINTURBO FRAMEBUFFER DRIVER
  L:    linux-fbdev@vger.kernel.org
  S:    Orphan
@@@ -6967,7 -6997,7 +6972,7 @@@ F:      drivers/input/input-mt.
  K:    \b(ABS|SYN)_MT_
  
  INSIDE SECURE CRYPTO DRIVER
 -M:    Antoine Tenart <antoine.tenart@free-electrons.com>
 +M:    Antoine Tenart <antoine.tenart@bootlin.com>
  F:    drivers/crypto/inside-secure/
  S:    Maintained
  L:    linux-crypto@vger.kernel.org
@@@ -7038,7 -7068,6 +7043,7 @@@ F:      Documentation/networking/ixgbe.tx
  F:    Documentation/networking/ixgbevf.txt
  F:    Documentation/networking/i40e.txt
  F:    Documentation/networking/i40evf.txt
 +F:    Documentation/networking/ice.txt
  F:    drivers/net/ethernet/intel/
  F:    drivers/net/ethernet/intel/*/
  F:    include/linux/avf/virtchnl.h
@@@ -7205,14 -7234,6 +7210,14 @@@ L:    linux-rdma@vger.kernel.or
  S:    Supported
  F:    drivers/infiniband/hw/i40iw/
  
 +INTEL SHA MULTIBUFFER DRIVER
 +M:    Megha Dey <megha.dey@linux.intel.com>
 +R:    Tim Chen <tim.c.chen@linux.intel.com>
 +L:    linux-crypto@vger.kernel.org
 +S:    Supported
 +F:    arch/x86/crypto/sha*-mb
 +F:    crypto/mcryptd.c
 +
  INTEL TELEMETRY DRIVER
  M:    Souvik Kumar Chakravarty <souvik.k.chakravarty@intel.com>
  L:    platform-driver-x86@vger.kernel.org
@@@ -7507,13 -7528,6 +7512,13 @@@ Q:    http://patchwork.linuxtv.org/project
  S:    Maintained
  F:    drivers/media/dvb-frontends/ix2505v*
  
 +JAILHOUSE HYPERVISOR INTERFACE
 +M:    Jan Kiszka <jan.kiszka@siemens.com>
 +L:    jailhouse-dev@googlegroups.com
 +S:    Maintained
 +F:    arch/x86/kernel/jailhouse.c
 +F:    arch/x86/include/asm/jailhouse_para.h
 +
  JC42.4 TEMPERATURE SENSOR DRIVER
  M:    Guenter Roeck <linux@roeck-us.net>
  L:    linux-hwmon@vger.kernel.org
@@@ -8140,26 -8154,8 +8145,26 @@@ F:    drivers/*/*/*pasemi
  LINUX KERNEL DUMP TEST MODULE (LKDTM)
  M:    Kees Cook <keescook@chromium.org>
  S:    Maintained
- F:    drivers/misc/lkdtm*
+ F:    drivers/misc/lkdtm/*
  
 +LINUX KERNEL MEMORY CONSISTENCY MODEL (LKMM)
 +M:    Alan Stern <stern@rowland.harvard.edu>
 +M:    Andrea Parri <parri.andrea@gmail.com>
 +M:    Will Deacon <will.deacon@arm.com>
 +M:    Peter Zijlstra <peterz@infradead.org>
 +M:    Boqun Feng <boqun.feng@gmail.com>
 +M:    Nicholas Piggin <npiggin@gmail.com>
 +M:    David Howells <dhowells@redhat.com>
 +M:    Jade Alglave <j.alglave@ucl.ac.uk>
 +M:    Luc Maranget <luc.maranget@inria.fr>
 +M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +R:    Akira Yokosawa <akiyks@gmail.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
 +F:    tools/memory-model/
 +F:    Documentation/memory-barriers.txt
 +
  LINUX SECURITY MODULE (LSM) FRAMEWORK
  M:    Chris Wright <chrisw@sous-sol.org>
  L:    linux-security-module@vger.kernel.org
@@@ -8321,6 -8317,11 +8326,6 @@@ W:     http://linux-test-project.github.io
  T:    git git://github.com/linux-test-project/ltp.git
  S:    Maintained
  
 -M32R ARCHITECTURE
 -W:    http://www.linux-m32r.org/
 -S:    Orphan
 -F:    arch/m32r/
 -
  M68K ARCHITECTURE
  M:    Geert Uytterhoeven <geert@linux-m68k.org>
  L:    linux-m68k@lists.linux-m68k.org
@@@ -8438,7 -8439,7 +8443,7 @@@ S:      Orpha
  F:    drivers/net/wireless/marvell/libertas/
  
  MARVELL MACCHIATOBIN SUPPORT
 -M:    Russell King <rmk@armlinux.org.uk>
 +M:    Russell King <linux@armlinux.org.uk>
  L:    linux-arm-kernel@lists.infradead.org
  S:    Maintained
  F:    arch/arm64/boot/dts/marvell/armada-8040-mcbin.dts
@@@ -8451,7 -8452,7 +8456,7 @@@ F:      drivers/net/ethernet/marvell/mv643xx
  F:    include/linux/mv643xx.h
  
  MARVELL MV88X3310 PHY DRIVER
 -M:    Russell King <rmk@armlinux.org.uk>
 +M:    Russell King <linux@armlinux.org.uk>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/phy/marvell10g.c
@@@ -8593,23 -8594,13 +8598,23 @@@ W:   https://linuxtv.or
  S:    Maintained
  F:    drivers/media/radio/radio-maxiradio*
  
 -MCP4531 MICROCHIP DIGITAL POTENTIOMETER DRIVER
 +MCP4018 AND MCP4531 MICROCHIP DIGITAL POTENTIOMETER DRIVERS
  M:    Peter Rosin <peda@axentia.se>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
  F:    Documentation/ABI/testing/sysfs-bus-iio-potentiometer-mcp4531
 +F:    drivers/iio/potentiometer/mcp4018.c
  F:    drivers/iio/potentiometer/mcp4531.c
  
 +MCR20A IEEE-802.15.4 RADIO DRIVER
 +M:    Xue Liu <liuxuenetmail@gmail.com>
 +L:    linux-wpan@vger.kernel.org
 +W:    https://github.com/xueliu/mcr20a-linux
 +S:    Maintained
 +F:    drivers/net/ieee802154/mcr20a.c
 +F:    drivers/net/ieee802154/mcr20a.h
 +F:    Documentation/devicetree/bindings/net/ieee802154/mcr20a.txt
 +
  MEASUREMENT COMPUTING CIO-DAC IIO DRIVER
  M:    William Breathitt Gray <vilhelm.gray@gmail.com>
  L:    linux-iio@vger.kernel.org
@@@ -8626,14 -8617,6 +8631,14 @@@ T:    git git://linuxtv.org/media_tree.gi
  S:    Supported
  F:    drivers/media/dvb-frontends/ascot2e*
  
 +MEDIA DRIVERS FOR CXD2099AR CI CONTROLLERS
 +M:    Jasmin Jessich <jasmin@anw.at>
 +L:    linux-media@vger.kernel.org
 +W:    https://linuxtv.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/dvb-frontends/cxd2099*
 +
  MEDIA DRIVERS FOR CXD2841ER
  M:    Sergey Kozlov <serjk@netup.ru>
  M:    Abylay Ospan <aospan@netup.ru>
@@@ -8644,15 -8627,6 +8649,15 @@@ T:    git git://linuxtv.org/media_tree.gi
  S:    Supported
  F:    drivers/media/dvb-frontends/cxd2841er*
  
 +MEDIA DRIVERS FOR CXD2880
 +M:    Yasunari Takiguchi <Yasunari.Takiguchi@sony.com>
 +L:    linux-media@vger.kernel.org
 +W:    http://linuxtv.org/
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Supported
 +F:    drivers/media/dvb-frontends/cxd2880/*
 +F:    drivers/media/spi/cxd2880*
 +
  MEDIA DRIVERS FOR DIGITAL DEVICES PCIE DEVICES
  M:    Daniel Scheller <d.scheller.oss@gmail.com>
  L:    linux-media@vger.kernel.org
@@@ -8720,16 -8694,6 +8725,16 @@@ T:    git git://linuxtv.org/media_tree.gi
  S:    Supported
  F:    drivers/media/pci/netup_unidvb/*
  
 +MEDIA DRIVERS FOR RENESAS - CEU
 +M:    Jacopo Mondi <jacopo@jmondi.org>
 +L:    linux-media@vger.kernel.org
 +L:    linux-renesas-soc@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Supported
 +F:    Documentation/devicetree/bindings/media/renesas,ceu.txt
 +F:    drivers/media/platform/renesas-ceu.c
 +F:    include/media/drv-intf/renesas-ceu.h
 +
  MEDIA DRIVERS FOR RENESAS - DRIF
  M:    Ramesh Shanmugasundaram <ramesh.shanmugasundaram@bp.renesas.com>
  L:    linux-media@vger.kernel.org
@@@ -8922,13 -8886,6 +8927,13 @@@ W:    http://www.melexis.co
  S:    Supported
  F:    drivers/iio/temperature/mlx90614.c
  
 +MELEXIS MLX90632 DRIVER
 +M:    Crt Mori <cmo@melexis.com>
 +L:    linux-iio@vger.kernel.org
 +W:    http://www.melexis.com
 +S:    Supported
 +F:    drivers/iio/temperature/mlx90632.c
 +
  MELFAS MIP4 TOUCHSCREEN DRIVER
  M:    Sangwon Jee <jeesw@melfas.com>
  W:    http://www.melfas.com
@@@ -9054,7 -9011,6 +9059,7 @@@ M:      Vadim Pasternak <vadimp@mellanox.com
  L:    linux-leds@vger.kernel.org
  S:    Supported
  F:    drivers/leds/leds-mlxcpld.c
 +F:    drivers/leds/leds-mlxreg.c
  F:    Documentation/leds/leds-mlxcpld.txt
  
  MELLANOX PLATFORM DRIVER
@@@ -9133,6 -9089,20 +9138,6 @@@ F:     drivers/media/platform/meson/ao-cec.
  F:    Documentation/devicetree/bindings/media/meson-ao-cec.txt
  T:    git git://linuxtv.org/media_tree.git
  
 -METAG ARCHITECTURE
 -M:    James Hogan <jhogan@kernel.org>
 -L:    linux-metag@vger.kernel.org
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag.git
 -S:    Odd Fixes
 -F:    arch/metag/
 -F:    Documentation/metag/
 -F:    Documentation/devicetree/bindings/metag/
 -F:    Documentation/devicetree/bindings/interrupt-controller/img,*
 -F:    drivers/clocksource/metag_generic.c
 -F:    drivers/irqchip/irq-metag.c
 -F:    drivers/irqchip/irq-metag-ext.c
 -F:    drivers/tty/metag_da.c
 -
  MICROBLAZE ARCHITECTURE
  M:    Michal Simek <monstr@monstr.eu>
  W:    http://www.monstr.eu/fdt/
@@@ -9187,13 -9157,6 +9192,13 @@@ F:    drivers/net/dsa/microchip/
  F:    include/linux/platform_data/microchip-ksz.h
  F:    Documentation/devicetree/bindings/net/dsa/ksz.txt
  
 +MICROCHIP LAN743X ETHERNET DRIVER
 +M:    Bryan Whitehead <bryan.whitehead@microchip.com>
 +M:    Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/ethernet/microchip/lan743x_*
 +
  MICROCHIP USB251XB DRIVER
  M:    Richard Leitner <richard.leitner@skidata.com>
  L:    linux-usb@vger.kernel.org
@@@ -9421,14 -9384,6 +9426,14 @@@ S:    Maintaine
  F:    drivers/media/i2c/mt9t001.c
  F:    include/media/i2c/mt9t001.h
  
 +MT9T112 APTINA CAMERA SENSOR
 +M:    Jacopo Mondi <jacopo@jmondi.org>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Odd Fixes
 +F:    drivers/media/i2c/mt9t112.c
 +F:    include/media/i2c/mt9t112.h
 +
  MT9V032 APTINA CAMERA SENSOR
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  L:    linux-media@vger.kernel.org
@@@ -10234,13 -10189,6 +10239,13 @@@ T: git git://linuxtv.org/media_tree.gi
  S:    Maintained
  F:    drivers/media/i2c/ov13858.c
  
 +OMNIVISION OV2685 SENSOR DRIVER
 +M:    Shunqian Zheng <zhengsq@rock-chips.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/ov2685.c
 +
  OMNIVISION OV5640 SENSOR DRIVER
  M:    Steve Longerbeam <slongerbeam@gmail.com>
  L:    linux-media@vger.kernel.org
@@@ -10255,13 -10203,6 +10260,13 @@@ T: git git://linuxtv.org/media_tree.gi
  S:    Maintained
  F:    drivers/media/i2c/ov5647.c
  
 +OMNIVISION OV5695 SENSOR DRIVER
 +M:    Shunqian Zheng <zhengsq@rock-chips.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/ov5695.c
 +
  OMNIVISION OV7670 SENSOR DRIVER
  M:    Jonathan Corbet <corbet@lwn.net>
  L:    linux-media@vger.kernel.org
@@@ -10270,14 -10211,6 +10275,14 @@@ S: Maintaine
  F:    drivers/media/i2c/ov7670.c
  F:    Documentation/devicetree/bindings/media/i2c/ov7670.txt
  
 +OMNIVISION OV772x SENSOR DRIVER
 +M:    Jacopo Mondi <jacopo@jmondi.org>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Odd fixes
 +F:    drivers/media/i2c/ov772x.c
 +F:    include/media/i2c/ov772x.h
 +
  OMNIVISION OV7740 SENSOR DRIVER
  M:    Wenyou Yang <wenyou.yang@microchip.com>
  L:    linux-media@vger.kernel.org
@@@ -10286,16 -10219,6 +10291,16 @@@ S: Maintaine
  F:    drivers/media/i2c/ov7740.c
  F:    Documentation/devicetree/bindings/media/i2c/ov7740.txt
  
 +OMNIVISION OV9650 SENSOR DRIVER
 +M:    Sakari Ailus <sakari.ailus@linux.intel.com>
 +R:    Akinobu Mita <akinobu.mita@gmail.com>
 +R:    Sylwester Nawrocki <s.nawrocki@samsung.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/ov9650.c
 +F:    Documentation/devicetree/bindings/media/i2c/ov9650.txt
 +
  ONENAND FLASH DRIVER
  M:    Kyungmin Park <kyungmin.park@samsung.com>
  L:    linux-mtd@lists.infradead.org
@@@ -10497,6 -10420,14 +10502,6 @@@ L:  platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/panasonic-laptop.c
  
 -PANASONIC MN10300/AM33/AM34 PORT
 -M:    David Howells <dhowells@redhat.com>
 -L:    linux-am33-list@redhat.com (moderated for non-subscribers)
 -W:    ftp://ftp.redhat.com/pub/redhat/gnupro/AM33/
 -S:    Maintained
 -F:    Documentation/mn10300/
 -F:    arch/mn10300/
 -
  PARALLEL LCD/KEYPAD PANEL DRIVER
  M:    Willy Tarreau <willy@haproxy.com>
  M:    Ksenija Stanojevic <ksenija.stanojevic@gmail.com>
@@@ -11099,7 -11030,7 +11104,7 @@@ F:   include/linux/pktcdvd.
  F:    include/uapi/linux/pktcdvd.h
  
  PKUNITY SOC DRIVERS
 -M:    Guan Xuetao <gxt@mprc.pku.edu.cn>
 +M:    Guan Xuetao <gxt@pku.edu.cn>
  W:    http://mprc.pku.edu.cn/~guanxuetao/linux
  S:    Maintained
  T:    git git://github.com/gxt/linux.git
@@@ -11543,9 -11474,8 +11548,9 @@@ M:   Stuart Yoder <stuyoder@gmail.com
  M:    Laurentiu Tudor <laurentiu.tudor@nxp.com>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
 -F:    drivers/staging/fsl-mc/
 +F:    drivers/bus/fsl-mc/
  F:    Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt
 +F:    Documentation/networking/dpaa2/overview.rst
  
  QT1010 MEDIA DRIVER
  M:    Antti Palosaari <crope@iki.fi>
@@@ -12296,7 -12226,7 +12301,7 @@@ F:   Documentation/devicetree/bindings/cl
  SAMSUNG SPI DRIVERS
  M:    Kukjin Kim <kgene@kernel.org>
  M:    Krzysztof Kozlowski <krzk@kernel.org>
 -M:    Andi Shyti <andi.shyti@samsung.com>
 +M:    Andi Shyti <andi@etezian.org>
  L:    linux-spi@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org (moderated for non-subscribers)
  S:    Maintained
@@@ -12350,6 -12280,13 +12355,6 @@@ F:  include/linux/sched.
  F:    include/uapi/linux/sched.h
  F:    include/linux/wait.h
  
 -SCORE ARCHITECTURE
 -M:    Chen Liqin <liqin.linux@gmail.com>
 -M:    Lennox Wu <lennox.wu@gmail.com>
 -W:    http://www.sunplus.com
 -S:    Supported
 -F:    arch/score/
 -
  SCR24X CHIP CARD INTERFACE DRIVER
  M:    Lubomir Rintel <lkundrak@v3.sk>
  S:    Supported
@@@ -12877,9 -12814,10 +12882,9 @@@ S:  Maintaine
  F:    drivers/net/ethernet/smsc/smsc9420.*
  
  SOC-CAMERA V4L2 SUBSYSTEM
 -M:    Guennadi Liakhovetski <g.liakhovetski@gmx.de>
  L:    linux-media@vger.kernel.org
  T:    git git://linuxtv.org/media_tree.git
 -S:    Maintained
 +S:    Orphan
  F:    include/media/soc*
  F:    drivers/media/i2c/soc_camera/
  F:    drivers/media/platform/soc_camera/
@@@ -12942,19 -12880,6 +12947,19 @@@ S: Maintaine
  F:    drivers/net/ethernet/socionext/netsec.c
  F:    Documentation/devicetree/bindings/net/socionext-netsec.txt
  
 +SOLIDRUN CLEARFOG SUPPORT
 +M:    Russell King <linux@armlinux.org.uk>
 +S:    Maintained
 +F:    arch/arm/boot/dts/armada-388-clearfog*
 +F:    arch/arm/boot/dts/armada-38x-solidrun-*
 +
 +SOLIDRUN CUBOX-I/HUMMINGBOARD SUPPORT
 +M:    Russell King <linux@armlinux.org.uk>
 +S:    Maintained
 +F:    arch/arm/boot/dts/imx6*-cubox-i*
 +F:    arch/arm/boot/dts/imx6*-hummingboard*
 +F:    arch/arm/boot/dts/imx6*-sr-*
 +
  SONIC NETWORK DRIVER
  M:    Thomas Bogendoerfer <tsbogend@alpha.franken.de>
  L:    netdev@vger.kernel.org
@@@ -13608,14 -13533,6 +13613,14 @@@ T: git git://linuxtv.org/mkrufky/tuners
  S:    Maintained
  F:    drivers/media/tuners/tda18271*
  
 +TDA1997x MEDIA DRIVER
 +M:    Tim Harvey <tharvey@gateworks.com>
 +L:    linux-media@vger.kernel.org
 +W:    https://linuxtv.org
 +Q:    http://patchwork.linuxtv.org/project/linux-media/list/
 +S:    Maintained
 +F:    drivers/media/i2c/tda1997x.*
 +
  TDA827x MEDIA DRIVER
  M:    Michael Krufky <mkrufky@linuxtv.org>
  L:    linux-media@vger.kernel.org
@@@ -13697,12 -13614,6 +13702,12 @@@ L: linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/media/rc/ttusbir.c
  
 +TECHWELL TW9910 VIDEO DECODER
 +L:    linux-media@vger.kernel.org
 +S:    Orphan
 +F:    drivers/media/i2c/tw9910.c
 +F:    include/media/i2c/tw9910.h
 +
  TEE SUBSYSTEM
  M:    Jens Wiklander <jens.wiklander@linaro.org>
  S:    Maintained
@@@ -13738,8 -13649,7 +13743,8 @@@ S:   Supporte
  F:    drivers/i2c/busses/i2c-tegra.c
  
  TEGRA IOMMU DRIVERS
 -M:    Hiroshi Doyu <hdoyu@nvidia.com>
 +M:    Thierry Reding <thierry.reding@gmail.com>
 +L:    linux-tegra@vger.kernel.org
  S:    Supported
  F:    drivers/iommu/tegra*
  
@@@ -14027,6 -13937,19 +14032,6 @@@ S:  Orpha
  F:    drivers/net/wireless/ti/
  F:    include/linux/wl12xx.h
  
 -TILE ARCHITECTURE
 -W:    http://www.mellanox.com/repository/solutions/tile-scm/
 -S:    Orphan
 -F:    arch/tile/
 -F:    drivers/char/tile-srom.c
 -F:    drivers/edac/tile_edac.c
 -F:    drivers/net/ethernet/tile/
 -F:    drivers/rtc/rtc-tile.c
 -F:    drivers/tty/hvc/hvc_tile.c
 -F:    drivers/tty/serial/tilegx.c
 -F:    drivers/usb/host/*-tilegx.c
 -F:    include/linux/usb/tilegx.h
 -
  TIMEKEEPING, CLOCKSOURCE CORE, NTP, ALARMTIMER
  M:    John Stultz <john.stultz@linaro.org>
  M:    Thomas Gleixner <tglx@linutronix.de>
@@@ -14352,7 -14275,7 +14357,7 @@@ F:   include/linux/uwb.
  F:    include/linux/uwb/
  
  UNICORE32 ARCHITECTURE:
 -M:    Guan Xuetao <gxt@mprc.pku.edu.cn>
 +M:    Guan Xuetao <gxt@pku.edu.cn>
  W:    http://mprc.pku.edu.cn/~guanxuetao/linux
  S:    Maintained
  T:    git git://github.com/gxt/linux.git
@@@ -14491,12 -14414,6 +14496,12 @@@ S: Maintaine
  F:    Documentation/hid/hiddev.txt
  F:    drivers/hid/usbhid/
  
 +USB INTEL XHCI ROLE MUX DRIVER
 +M:    Hans de Goede <hdegoede@redhat.com>
 +L:    linux-usb@vger.kernel.org
 +S:    Maintained
 +F:    drivers/usb/roles/intel-xhci-usb-role-switch.c
 +
  USB ISP116X DRIVER
  M:    Olav Kongas <ok@artecdesign.ee>
  L:    linux-usb@vger.kernel.org
@@@ -14627,12 -14544,6 +14632,12 @@@ F: drivers/usb
  F:    include/linux/usb.h
  F:    include/linux/usb/
  
 +USB TYPEC PI3USB30532 MUX DRIVER
 +M:    Hans de Goede <hdegoede@redhat.com>
 +L:    linux-usb@vger.kernel.org
 +S:    Maintained
 +F:    drivers/usb/typec/mux/pi3usb30532.c
 +
  USB TYPEC SUBSYSTEM
  M:    Heikki Krogerus <heikki.krogerus@linux.intel.com>
  L:    linux-usb@vger.kernel.org
@@@ -15017,7 -14928,7 +15022,7 @@@ F:   drivers/input/mouse/vmmouse.
  F:    drivers/input/mouse/vmmouse.h
  
  VMWARE VMXNET3 ETHERNET DRIVER
 -M:    Shrikrishna Khare <skhare@vmware.com>
 +M:    Ronak Doshi <doshir@vmware.com>
  M:    "VMware, Inc." <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
index 936e19642eabba289a18be842814f31ffd490b11,f19b43e77028eedbf666b9dbcf803c87ba8fe9a2..b0a4649e55ce8185d4cd0f5c8b778750ff067f90
@@@ -260,13 -260,8 +260,13 @@@ GLOBAL(entry_SYSCALL_64_after_hwframe
         * Change top bits to match most significant bit (47th or 56th bit
         * depending on paging mode) in the address.
         */
 +#ifdef CONFIG_X86_5LEVEL
 +      ALTERNATIVE "shl $(64 - 48), %rcx; sar $(64 - 48), %rcx", \
 +              "shl $(64 - 57), %rcx; sar $(64 - 57), %rcx", X86_FEATURE_LA57
 +#else
        shl     $(64 - (__VIRTUAL_MASK_SHIFT+1)), %rcx
        sar     $(64 - (__VIRTUAL_MASK_SHIFT+1)), %rcx
 +#endif
  
        /* If this changed %rcx, it was not canonical */
        cmpq    %rcx, %r11
@@@ -1140,6 -1135,9 +1140,9 @@@ apicinterrupt3 HYPERVISOR_CALLBACK_VECT
  
  apicinterrupt3 HYPERV_REENLIGHTENMENT_VECTOR \
        hyperv_reenlightenment_vector hyperv_reenlightenment_intr
+ apicinterrupt3 HYPERV_STIMER0_VECTOR \
+       hv_stimer0_callback_vector hv_stimer0_vector_handler
  #endif /* CONFIG_HYPERV */
  
  idtentry debug                        do_debug                has_error_code=0        paranoid=1 shift_ist=DEBUG_STACK
diff --combined drivers/char/Kconfig
index 40947a796666133705e8f82412cf7fa709190f9a,9bcac927cfd0fcfaed20aa1e2a7225a1b658d90e..e538061eadcb2ab9b2955bb15ace762576535206
@@@ -66,6 -66,34 +66,6 @@@ config TTY_PRINT
  
          If unsure, say N.
  
 -config BFIN_OTP
 -      tristate "Blackfin On-Chip OTP Memory Support"
 -      depends on BLACKFIN && (BF51x || BF52x || BF54x)
 -      default y
 -      help
 -        If you say Y here, you will get support for a character device
 -        interface into the One Time Programmable memory pages that are
 -        stored on the Blackfin processor.  This will not get you access
 -        to the secure memory pages however.  You will need to write your
 -        own secure code and reader for that.
 -
 -        To compile this driver as a module, choose M here: the module
 -        will be called bfin-otp.
 -
 -        If unsure, it is safe to say Y.
 -
 -config BFIN_OTP_WRITE_ENABLE
 -      bool "Enable writing support of OTP pages"
 -      depends on BFIN_OTP
 -      default n
 -      help
 -        If you say Y here, you will enable support for writing of the
 -        OTP pages.  This is dangerous by nature as you can only program
 -        the pages once, so only enable this option when you actually
 -        need it so as to not inadvertently clobber data.
 -
 -        If unsure, say N.
 -
  config PRINTER
        tristate "Parallel printer support"
        depends on PARPORT
@@@ -236,7 -264,7 +236,7 @@@ source "drivers/char/hw_random/Kconfig
  
  config NVRAM
        tristate "/dev/nvram support"
-       depends on ATARI || X86 || (ARM && RTC_DRV_CMOS) || GENERIC_NVRAM
+       depends on ATARI || X86 || GENERIC_NVRAM
        ---help---
          If you say Y here and create a character special file /dev/nvram
          with major number 10 and minor number 144 using mknod ("man mknod"),
@@@ -318,6 -346,15 +318,6 @@@ config EFI_RT
        bool "EFI Real Time Clock Services"
        depends on IA64
  
 -config DS1302
 -      tristate "DS1302 RTC support"
 -      depends on M32R && (PLAT_M32700UT || PLAT_OPSPUT)
 -      help
 -        If you say Y here and create a character special file /dev/rtc with
 -        major number 121 and minor number 0 using mknod ("man mknod"), you
 -        will get access to the real time clock (or hardware clock) built
 -        into your computer.
 -
  endif # RTC_LIB
  
  config DTLK
@@@ -538,6 -575,17 +538,6 @@@ config DEVPOR
  
  source "drivers/s390/char/Kconfig"
  
 -config TILE_SROM
 -      tristate "Character-device access via hypervisor to the Tilera SPI ROM"
 -      depends on TILE
 -      default y
 -      ---help---
 -        This device provides character-level read-write access
 -        to the SROM, typically via the "0", "1", and "2" devices
 -        in /dev/srom/.  The Tilera hypervisor makes the flash
 -        device appear much like a simple EEPROM, and knows
 -        how to partition a single ROM for multiple purposes.
 -
  source "drivers/char/xillybus/Kconfig"
  
  endmenu
diff --combined drivers/nvmem/Kconfig
index 55cf64ee7f7b0d15a8a183b036ac2ebd6839c4dd,5f9bc787d63470b87566c5d27cea663551dc7d21..1090924efdb1231a2ad31dddf6658870abdfa5f9
@@@ -1,5 -1,5 +1,5 @@@
  menuconfig NVMEM
 -      tristate "NVMEM Support"
 +      bool "NVMEM Support"
        help
          Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...
  
@@@ -167,10 -167,10 +167,10 @@@ config MESON_MX_EFUS
  
  config NVMEM_SNVS_LPGPR
        tristate "Support for Low Power General Purpose Register"
-       depends on SOC_IMX6 || COMPILE_TEST
+       depends on SOC_IMX6 || SOC_IMX7D || COMPILE_TEST
        help
          This is a driver for Low Power General Purpose Register (LPGPR) available on
-         i.MX6 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
+         i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.
  
          This driver can also be built as a module. If so, the module
          will be called nvmem-snvs-lpgpr.
index 087e847b1da2291ffb6f3297e3ddae95ed54ea06,4f8b26033460132a17ca23c12128abf03f4aa206..ae9e01ef7599a5e9a87ef3e30d724d7c18d6c2cc
@@@ -1,30 -1,24 +1,24 @@@
+ // SPDX-License-Identifier: GPL-2.0+
  /*
   * Support for common PCI multi-I/O cards (which is most of them)
   *
   * Copyright (C) 2001  Tim Waugh <twaugh@redhat.com>
   *
-  * This program is free software; you can redistribute it and/or
-  * modify it under the terms of the GNU General Public License
-  * as published by the Free Software Foundation; either version
-  * 2 of the License, or (at your option) any later version.
-  *
-  *
   * Multi-function PCI cards are supposed to present separate logical
   * devices on the bus.  A common thing to do seems to be to just use
   * one logical device with lots of base address registers for both
   * parallel ports and serial ports.  This driver is for dealing with
   * that.
-  *
   */
  
- #include <linux/types.h>
- #include <linux/module.h>
- #include <linux/init.h>
- #include <linux/slab.h>
- #include <linux/pci.h>
  #include <linux/interrupt.h>
+ #include <linux/module.h>
  #include <linux/parport.h>
  #include <linux/parport_pc.h>
+ #include <linux/pci.h>
+ #include <linux/slab.h>
+ #include <linux/types.h>
  #include <linux/8250_pci.h>
  
  enum parport_pc_pci_cards {
@@@ -65,6 -59,7 +59,7 @@@
        wch_ch353_1s1p,
        wch_ch353_2s1p,
        wch_ch382_2s1p,
+       brainboxes_5s1p,
        sunix_2s1p,
  };
  
@@@ -153,9 -148,13 +148,10 @@@ static struct parport_pc_pci cards[] = 
        /* wch_ch353_1s1p*/             { 1, { { 1, -1}, } },
        /* wch_ch353_2s1p*/             { 1, { { 2, -1}, } },
        /* wch_ch382_2s1p*/             { 1, { { 2, -1}, } },
+       /* brainboxes_5s1p */           { 1, { { 3, -1 }, } },
        /* sunix_2s1p */                { 1, { { 3, -1 }, } },
  };
  
 -#define PCI_VENDOR_ID_SUNIX           0x1fd4
 -#define PCI_DEVICE_ID_SUNIX_1999      0x1999
 -
  static struct pci_device_id parport_serial_pci_tbl[] = {
        /* PCI cards */
        { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_110L,
        { 0x4348, 0x7053, 0x4348, 0x3253, 0, 0, wch_ch353_2s1p},
        { 0x1c00, 0x3250, 0x1c00, 0x3250, 0, 0, wch_ch382_2s1p},
  
+       /* BrainBoxes PX272/PX306 MIO card */
+       { PCI_VENDOR_ID_INTASHIELD, 0x4100,
+         PCI_ANY_ID, PCI_ANY_ID, 0, 0, brainboxes_5s1p },
        /*
         * More SUNIX variations. At least one of these has part number
         * '5079A but subdevice 0x102. That board reports 0x0708 as
@@@ -501,6 -504,12 +501,12 @@@ static struct pciserial_board pci_parpo
                .uart_offset    = 8,
                .first_offset   = 0xC0,
        },
+       [brainboxes_5s1p] = {
+               .flags          = FL_BASE2,
+               .num_ports      = 5,
+               .base_baud      = 921600,
+               .uart_offset    = 8,
+       },
        [sunix_2s1p] = {
                .flags          = FL_BASE0|FL_BASE_BARS,
                .num_ports      = 2,
@@@ -524,12 -533,10 +530,10 @@@ static int serial_register(struct pci_d
        struct serial_private *serial;
  
        board = &pci_parport_serial_boards[id->driver_data];
        if (board->num_ports == 0)
                return 0;
  
        serial = pciserial_init_ports(dev, board);
        if (IS_ERR(serial))
                return PTR_ERR(serial);
  
@@@ -558,10 -565,9 +562,9 @@@ static int parport_register(struct pci_
                int irq;
  
                if (priv->num_par == ARRAY_SIZE (priv->port)) {
-                       printk (KERN_WARNING
-                               "parport_serial: %s: only %zu parallel ports "
-                               "supported (%d reported)\n", pci_name (dev),
-                               ARRAY_SIZE(priv->port), card->numports);
+                       dev_warn(&dev->dev,
+                                "only %zu parallel ports supported (%d reported)\n",
+                                ARRAY_SIZE(priv->port), card->numports);
                        break;
                }
  
                irq = dev->irq;
                if (irq == IRQ_NONE) {
                        dev_dbg(&dev->dev,
-                       "PCI parallel port detected: I/O at %#lx(%#lx)\n",
+                               "PCI parallel port detected: I/O at %#lx(%#lx)\n",
                                io_lo, io_hi);
                        irq = PARPORT_IRQ_NONE;
                } else {
                        dev_dbg(&dev->dev,
-               "PCI parallel port detected: I/O at %#lx(%#lx), IRQ %d\n",
+                               "PCI parallel port detected: I/O at %#lx(%#lx), IRQ %d\n",
                                io_lo, io_hi, irq);
                }
                port = parport_pc_probe_port (io_lo, io_hi, irq,
@@@ -605,28 -611,26 +608,26 @@@ static int parport_serial_pci_probe(str
        struct parport_serial_private *priv;
        int err;
  
-       priv = kzalloc (sizeof *priv, GFP_KERNEL);
+       priv = devm_kzalloc(&dev->dev, sizeof(*priv), GFP_KERNEL);
        if (!priv)
                return -ENOMEM;
        pci_set_drvdata (dev, priv);
  
-       err = pci_enable_device (dev);
-       if (err) {
-               kfree (priv);
+       err = pcim_enable_device(dev);
+       if (err)
                return err;
-       }
  
-       if (parport_register (dev, id)) {
-               kfree (priv);
-               return -ENODEV;
-       }
+       err = parport_register(dev, id);
+       if (err)
+               return err;
  
-       if (serial_register (dev, id)) {
+       err = serial_register(dev, id);
+       if (err) {
                int i;
                for (i = 0; i < priv->num_par; i++)
                        parport_pc_unregister_port (priv->port[i]);
-               kfree (priv);
-               return -ENODEV;
+               return err;
        }
  
        return 0;
@@@ -645,78 -649,47 +646,47 @@@ static void parport_serial_pci_remove(s
        for (i = 0; i < priv->num_par; i++)
                parport_pc_unregister_port (priv->port[i]);
  
-       kfree (priv);
        return;
  }
  
- #ifdef CONFIG_PM
- static int parport_serial_pci_suspend(struct pci_dev *dev, pm_message_t state)
+ static int __maybe_unused parport_serial_pci_suspend(struct device *dev)
  {
-       struct parport_serial_private *priv = pci_get_drvdata(dev);
+       struct pci_dev *pdev = to_pci_dev(dev);
+       struct parport_serial_private *priv = pci_get_drvdata(pdev);
  
        if (priv->serial)
                pciserial_suspend_ports(priv->serial);
  
        /* FIXME: What about parport? */
-       pci_save_state(dev);
-       pci_set_power_state(dev, pci_choose_state(dev, state));
        return 0;
  }
  
- static int parport_serial_pci_resume(struct pci_dev *dev)
+ static int __maybe_unused parport_serial_pci_resume(struct device *dev)
  {
-       struct parport_serial_private *priv = pci_get_drvdata(dev);
-       int err;
-       pci_set_power_state(dev, PCI_D0);
-       pci_restore_state(dev);
-       /*
-        * The device may have been disabled.  Re-enable it.
-        */
-       err = pci_enable_device(dev);
-       if (err) {
-               printk(KERN_ERR "parport_serial: %s: error enabling "
-                       "device for resume (%d)\n", pci_name(dev), err);
-               return err;
-       }
+       struct pci_dev *pdev = to_pci_dev(dev);
+       struct parport_serial_private *priv = pci_get_drvdata(pdev);
  
        if (priv->serial)
                pciserial_resume_ports(priv->serial);
  
        /* FIXME: What about parport? */
        return 0;
  }
- #endif
+ static SIMPLE_DEV_PM_OPS(parport_serial_pm_ops,
+                        parport_serial_pci_suspend, parport_serial_pci_resume);
  
  static struct pci_driver parport_serial_pci_driver = {
        .name           = "parport_serial",
        .id_table       = parport_serial_pci_tbl,
        .probe          = parport_serial_pci_probe,
        .remove         = parport_serial_pci_remove,
- #ifdef CONFIG_PM
-       .suspend        = parport_serial_pci_suspend,
-       .resume         = parport_serial_pci_resume,
- #endif
+       .driver         = {
+               .pm     = &parport_serial_pm_ops,
+       },
  };
- static int __init parport_serial_init (void)
- {
-       return pci_register_driver (&parport_serial_pci_driver);
- }
- static void __exit parport_serial_exit (void)
- {
-       pci_unregister_driver (&parport_serial_pci_driver);
-       return;
- }
+ module_pci_driver(parport_serial_pci_driver);
  
  MODULE_AUTHOR("Tim Waugh <twaugh@redhat.com>");
  MODULE_DESCRIPTION("Driver for common parallel+serial multi-I/O PCI cards");
  MODULE_LICENSE("GPL");
- module_init(parport_serial_init);
- module_exit(parport_serial_exit);
diff --combined include/linux/pci_ids.h
index 44f74b54d48302ae34d691a8bf564df0c6c29c0f,6a96a70fb4626f173e5884042e88f7a07aeed26d..2d61d9bde83d60258261d98368d0d889401cc422
@@@ -45,7 -45,6 +45,7 @@@
  #define PCI_CLASS_MULTIMEDIA_VIDEO    0x0400
  #define PCI_CLASS_MULTIMEDIA_AUDIO    0x0401
  #define PCI_CLASS_MULTIMEDIA_PHONE    0x0402
 +#define PCI_CLASS_MULTIMEDIA_HD_AUDIO 0x0403
  #define PCI_CLASS_MULTIMEDIA_OTHER    0x0480
  
  #define PCI_BASE_CLASS_MEMORY         0x05
  #define PCI_DEVICE_ID_SERVERWORKS_CSB6LPC 0x0227
  #define PCI_DEVICE_ID_SERVERWORKS_HT1100LD 0x0408
  
+ #define PCI_VENDOR_ID_ALTERA          0x1172
  #define PCI_VENDOR_ID_SBE             0x1176
  #define PCI_DEVICE_ID_SBE_WANXL100    0x0301
  #define PCI_DEVICE_ID_SBE_WANXL200    0x0302
  #define PCI_DEVICE_ID_TEHUTI_3010     0x3010
  #define PCI_DEVICE_ID_TEHUTI_3014     0x3014
  
 +#define PCI_VENDOR_ID_SUNIX           0x1fd4
 +#define PCI_DEVICE_ID_SUNIX_1999      0x1999
 +
  #define PCI_VENDOR_ID_HINT             0x3388
  #define PCI_DEVICE_ID_HINT_VXPROII_IDE 0x8013