Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Jan 2019 00:01:16 +0000 (16:01 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 6 Jan 2019 00:01:16 +0000 (16:01 -0800)
Pull thermal SoC updates from Eduardo Valentin:

 - Tegra DT binding documentation for Tegra194

 - Armada now supports ap806 and cp110

 - RCAR thermal now supports R8A774C0 and R8A77990

 - Fixes on thermal_hwmon, IMX, generic-ADC, ST, RCAR, Broadcom,
   Uniphier, QCOM, Tegra, PowerClamp, and Armada thermal drivers.

* 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal: (22 commits)
  thermal: generic-adc: Fix adc to temp interpolation
  thermal: rcar_thermal: add R8A77990 support
  dt-bindings: thermal: rcar-thermal: add R8A77990 support
  thermal: rcar_thermal: add R8A774C0 support
  dt-bindings: thermal: rcar-thermal: add R8A774C0 support
  dt-bindings: cp110: document the thermal interrupt capabilities
  dt-bindings: ap806: document the thermal interrupt capabilities
  MAINTAINERS: thermal: add entry for Marvell MVEBU thermal driver
  thermal: armada: add overheat interrupt support
  thermal: st: fix Makefile typo
  thermal: uniphier: Convert to SPDX identifier
  thermal/intel_powerclamp: Change to use DEFINE_SHOW_ATTRIBUTE macro
  thermal: tegra: soctherm: Change to use DEFINE_SHOW_ATTRIBUTE macro
  dt-bindings: thermal: tegra-bpmp: Add Tegra194 support
  thermal: imx: save one condition block for normal case of nvmem initialization
  thermal: imx: fix for dependency on cpu-freq
  thermal: tsens: qcom: do not create duplicate regmap debugfs entries
  thermal: armada: Use PTR_ERR_OR_ZERO in armada_thermal_probe_legacy()
  dt-bindings: thermal: rcar-gen3-thermal: All variants use 3 interrupts
  thermal: broadcom: use devm_thermal_zone_of_sensor_register
  ...

1  2 
MAINTAINERS
drivers/thermal/Kconfig
drivers/thermal/armada_thermal.c
drivers/thermal/broadcom/bcm2835_thermal.c
drivers/thermal/broadcom/brcmstb_thermal.c

diff --combined MAINTAINERS
index bc00793a03c828545c974ce19fe944b44aee87a5,3c457ff4826b629a130c8d99d0cdb11a5a16b7de..39e75bbefc3d734b79f40485288bb25be98b91c1
@@@ -140,7 -140,7 +140,7 @@@ Maintainers List (try to look for most 
  M:    Steffen Klassert <klassert@kernel.org>
  L:    netdev@vger.kernel.org
  S:    Odd Fixes
 -F:    Documentation/networking/vortex.txt
 +F:    Documentation/networking/device_drivers/3com/vortex.txt
  F:    drivers/net/ethernet/3com/3c59x.c
  
  3CR990 NETWORK DRIVER
@@@ -740,7 -740,7 +740,7 @@@ R: Saeed Bishara <saeedb@amazon.com
  R:    Zorik Machulsky <zorik@amazon.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/ena.txt
 +F:    Documentation/networking/device_drivers/amazon/ena.txt
  F:    drivers/net/ethernet/amazon/
  
  AMD CRYPTOGRAPHIC COPROCESSOR (CCP) DRIVER
@@@ -846,14 -846,6 +846,14 @@@ S:       Supporte
  F:    drivers/iio/dac/ad5758.c
  F:    Documentation/devicetree/bindings/iio/dac/ad5758.txt
  
 +ANALOG DEVICES INC AD7124 DRIVER
 +M:    Stefan Popa <stefan.popa@analog.com>
 +L:    linux-iio@vger.kernel.org
 +W:    http://ez.analog.com/community/linux-device-drivers
 +S:    Supported
 +F:    drivers/iio/adc/ad7124.c
 +F:    Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
 +
  ANALOG DEVICES INC AD9389B DRIVER
  M:    Hans Verkuil <hans.verkuil@cisco.com>
  L:    linux-media@vger.kernel.org
@@@ -958,7 -950,6 +958,7 @@@ M: Arve Hjønnevåg <arve@android.com
  M:    Todd Kjos <tkjos@android.com>
  M:    Martijn Coenen <maco@android.com>
  M:    Joel Fernandes <joel@joelfernandes.org>
 +M:    Christian Brauner <christian@brauner.io>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
  L:    devel@driverdev.osuosl.org
  S:    Supported
@@@ -1306,6 -1297,7 +1306,6 @@@ F:      include/dt-bindings/clock/gxbb
  F:    Documentation/devicetree/bindings/clock/amlogic*
  
  ARM/Amlogic Meson SoC support
 -M:    Carlo Caione <carlo@caione.org>
  M:    Kevin Hilman <khilman@baylibre.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-amlogic@lists.infradead.org
@@@ -1316,16 -1308,8 +1316,16 @@@ F:    arch/arm/boot/dts/meson
  F:    arch/arm64/boot/dts/amlogic/
  F:    drivers/pinctrl/meson/
  F:    drivers/mmc/host/meson*
 +F:    drivers/soc/amlogic/
  N:    meson
  
 +ARM/Amlogic Meson SoC Sound Drivers
 +M:    Jerome Brunet <jbrunet@baylibre.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    sound/soc/meson/
 +F:    Documentation/devicetree/bindings/sound/amlogic*
 +
  ARM/Annapurna Labs ALPINE ARCHITECTURE
  M:    Tsahee Zidenberg <tsahee@annapurnalabs.com>
  M:    Antoine Tenart <antoine.tenart@bootlin.com>
@@@ -1443,7 -1427,6 +1443,7 @@@ F:      arch/arm/mach-ep93xx/micro9.
  
  ARM/CORESIGHT FRAMEWORK AND DRIVERS
  M:    Mathieu Poirier <mathieu.poirier@linaro.org>
 +R:    Suzuki K Poulose <suzuki.poulose@arm.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    drivers/hwtracing/coresight/*
@@@ -1489,7 -1472,6 +1489,7 @@@ F:      drivers/clk/sirf
  F:    drivers/clocksource/timer-prima2.c
  F:    drivers/clocksource/timer-atlas7.c
  N:    [^a-z]sirf
 +X:    drivers/gnss
  
  ARM/EBSA110 MACHINE SUPPORT
  M:    Russell King <linux@armlinux.org.uk>
@@@ -1540,7 -1522,6 +1540,7 @@@ F:      arch/arm/mach-imx
  F:    arch/arm/mach-mxs/
  F:    arch/arm/boot/dts/imx*
  F:    arch/arm/configs/imx*_defconfig
 +F:    arch/arm64/boot/dts/freescale/imx*
  F:    drivers/clk/imx/
  F:    drivers/firmware/imx/
  F:    drivers/soc/imx/
@@@ -1757,17 -1738,13 +1757,17 @@@ ARM/Mediatek SoC suppor
  M:    Matthias Brugger <matthias.bgg@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-mediatek@lists.infradead.org (moderated for non-subscribers)
 +W:    https://mtk.bcnfs.org/
 +C:    irc://chat.freenode.net/linux-mediatek
  S:    Maintained
  F:    arch/arm/boot/dts/mt6*
  F:    arch/arm/boot/dts/mt7*
  F:    arch/arm/boot/dts/mt8*
  F:    arch/arm/mach-mediatek/
  F:    arch/arm64/boot/dts/mediatek/
 +F:    drivers/soc/mediatek/
  N:    mtk
 +N:    mt[678]
  K:    mediatek
  
  ARM/Mediatek USB3 PHY DRIVER
@@@ -1968,20 -1945,6 +1968,20 @@@ M:    Lennert Buytenhek <kernel@wantstofly
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
 +ARM/RDA MICRO ARCHITECTURE
 +M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    linux-unisoc@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    arch/arm/boot/dts/rda8810pl-*
 +F:    drivers/clocksource/timer-rda.c
 +F:    drivers/irqchip/irq-rda-intc.c
 +F:    drivers/tty/serial/rda-uart.c
 +F:    Documentation/devicetree/bindings/arm/rda.txt
 +F:    Documentation/devicetree/bindings/interrupt-controller/rda,8810pl-intc.txt
 +F:    Documentation/devicetree/bindings/serial/rda,8810pl-uart.txt
 +F:    Documentation/devicetree/bindings/timer/rda,8810pl-timer.txt
 +
  ARM/REALTEK ARCHITECTURE
  M:    Andreas Färber <afaerber@suse.de>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2099,6 -2062,7 +2099,6 @@@ M:      Andrzej Hajda <a.hajda@samsung.com
  L:    linux-arm-kernel@lists.infradead.org
  L:    linux-media@vger.kernel.org
  S:    Maintained
 -F:    arch/arm/plat-samsung/s5p-dev-mfc.c
  F:    drivers/media/platform/s5p-mfc/
  
  ARM/SHMOBILE ARM ARCHITECTURE
@@@ -2240,7 -2204,6 +2240,7 @@@ S:      Supporte
  F:    Documentation/devicetree/bindings/arm/ti/k3.txt
  F:    arch/arm64/boot/dts/ti/Makefile
  F:    arch/arm64/boot/dts/ti/k3-*
 +F:    include/dt-bindings/pinctrl/k3.h
  
  ARM/TEXAS INSTRUMENT KEYSTONE ARCHITECTURE
  M:    Santosh Shilimkar <ssantosh@kernel.org>
@@@ -2284,7 -2247,6 +2284,7 @@@ M:      Masahiro Yamada <yamada.masahiro@soc
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier.git
  S:    Maintained
 +F:    Documentation/devicetree/bindings/arm/socionext/uniphier.txt
  F:    Documentation/devicetree/bindings/gpio/gpio-uniphier.txt
  F:    Documentation/devicetree/bindings/pinctrl/socionext,uniphier-pinctrl.txt
  F:    arch/arm/boot/dts/uniphier*
@@@ -2294,7 -2256,6 +2294,7 @@@ F:      arch/arm/mm/cache-uniphier.
  F:    arch/arm64/boot/dts/socionext/uniphier*
  F:    drivers/bus/uniphier-system-bus.c
  F:    drivers/clk/uniphier/
 +F:    drivers/dmaengine/uniphier-mdmac.c
  F:    drivers/gpio/gpio-uniphier.c
  F:    drivers/i2c/busses/i2c-uniphier*
  F:    drivers/irqchip/irq-uniphier-aidet.c
@@@ -2381,7 -2342,7 +2381,7 @@@ F:      drivers/pinctrl/zte
  F:    drivers/soc/zte/
  F:    drivers/thermal/zx2967_thermal.c
  F:    drivers/watchdog/zx2967_wdt.c
 -F:    Documentation/devicetree/bindings/arm/zte.txt
 +F:    Documentation/devicetree/bindings/arm/zte.yaml
  F:    Documentation/devicetree/bindings/clock/zx2967*.txt
  F:    Documentation/devicetree/bindings/dma/zxdma.txt
  F:    Documentation/devicetree/bindings/gpio/zx296702-gpio.txt
@@@ -2453,14 -2414,6 +2453,14 @@@ S:    Maintaine
  F:    Documentation/hwmon/asc7621
  F:    drivers/hwmon/asc7621.c
  
 +ASPEED VIDEO ENGINE DRIVER
 +M:    Eddie James <eajames@linux.ibm.com>
 +L:    linux-media@vger.kernel.org
 +L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    drivers/media/platform/aspeed-video.c
 +F:    Documentation/devicetree/bindings/media/aspeed-video.txt
 +
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
  M:    Corentin Chary <corentin.chary@gmail.com>
  L:    acpi4asus-user@lists.sourceforge.net
@@@ -2675,13 -2628,6 +2675,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/sound/axentia,*
  F:    sound/soc/atmel/tse850-pcm5142.c
  
 +AXXIA I2C CONTROLLER
 +M:    Krzysztof Adamski <krzysztof.adamski@nokia.com>
 +L:    linux-i2c@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/i2c/i2c-axxia.txt
 +F:    drivers/i2c/busses/i2c-axxia.c
 +
  AZ6007 DVB DRIVER
  M:    Mauro Carvalho Chehab <mchehab@kernel.org>
  L:    linux-media@vger.kernel.org
@@@ -3325,16 -3271,11 +3325,16 @@@ S:   Maintaine
  F:    sound/pci/oxygen/
  
  C-SKY ARCHITECTURE
 -M:    Guo Ren <ren_guo@c-sky.com>
 +M:    Guo Ren <guoren@kernel.org>
  T:    git https://github.com/c-sky/csky-linux.git
  S:    Supported
  F:    arch/csky/
  F:    Documentation/devicetree/bindings/csky/
 +F:    drivers/irqchip/irq-csky-*
 +F:    Documentation/devicetree/bindings/interrupt-controller/csky,*
 +F:    drivers/clocksource/timer-gx6605s.c
 +F:    drivers/clocksource/timer-mp-csky.c
 +F:    Documentation/devicetree/bindings/timer/csky,*
  K:    csky
  N:    csky
  
@@@ -3512,7 -3453,6 +3512,7 @@@ F:      include/linux/spi/cc2520.
  F:    Documentation/devicetree/bindings/net/ieee802154/cc2520.txt
  
  CCREE ARM TRUSTZONE CRYPTOCELL REE DRIVER
 +M:    Yael Chemla <yael.chemla@foss.arm.com>
  M:    Gilad Ben-Yossef <gilad@benyossef.com>
  L:    linux-crypto@vger.kernel.org
  S:    Supported
@@@ -3716,8 -3656,6 +3716,8 @@@ F:      drivers/net/ethernet/cisco/enic
  
  CISCO VIC LOW LATENCY NIC DRIVER
  M:    Christian Benvenuti <benve@cisco.com>
 +M:    Nelson Escobar <neescoba@cisco.com>
 +M:    Parvi Kaustubhi <pkaustub@cisco.com>
  S:    Supported
  F:    drivers/infiniband/hw/usnic/
  
@@@ -3731,10 -3669,8 +3731,10 @@@ W:    https://github.com/CirrusLogic/linux
  S:    Supported
  F:    Documentation/devicetree/bindings/mfd/madera.txt
  F:    Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt
 +F:    include/linux/irqchip/irq-madera*
  F:    include/linux/mfd/madera/*
  F:    drivers/gpio/gpio-madera*
 +F:    drivers/irqchip/irq-madera*
  F:    drivers/mfd/madera*
  F:    drivers/mfd/cs47l*
  F:    drivers/pinctrl/cirrus/*
@@@ -4042,20 -3978,13 +4042,20 @@@ T:   git git://linuxtv.org/media_tree.gi
  W:    http://linuxtv.org
  S:    Odd Fixes
  F:    drivers/media/i2c/cs3308.c
 -F:    drivers/media/i2c/cs3308.h
  
  CS5535 Audio ALSA driver
  M:    Jaya Kumar <jayakumar.alsa@gmail.com>
  S:    Maintained
  F:    sound/pci/cs5535audio/
  
 +CSI DRIVERS FOR ALLWINNER V3s
 +M:    Yong Deng <yong.deng@magewell.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/platform/sunxi/sun6i-csi/
 +F:    Documentation/devicetree/bindings/media/sun6i-csi.txt
 +
  CW1200 WLAN driver
  M:    Solomon Peachy <pizza@shaftnet.org>
  S:    Maintained
@@@ -4080,7 -4009,7 +4080,7 @@@ T:      git git://linuxtv.org/media_tree.gi
  W:    https://linuxtv.org
  S:    Maintained
  F:    drivers/media/common/cx2341x*
 -F:    include/media/cx2341x*
 +F:    include/media/drv-intf/cx2341x.h
  
  CX24120 MEDIA DRIVER
  M:    Jemma Denson <jdenson@gmail.com>
@@@ -4111,7 -4040,7 +4111,7 @@@ S:      Maintaine
  F:    drivers/media/dvb-frontends/cxd2820r*
  
  CXGB3 ETHERNET DRIVER (CXGB3)
 -M:    Santosh Raspatur <santosh@chelsio.com>
 +M:    Arjun Vynipadath <arjun@chelsio.com>
  L:    netdev@vger.kernel.org
  W:    http://www.chelsio.com
  S:    Supported
@@@ -4140,7 -4069,7 +4140,7 @@@ S:      Supporte
  F:    drivers/crypto/chelsio
  
  CXGB4 ETHERNET DRIVER (CXGB4)
 -M:    Ganesh Goudar <ganeshgr@chelsio.com>
 +M:    Arjun Vynipadath <arjun@chelsio.com>
  L:    netdev@vger.kernel.org
  W:    http://www.chelsio.com
  S:    Supported
@@@ -4169,7 -4098,7 +4169,7 @@@ S:      Supporte
  F:    drivers/net/ethernet/chelsio/cxgb4vf/
  
  CXL (IBM Coherent Accelerator Processor Interface CAPI) DRIVER
 -M:    Frederic Barrat <fbarrat@linux.vnet.ibm.com>
 +M:    Frederic Barrat <fbarrat@linux.ibm.com>
  M:    Andrew Donnellan <andrew.donnellan@au1.ibm.com>
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Supported
@@@ -4181,9 -4110,9 +4181,9 @@@ F:      Documentation/powerpc/cxl.tx
  F:    Documentation/ABI/testing/sysfs-class-cxl
  
  CXLFLASH (IBM Coherent Accelerator Processor Interface CAPI Flash) SCSI DRIVER
 -M:    Manoj N. Kumar <manoj@linux.vnet.ibm.com>
 -M:    Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
 -M:    Uma Krishnan <ukrishn@linux.vnet.ibm.com>
 +M:    Manoj N. Kumar <manoj@linux.ibm.com>
 +M:    Matthew R. Ochs <mrochs@linux.ibm.com>
 +M:    Uma Krishnan <ukrishn@linux.ibm.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    drivers/scsi/cxlflash/
@@@ -4255,7 -4184,7 +4255,7 @@@ F:      net/ax25/sysctl_net_ax25.
  DAVICOM FAST ETHERNET (DMFE) NETWORK DRIVER
  L:    netdev@vger.kernel.org
  S:    Orphan
 -F:    Documentation/networking/dmfe.txt
 +F:    Documentation/networking/device_drivers/dec/dmfe.txt
  F:    drivers/net/ethernet/dec/tulip/dmfe.c
  
  DC390/AM53C974 SCSI driver
@@@ -4791,13 -4720,6 +4791,13 @@@ S:    Maintaine
  F:    drivers/gpu/drm/tinydrm/ili9225.c
  F:    Documentation/devicetree/bindings/display/ilitek,ili9225.txt
  
 +DRM DRIVER FOR HX8357D PANELS
 +M:    Eric Anholt <eric@anholt.net>
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +S:    Maintained
 +F:    drivers/gpu/drm/tinydrm/hx8357d.c
 +F:    Documentation/devicetree/bindings/display/himax,hx8357d.txt
 +
  DRM DRIVER FOR INTEL I810 VIDEO CARDS
  S:    Orphan / Obsolete
  F:    drivers/gpu/drm/i810/
@@@ -4839,12 -4761,6 +4839,12 @@@ S:    Supporte
  F:    drivers/gpu/drm/nouveau/
  F:    include/uapi/drm/nouveau_drm.h
  
 +DRM DRIVER FOR OLIMEX LCD-OLINUXINO PANELS
 +M:    Stefan Mavrodiev <stefan@olimex.com>
 +S:    Maintained
 +F:    drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c
 +F:    Documentation/devicetree/bindings/display/panel/olimex,lcd-olinuxino.txt
 +
  DRM DRIVER FOR PERVASIVE DISPLAYS REPAPER PANELS
  M:    Noralf Trønnes <noralf@tronnes.org>
  S:    Maintained
@@@ -4910,8 -4826,10 +4910,8 @@@ T:     git git://anongit.freedesktop.org/dr
  
  DRM DRIVER FOR VMWARE VIRTUAL GPU
  M:    "VMware Graphics" <linux-graphics-maintainer@vmware.com>
 -M:    Sinclair Yeh <syeh@vmware.com>
  M:    Thomas Hellstrom <thellstrom@vmware.com>
  L:    dri-devel@lists.freedesktop.org
 -T:    git git://people.freedesktop.org/~syeh/repos_linux
  T:    git git://people.freedesktop.org/~thomash/linux
  S:    Supported
  F:    drivers/gpu/drm/vmwgfx/
@@@ -4919,7 -4837,6 +4919,7 @@@ F:      include/uapi/drm/vmwgfx_drm.
  
  DRM DRIVERS
  M:    David Airlie <airlied@linux.ie>
 +M:    Daniel Vetter <daniel@ffwll.ch>
  L:    dri-devel@lists.freedesktop.org
  T:    git git://anongit.freedesktop.org/drm/drm
  B:    https://bugs.freedesktop.org/
@@@ -4969,7 -4886,7 +4969,7 @@@ F:      Documentation/gpu/meson.rs
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  
  DRM DRIVERS FOR ATMEL HLCDC
 -M:    Boris Brezillon <boris.brezillon@bootlin.com>
 +M:    Boris Brezillon <bbrezillon@kernel.org>
  L:    dri-devel@lists.freedesktop.org
  S:    Supported
  F:    drivers/gpu/drm/atmel-hlcdc/
@@@ -5478,6 -5395,7 +5478,6 @@@ S:      Maintaine
  F:    drivers/edac/i82443bxgx_edac.c
  
  EDAC-I82975X
 -M:    Ranganathan Desikan <ravi@jetztechnologies.com>
  M:    "Arvind R." <arvino55@gmail.com>
  L:    linux-edac@vger.kernel.org
  S:    Maintained
@@@ -5575,7 -5493,7 +5575,7 @@@ S:      Orpha
  F:    fs/efs/
  
  EHEA (IBM pSeries eHEA 10Gb ethernet adapter) DRIVER
 -M:    Douglas Miller <dougmill@linux.vnet.ibm.com>
 +M:    Douglas Miller <dougmill@linux.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/ethernet/ibm/ehea/
@@@ -5689,7 -5607,6 +5689,7 @@@ F:      include/linux/of_net.
  F:    include/linux/phy.h
  F:    include/linux/phy_fixed.h
  F:    include/linux/platform_data/mdio-bcm-unimac.h
 +F:    include/linux/platform_data/mdio-gpio.h
  F:    include/trace/events/mdio.h
  F:    include/uapi/linux/mdio.h
  F:    include/uapi/linux/mii.h
@@@ -5714,7 -5631,7 +5714,7 @@@ F:      Documentation/filesystems/ext4/ext4.
  F:    fs/ext4/
  
  Extended Verification Module (EVM)
 -M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 +M:    Mimi Zohar <zohar@linux.ibm.com>
  L:    linux-integrity@vger.kernel.org
  S:    Supported
  F:    security/integrity/evm/
@@@ -5924,7 -5841,7 +5924,7 @@@ F:      include/linux/firmware.
  
  FLASH ADAPTER DRIVER (IBM Flash Adapter 900GB Full Height PCI Flash Card)
  M:    Joshua Morris <josh.h.morris@us.ibm.com>
 -M:    Philip Kelleher <pjk1939@linux.vnet.ibm.com>
 +M:    Philip Kelleher <pjk1939@linux.ibm.com>
  S:    Maintained
  F:    drivers/block/rsxx/
  
@@@ -6191,7 -6108,7 +6191,7 @@@ F:      include/linux/fscrypt*.
  F:    Documentation/filesystems/fscrypt.rst
  
  FSI-ATTACHED I2C DRIVER
 -M:    Eddie James <eajames@linux.vnet.ibm.com>
 +M:    Eddie James <eajames@linux.ibm.com>
  L:    linux-i2c@vger.kernel.org
  L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
  S:    Maintained
@@@ -6338,7 -6255,6 +6338,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  S:    Supported
  F:    drivers/phy/
  F:    include/linux/phy/
 +F:    Documentation/devicetree/bindings/phy/
  
  GENERIC PINCTRL I2C DEMULTIPLEXER DRIVER
  M:    Wolfram Sang <wsa+renesas@sang-engineering.com>
@@@ -6368,7 -6284,8 +6368,7 @@@ S:      Supporte
  F:    drivers/uio/uio_pci_generic.c
  
  GENWQE (IBM Generic Workqueue Card)
 -M:    Frank Haverkamp <haver@linux.vnet.ibm.com>
 -M:    Guilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
 +M:    Frank Haverkamp <haver@linux.ibm.com>
  S:    Supported
  F:    drivers/misc/genwqe/
  
@@@ -6399,7 -6316,6 +6399,7 @@@ F:      include/uapi/linux/gigaset_dev.
  
  GNSS SUBSYSTEM
  M:    Johan Hovold <johan@kernel.org>
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/johan/gnss.git
  S:    Maintained
  F:    Documentation/ABI/testing/sysfs-class-gnss
  F:    Documentation/devicetree/bindings/gnss/
@@@ -6441,6 -6357,7 +6441,6 @@@ F:      drivers/media/rc/gpio-ir-tx.
  
  GPIO MOCKUP DRIVER
  M:    Bamvor Jian Zhang <bamv2005@gmail.com>
 -R:    Bartosz Golaszewski <brgl@bgdev.pl>
  L:    linux-gpio@vger.kernel.org
  S:    Maintained
  F:    drivers/gpio/gpio-mockup.c
@@@ -6934,14 -6851,6 +6934,14 @@@ L:    linux-input@vger.kernel.or
  S:    Maintained
  F:    drivers/input/touchscreen/htcpen.c
  
 +HTS221 TEMPERATURE-HUMIDITY IIO DRIVER
 +M:    Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
 +L:    linux-iio@vger.kernel.org
 +W:    http://www.st.com/
 +S:    Maintained
 +F:    drivers/iio/humidity/hts221*
 +F:    Documentation/devicetree/bindings/iio/humidity/hts221.txt
 +
  HUAWEI ETHERNET DRIVER
  M:    Aviad Krawczyk <aviad.krawczyk@huawei.com>
  L:    netdev@vger.kernel.org
@@@ -6985,11 -6894,9 +6985,11 @@@ Hyper-V CORE AND DRIVER
  M:    "K. Y. Srinivasan" <kys@microsoft.com>
  M:    Haiyang Zhang <haiyangz@microsoft.com>
  M:    Stephen Hemminger <sthemmin@microsoft.com>
 +M:    Sasha Levin <sashal@kernel.org>
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git
  L:    devel@linuxdriverproject.org
 -S:    Maintained
 -F:    Documentation/networking/netvsc.txt
 +S:    Supported
 +F:    Documentation/networking/device_drivers/microsoft/netvsc.txt
  F:    arch/x86/include/asm/mshyperv.h
  F:    arch/x86/include/asm/trace/hyperv.h
  F:    arch/x86/include/asm/hyperv-tlfs.h
@@@ -7149,24 -7056,6 +7149,24 @@@ L:    linux-i2c@vger.kernel.or
  S:    Maintained
  F:    drivers/i2c/i2c-stub.c
  
 +I3C SUBSYSTEM
 +M:    Boris Brezillon <bbrezillon@kernel.org>
 +L:    linux-i3c@lists.infradead.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux.git
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-bus-i3c
 +F:    Documentation/devicetree/bindings/i3c/
 +F:    Documentation/driver-api/i3c
 +F:    drivers/i3c/
 +F:    include/linux/i3c/
 +F:    include/dt-bindings/i3c/
 +
 +I3C DRIVER FOR SYNOPSYS DESIGNWARE
 +M:    Vitor Soares <vitor.soares@synopsys.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.txt
 +F:    drivers/i3c/master/dw*
 +
  IA64 (Itanium) PLATFORM
  M:    Tony Luck <tony.luck@intel.com>
  M:    Fenghua Yu <fenghua.yu@intel.com>
@@@ -7186,9 -7075,8 +7186,9 @@@ F:      crypto/842.
  F:    lib/842/
  
  IBM Power in-Nest Crypto Acceleration
 -M:    Leonidas S. Barbosa <leosilva@linux.vnet.ibm.com>
 -M:    Paulo Flabiano Smorigo <pfsmorigo@linux.vnet.ibm.com>
 +M:    Breno Leitão <leitao@debian.org>
 +M:    Nayna Jain <nayna@linux.ibm.com>
 +M:    Paulo Flabiano Smorigo <pfsmorigo@gmail.com>
  L:    linux-crypto@vger.kernel.org
  S:    Supported
  F:    drivers/crypto/nx/Makefile
@@@ -7205,8 -7093,8 +7205,8 @@@ S:      Supporte
  F:    drivers/scsi/ipr.*
  
  IBM Power SRIOV Virtual NIC Device Driver
 -M:    Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
 -M:    John Allen <jallen@linux.vnet.ibm.com>
 +M:    Thomas Falcon <tlfalcon@linux.ibm.com>
 +M:    John Allen <jallen@linux.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/ibm/ibmvnic.*
@@@ -7221,40 -7109,41 +7221,40 @@@ F:   arch/powerpc/include/asm/vas.
  F:    arch/powerpc/include/uapi/asm/vas.h
  
  IBM Power Virtual Ethernet Device Driver
 -M:    Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
 +M:    Thomas Falcon <tlfalcon@linux.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/ibm/ibmveth.*
  
  IBM Power Virtual FC Device Drivers
 -M:    Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
 +M:    Tyrel Datwyler <tyreld@linux.ibm.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    drivers/scsi/ibmvscsi/ibmvfc*
  
  IBM Power Virtual Management Channel Driver
 -M:    Bryant G. Ly <bryantly@linux.vnet.ibm.com>
 -M:    Steven Royer <seroyer@linux.vnet.ibm.com>
 +M:    Steven Royer <seroyer@linux.ibm.com>
  S:    Supported
  F:    drivers/misc/ibmvmc.*
  
  IBM Power Virtual SCSI Device Drivers
 -M:    Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
 +M:    Tyrel Datwyler <tyreld@linux.ibm.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
  F:    drivers/scsi/ibmvscsi/ibmvscsi*
  F:    include/scsi/viosrp.h
  
  IBM Power Virtual SCSI Device Target Driver
 -M:    Bryant G. Ly <bryantly@linux.vnet.ibm.com>
 -M:    Michael Cyr <mikecyr@linux.vnet.ibm.com>
 +M:    Michael Cyr <mikecyr@linux.ibm.com>
  L:    linux-scsi@vger.kernel.org
  L:    target-devel@vger.kernel.org
  S:    Supported
  F:    drivers/scsi/ibmvscsi_tgt/
  
  IBM Power VMX Cryptographic instructions
 -M:    Leonidas S. Barbosa <leosilva@linux.vnet.ibm.com>
 -M:    Paulo Flabiano Smorigo <pfsmorigo@linux.vnet.ibm.com>
 +M:    Breno Leitão <leitao@debian.org>
 +M:    Nayna Jain <nayna@linux.ibm.com>
 +M:    Paulo Flabiano Smorigo <pfsmorigo@gmail.com>
  L:    linux-crypto@vger.kernel.org
  S:    Supported
  F:    drivers/crypto/vmx/Makefile
@@@ -7531,7 -7420,7 +7531,7 @@@ S:      Maintaine
  L:    linux-crypto@vger.kernel.org
  
  INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
 -M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 +M:    Mimi Zohar <zohar@linux.ibm.com>
  M:    Dmitry Kasatkin <dmitry.kasatkin@gmail.com>
  L:    linux-integrity@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git
@@@ -7591,18 -7480,18 +7591,18 @@@ Q:   http://patchwork.ozlabs.org/project/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-queue.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git
  S:    Supported
 -F:    Documentation/networking/e100.rst
 -F:    Documentation/networking/e1000.rst
 -F:    Documentation/networking/e1000e.rst
 -F:    Documentation/networking/fm10k.rst
 -F:    Documentation/networking/igb.rst
 -F:    Documentation/networking/igbvf.rst
 -F:    Documentation/networking/ixgb.rst
 -F:    Documentation/networking/ixgbe.rst
 -F:    Documentation/networking/ixgbevf.rst
 -F:    Documentation/networking/i40e.rst
 -F:    Documentation/networking/iavf.rst
 -F:    Documentation/networking/ice.rst
 +F:    Documentation/networking/device_drivers/intel/e100.rst
 +F:    Documentation/networking/device_drivers/intel/e1000.rst
 +F:    Documentation/networking/device_drivers/intel/e1000e.rst
 +F:    Documentation/networking/device_drivers/intel/fm10k.rst
 +F:    Documentation/networking/device_drivers/intel/igb.rst
 +F:    Documentation/networking/device_drivers/intel/igbvf.rst
 +F:    Documentation/networking/device_drivers/intel/ixgb.rst
 +F:    Documentation/networking/device_drivers/intel/ixgbe.rst
 +F:    Documentation/networking/device_drivers/intel/ixgbevf.rst
 +F:    Documentation/networking/device_drivers/intel/i40e.rst
 +F:    Documentation/networking/device_drivers/intel/iavf.rst
 +F:    Documentation/networking/device_drivers/intel/ice.rst
  F:    drivers/net/ethernet/intel/
  F:    drivers/net/ethernet/intel/*/
  F:    include/linux/avf/virtchnl.h
@@@ -7692,14 -7581,6 +7692,14 @@@ S:    Maintaine
  F:    drivers/media/pci/intel/ipu3/
  F:    Documentation/media/uapi/v4l/pixfmt-srggb10-ipu3.rst
  
 +INTEL IPU3 CSI-2 IMGU DRIVER
 +M:    Sakari Ailus <sakari.ailus@linux.intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/staging/media/ipu3/
 +F:    Documentation/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst
 +F:    Documentation/media/v4l-drivers/ipu3.rst
 +
  INTEL IXP4XX QMGR, NPE, ETHERNET and HSS SUPPORT
  M:    Krzysztof Halasa <khalasa@piap.pl>
  S:    Maintained
@@@ -7784,8 -7665,8 +7784,8 @@@ INTEL PRO/WIRELESS 2100, 2200BG, 2915AB
  M:    Stanislav Yakovlev <stas.yakovlev@gmail.com>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
 -F:    Documentation/networking/README.ipw2100
 -F:    Documentation/networking/README.ipw2200
 +F:    Documentation/networking/device_drivers/intel/ipw2100.txt
 +F:    Documentation/networking/device_drivers/intel/ipw2200.txt
  F:    drivers/net/wireless/intel/ipw2x00/
  
  INTEL PSTATE DRIVER
@@@ -7890,18 -7771,6 +7890,18 @@@ L:    linux-serial@vger.kernel.or
  S:    Maintained
  F:    drivers/tty/serial/ioc3_serial.c
  
 +IOMAP FILESYSTEM LIBRARY
 +M:    Christoph Hellwig <hch@infradead.org>
 +M:    Darrick J. Wong <darrick.wong@oracle.com>
 +M:    linux-xfs@vger.kernel.org
 +M:    linux-fsdevel@vger.kernel.org
 +L:    linux-xfs@vger.kernel.org
 +L:    linux-fsdevel@vger.kernel.org
 +T:    git git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git
 +S:    Supported
 +F:    fs/iomap.c
 +F:    include/linux/iomap.h
 +
  IOMMU DRIVERS
  M:    Joerg Roedel <joro@8bytes.org>
  L:    iommu@lists.linux-foundation.org
@@@ -8057,6 -7926,13 +8057,6 @@@ F:     include/linux/isdn
  F:    include/uapi/linux/isdn.h
  F:    include/uapi/linux/isdn/
  
 -ISDN SUBSYSTEM (Eicon active card driver)
 -M:    Armin Schindler <mac@melware.de>
 -L:    isdn4linux@listserv.isdn4linux.de (subscribers-only)
 -W:    http://www.melware.de
 -S:    Maintained
 -F:    drivers/isdn/hardware/eicon/
 -
  IT87 HARDWARE MONITORING DRIVER
  M:    Jean Delvare <jdelvare@suse.com>
  L:    linux-hwmon@vger.kernel.org
@@@ -8145,8 -8021,9 +8145,8 @@@ S:      Maintaine
  F:    drivers/media/platform/rcar_jpu.c
  
  JSM Neo PCI based serial card
 -M:    Guilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
  L:    linux-serial@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  F:    drivers/tty/serial/jsm/
  
  K10TEMP HARDWARE MONITORING DRIVER
@@@ -8352,7 -8229,6 +8352,7 @@@ W:      http://www.linux-kvm.or
  T:    git git://git.kernel.org/pub/scm/virt/kvm/kvm.git
  S:    Supported
  F:    arch/x86/kvm/
 +F:    arch/x86/kvm/*/
  F:    arch/x86/include/uapi/asm/kvm*
  F:    arch/x86/include/asm/kvm*
  F:    arch/x86/include/asm/pvclock-abi.h
@@@ -8377,7 -8253,7 +8377,7 @@@ F:      include/uapi/linux/kexec.
  F:    kernel/kexec*
  
  KEYS-ENCRYPTED
 -M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 +M:    Mimi Zohar <zohar@linux.ibm.com>
  L:    linux-integrity@vger.kernel.org
  L:    keyrings@vger.kernel.org
  S:    Supported
@@@ -8386,9 -8262,9 +8386,9 @@@ F:      include/keys/encrypted-type.
  F:    security/keys/encrypted-keys/
  
  KEYS-TRUSTED
 -M:    James Bottomley <jejb@linux.vnet.ibm.com>
 +M:    James Bottomley <jejb@linux.ibm.com>
  M:      Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
 -M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 +M:    Mimi Zohar <zohar@linuxibm.com>
  L:    linux-integrity@vger.kernel.org
  L:    keyrings@vger.kernel.org
  S:    Supported
@@@ -8441,7 -8317,7 +8441,7 @@@ F:      lib/test_kmod.
  F:    tools/testing/selftests/kmod/
  
  KPROBES
 -M:    Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
 +M:    Naveen N. Rao <naveen.n.rao@linux.ibm.com>
  M:    Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
  M:    "David S. Miller" <davem@davemloft.net>
  M:    Masami Hiramatsu <mhiramat@kernel.org>
@@@ -8797,7 -8673,7 +8797,7 @@@ 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>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  R:    Akira Yokosawa <akiyks@gmail.com>
  R:    Daniel Lustig <dlustig@nvidia.com>
  L:    linux-kernel@vger.kernel.org
@@@ -9055,7 -8931,7 +9055,7 @@@ F:      arch/mips/boot/dts/img/pistachio_mar
  
  MARVELL 88E6XXX ETHERNET SWITCH FABRIC DRIVER
  M:    Andrew Lunn <andrew@lunn.ch>
 -M:    Vivien Didelot <vivien.didelot@savoirfairelinux.com>
 +M:    Vivien Didelot <vivien.didelot@gmail.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/dsa/mv88e6xxx/
@@@ -9072,7 -8948,7 +9072,7 @@@ F:      include/uapi/drm/armada_drm.
  F:    Documentation/devicetree/bindings/display/armada/
  
  MARVELL CRYPTO DRIVER
 -M:    Boris Brezillon <boris.brezillon@bootlin.com>
 +M:    Boris Brezillon <bbrezillon@kernel.org>
  M:    Arnaud Ebalard <arno@natisbad.org>
  F:    drivers/crypto/marvell/
  S:    Maintained
@@@ -9109,6 -8985,11 +9109,11 @@@ L:    netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/phy/marvell10g.c
  
+ MARVELL MVEBU THERMAL DRIVER
+ M:    Miquel Raynal <miquel.raynal@bootlin.com>
+ S:    Maintained
+ F:    drivers/thermal/armada_thermal.c
  MARVELL MVNETA ETHERNET DRIVER
  M:    Thomas Petazzoni <thomas.petazzoni@bootlin.com>
  L:    netdev@vger.kernel.org
@@@ -9560,13 -9441,6 +9565,13 @@@ F:    drivers/media/platform/mtk-vpu
  F:    Documentation/devicetree/bindings/media/mediatek-vcodec.txt
  F:    Documentation/devicetree/bindings/media/mediatek-vpu.txt
  
 +MEDIATEK MT76 WIRELESS LAN DRIVER
 +M:    Felix Fietkau <nbd@nbd.name>
 +M:    Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
 +L:    linux-wireless@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/wireless/mediatek/mt76/
 +
  MEDIATEK MT7601U WIRELESS LAN DRIVER
  M:    Jakub Kicinski <kubakici@wp.pl>
  L:    linux-wireless@vger.kernel.org
@@@ -9762,7 -9636,7 +9767,7 @@@ F:      drivers/platform/x86/mlx-platform.
  
  MEMBARRIER SUPPORT
  M:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
  F:    kernel/sched/membarrier.c
@@@ -9783,7 -9657,7 +9788,7 @@@ F:      mm
  MEMORY TECHNOLOGY DEVICES (MTD)
  M:    David Woodhouse <dwmw2@infradead.org>
  M:    Brian Norris <computersforpeace@gmail.com>
 -M:    Boris Brezillon <boris.brezillon@bootlin.com>
 +M:    Boris Brezillon <bbrezillon@kernel.org>
  M:    Marek Vasut <marek.vasut@gmail.com>
  M:    Richard Weinberger <richard@nod.at>
  L:    linux-mtd@lists.infradead.org
@@@ -9884,14 -9758,14 +9889,14 @@@ L:   linux-media@vger.kernel.or
  S:    Supported
  F:    drivers/media/platform/atmel/atmel-isc.c
  F:    drivers/media/platform/atmel/atmel-isc-regs.h
 -F:    devicetree/bindings/media/atmel-isc.txt
 +F:    Documentation/devicetree/bindings/media/atmel-isc.txt
  
  MICROCHIP ISI DRIVER
  M:    Eugen Hristev <eugen.hristev@microchip.com>
  L:    linux-media@vger.kernel.org
  S:    Supported
  F:    drivers/media/platform/atmel/atmel-isi.c
 -F:    include/media/atmel-isi.h
 +F:    drivers/media/platform/atmel/atmel-isi.h
  
  MICROCHIP AT91 USART MFD DRIVER
  M:    Radu Pirea <radu_nicolae.pirea@upb.ro>
@@@ -9937,13 -9811,6 +9942,13 @@@ M:    Ludovic Desroches <ludovic.desroches
  S:    Maintained
  F:    drivers/mmc/host/atmel-mci.c
  
 +MICROCHIP MCP16502 PMIC DRIVER
 +M:    Andrei Stefanescu <andrei.stefanescu@microchip.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/regulator/mcp16502-regulator.txt
 +F:    drivers/regulator/mcp16502.c
 +
  MICROCHIP MCP3911 ADC DRIVER
  M:    Marcus Folkesson <marcus.folkesson@gmail.com>
  M:    Kent Gustavsson <kent@minoris.se>
@@@ -9981,12 -9848,6 +9986,12 @@@ M:    Nicolas Ferre <nicolas.ferre@microch
  S:    Supported
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
  
 +MICROCHIP SAMA5D2-COMPATIBLE PIOBU GPIO
 +M:    Andrei Stefanescu <andrei.stefanescu@microchip.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    linux-gpio@vger.kernel.org
 +F:    drivers/gpio/gpio-sama5d2-piobu.c
 +
  MICROCHIP SPI DRIVER
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  S:    Supported
@@@ -10028,9 -9889,8 +10033,9 @@@ F:    drivers/dma/at_xdmac.
  
  MICROSEMI MIPS SOCS
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
 +M:    Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
  L:    linux-mips@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    arch/mips/generic/board-ocelot.c
  F:    arch/mips/configs/generic/board-ocelot.config
  F:    arch/mips/boot/dts/mscc/
@@@ -10050,7 -9910,6 +10055,7 @@@ F:    Documentation/scsi/smartpqi.tx
  
  MICROSEMI ETHERNET SWITCH DRIVER
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
 +M:    Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/mscc/
@@@ -10144,9 -10003,12 +10149,9 @@@ S:  Odd Fixe
  F:    drivers/media/radio/radio-miropcm20*
  
  MMP SUPPORT
 -M:    Eric Miao <eric.y.miao@gmail.com>
 -M:    Haojian Zhuang <haojian.zhuang@gmail.com>
 +R:    Lubomir Rintel <lkundrak@v3.sk>
  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
 -S:    Maintained
 +S:    Odd Fixes
  F:    arch/arm/boot/dts/mmp*
  F:    arch/arm/mach-mmp/
  
@@@ -10385,7 -10247,7 +10390,7 @@@ S:   Supporte
  F:    drivers/net/ethernet/myricom/myri10ge/
  
  NAND FLASH SUBSYSTEM
 -M:    Boris Brezillon <boris.brezillon@bootlin.com>
 +M:    Boris Brezillon <bbrezillon@kernel.org>
  M:    Miquel Raynal <miquel.raynal@bootlin.com>
  R:    Richard Weinberger <richard@nod.at>
  L:    linux-mtd@lists.infradead.org
@@@ -10462,8 -10324,8 +10467,8 @@@ NETERION 10GbE DRIVERS (s2io/vxge
  M:    Jon Mason <jdmason@kudzu.us>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/s2io.txt
 -F:    Documentation/networking/vxge.txt
 +F:    Documentation/networking/device_drivers/neterion/s2io.txt
 +F:    Documentation/networking/device_drivers/neterion/vxge.txt
  F:    drivers/net/ethernet/neterion/
  
  NETFILTER
@@@ -10552,7 -10414,7 +10557,7 @@@ F:   drivers/net/wireless
  
  NETWORKING [DSA]
  M:    Andrew Lunn <andrew@lunn.ch>
 -M:    Vivien Didelot <vivien.didelot@savoirfairelinux.com>
 +M:    Vivien Didelot <vivien.didelot@gmail.com>
  M:    Florian Fainelli <f.fainelli@gmail.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/dsa/
@@@ -10905,14 -10767,6 +10910,14 @@@ L: linux-nfc@lists.01.org (moderated fo
  S:    Supported
  F:    drivers/nfc/nxp-nci
  
 +OBJAGG
 +M:    Jiri Pirko <jiri@mellanox.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    lib/objagg.c
 +F:    lib/test_objagg.c
 +F:    include/linux/objagg.h
 +
  OBJTOOL
  M:    Josh Poimboeuf <jpoimboe@redhat.com>
  M:    Peter Zijlstra <peterz@infradead.org>
@@@ -10920,7 -10774,7 +10925,7 @@@ S:   Supporte
  F:    tools/objtool/
  
  OCXL (Open Coherent Accelerator Processor Interface OpenCAPI) DRIVER
 -M:    Frederic Barrat <fbarrat@linux.vnet.ibm.com>
 +M:    Frederic Barrat <fbarrat@linux.ibm.com>
  M:    Andrew Donnellan <andrew.donnellan@au1.ibm.com>
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Supported
@@@ -10937,10 -10791,7 +10942,10 @@@ M: Jarkko Nikula <jarkko.nikula@bitmer.
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  L:    linux-omap@vger.kernel.org
  S:    Maintained
 -F:    sound/soc/omap/
 +F:    sound/soc/ti/omap*
 +F:    sound/soc/ti/rx51.c
 +F:    sound/soc/ti/n810.c
 +F:    sound/soc/ti/sdma-pcm.*
  
  OMAP CLOCK FRAMEWORK SUPPORT
  M:    Paul Walmsley <paul@pwsan.com>
@@@ -11948,12 -11799,18 +11953,12 @@@ F:        Documentation/driver-api/pinctl.rs
  F:    drivers/pinctrl/
  F:    include/linux/pinctrl/
  
 -PIN CONTROLLER - ATMEL AT91
 -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.*
 -
 -PIN CONTROLLER - ATMEL AT91 PIO4
 +PIN CONTROLLER - MICROCHIP AT91
  M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-gpio@vger.kernel.org
  S:    Supported
 -F:    drivers/pinctrl/pinctrl-at91-pio4.*
 +F:    drivers/pinctrl/pinctrl-at91*
  
  PIN CONTROLLER - FREESCALE
  M:    Dong Aisheng <aisheng.dong@nxp.com>
@@@ -11989,11 -11846,11 +11994,11 @@@ F:        Documentation/devicetree/bindings/pi
  F:    drivers/pinctrl/qcom/
  
  PIN CONTROLLER - RENESAS
 -M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  M:    Geert Uytterhoeven <geert+renesas@glider.be>
  L:    linux-renesas-soc@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git sh-pfc
  S:    Maintained
 +F:    drivers/pinctrl/pinctrl-rz*
  F:    drivers/pinctrl/sh-pfc/
  
  PIN CONTROLLER - SAMSUNG
@@@ -12098,13 -11955,6 +12103,13 @@@ M: "Rafael J. Wysocki" <rafael.j.wysock
  S:    Maintained
  F:    drivers/pnp/
  
 +PNI RM3100 IIO DRIVER
 +M:    Song Qiang <songqiang1304521@gmail.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Maintained
 +F:    drivers/iio/magnetometer/rm3100*
 +F:    Documentation/devicetree/bindings/iio/magnetometer/pni,rm3100.txt
 +
  POSIX CLOCKS and TIMERS
  M:    Thomas Gleixner <tglx@linutronix.de>
  L:    linux-kernel@vger.kernel.org
@@@ -12477,7 -12327,7 +12482,7 @@@ QLOGIC QLA3XXX NETWORK DRIVE
  M:    Dept-GELinuxNICDev@cavium.com
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/LICENSE.qla3xxx
 +F:    Documentation/networking/device_drivers/qlogic/LICENSE.qla3xxx
  F:    drivers/net/ethernet/qlogic/qla3xxx.*
  
  QLOGIC QLA4XXX iSCSI DRIVER
@@@ -12529,7 -12379,7 +12534,7 @@@ L:   linux-kernel@vger.kernel.or
  S:    Maintained
  F:    drivers/bus/fsl-mc/
  F:    Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt
 -F:    Documentation/networking/dpaa2/overview.rst
 +F:    Documentation/networking/device_drivers/freescale/dpaa2/overview.rst
  
  QT1010 MEDIA DRIVER
  M:    Antti Palosaari <crope@iki.fi>
@@@ -12557,7 -12407,7 +12562,7 @@@ S:   Supporte
  F:    drivers/net/wireless/ath/ath9k/
  
  QUALCOMM CAMERA SUBSYSTEM DRIVER
 -M:    Todor Tomov <todor.tomov@linaro.org>
 +M:    Todor Tomov <todor.too@gmail.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/qcom,camss.txt
@@@ -12607,13 -12457,6 +12612,13 @@@ L: linux-arm-msm@vger.kernel.or
  S:    Maintained
  F:    drivers/iommu/qcom_iommu.c
  
 +QUALCOMM TSENS THERMAL DRIVER
 +M:    Amit Kucheria <amit.kucheria@linaro.org>
 +L:    linux-pm@vger.kernel.org
 +L:    linux-arm-msm@vger.kernel.org
 +S:    Maintained
 +F:    drivers/thermal/qcom/
 +
  QUALCOMM VENUS VIDEO ACCELERATOR DRIVER
  M:    Stanimir Varbanov <stanimir.varbanov@linaro.org>
  L:    linux-media@vger.kernel.org
@@@ -12742,7 -12585,7 +12747,7 @@@ S:   Orpha
  F:    drivers/net/wireless/ray*
  
  RCUTORTURE TEST FRAMEWORK
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  M:    Josh Triplett <josh@joshtriplett.org>
  R:    Steven Rostedt <rostedt@goodmis.org>
  R:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
@@@ -12784,17 -12627,16 +12789,17 @@@ M:        Fenghua Yu <fenghua.yu@intel.com
  M:    Reinette Chatre <reinette.chatre@intel.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
 -F:    arch/x86/kernel/cpu/intel_rdt*
 -F:    arch/x86/include/asm/intel_rdt_sched.h
 -F:    Documentation/x86/intel_rdt*
 +F:    arch/x86/kernel/cpu/resctrl/
 +F:    arch/x86/include/asm/resctrl_sched.h
 +F:    Documentation/x86/resctrl*
  
  READ-COPY UPDATE (RCU)
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  M:    Josh Triplett <josh@joshtriplett.org>
  R:    Steven Rostedt <rostedt@goodmis.org>
  R:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  R:    Lai Jiangshan <jiangshanlai@gmail.com>
 +R:    Joel Fernandes <joel@joelfernandes.org>
  L:    linux-kernel@vger.kernel.org
  W:    http://www.rdrop.com/users/paulmck/RCU/
  S:    Supported
@@@ -12897,8 -12739,7 +12902,8 @@@ RENESAS R-CAR GYROADC DRIVE
  M:    Marek Vasut <marek.vasut@gmail.com>
  L:    linux-iio@vger.kernel.org
  S:    Supported
 -F:    drivers/iio/adc/rcar_gyro_adc.c
 +F:    Documentation/devicetree/bindings/iio/adc/renesas,gyroadc.txt
 +F:    drivers/iio/adc/rcar-gyroadc.c
  
  RENESAS R-CAR I2C DRIVERS
  M:    Wolfram Sang <wsa+renesas@sang-engineering.com>
@@@ -12931,7 -12772,7 +12936,7 @@@ F:   include/linux/reset-controller.
  RESTARTABLE SEQUENCES SUPPORT
  M:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  M:    Peter Zijlstra <peterz@infradead.org>
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  M:    Boqun Feng <boqun.feng@gmail.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
@@@ -12999,13 -12840,6 +13004,13 @@@ S: Maintaine
  F:    drivers/media/platform/rockchip/rga/
  F:    Documentation/devicetree/bindings/media/rockchip-rga.txt
  
 +ROCKCHIP VPU CODEC DRIVER
 +M:    Ezequiel Garcia <ezequiel@collabora.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/staging/media/platform/rockchip/vpu/
 +F:    Documentation/devicetree/bindings/media/rockchip-vpu.txt
 +
  ROCKER DRIVER
  M:    Jiri Pirko <jiri@resnulli.us>
  L:    netdev@vger.kernel.org
@@@ -13190,9 -13024,7 +13195,9 @@@ F:   drivers/pci/hotplug/s390_pci_hpc.
  
  S390 VFIO-CCW DRIVER
  M:    Cornelia Huck <cohuck@redhat.com>
 -M:    Halil Pasic <pasic@linux.ibm.com>
 +M:    Farhan Ali <alifm@linux.ibm.com>
 +M:    Eric Farman <farman@linux.ibm.com>
 +R:    Halil Pasic <pasic@linux.ibm.com>
  L:    linux-s390@vger.kernel.org
  L:    kvm@vger.kernel.org
  S:    Supported
@@@ -13257,7 -13089,7 +13262,7 @@@ T:   git git://linuxtv.org/media_tree.gi
  S:    Maintained
  F:    drivers/media/common/saa7146/
  F:    drivers/media/pci/saa7146/
 -F:    include/media/saa7146*
 +F:    include/media/drv-intf/saa7146*
  
  SAMSUNG AUDIO (ASoC) DRIVERS
  M:    Krzysztof Kozlowski <krzk@kernel.org>
@@@ -13465,7 -13297,7 +13470,7 @@@ F:   drivers/scsi/sg.
  F:    include/scsi/sg.h
  
  SCSI SUBSYSTEM
 -M:    "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
 +M:    "James E.J. Bottomley" <jejb@linux.ibm.com>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git
  M:    "Martin K. Petersen" <martin.petersen@oracle.com>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git
@@@ -13523,12 -13355,6 +13528,12 @@@ L: sdricohcs-devel@lists.sourceforge.ne
  S:    Maintained
  F:    drivers/mmc/host/sdricoh_cs.c
  
 +SECO BOARDS CEC DRIVER
 +M:    Ettore Chimenti <ek5.chimenti@gmail.com>
 +S:    Maintained
 +F:    drivers/media/platform/seco-cec/seco-cec.c
 +F:    drivers/media/platform/seco-cec/seco-cec.h
 +
  SECURE COMPUTING
  M:    Kees Cook <keescook@chromium.org>
  R:    Andy Lutomirski <luto@amacapital.net>
@@@ -13906,7 -13732,7 +13911,7 @@@ F:   mm/sl?b
  
  SLEEPABLE READ-COPY UPDATE (SRCU)
  M:    Lai Jiangshan <jiangshanlai@gmail.com>
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  M:    Josh Triplett <josh@joshtriplett.org>
  R:    Steven Rostedt <rostedt@goodmis.org>
  R:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
@@@ -14062,13 -13888,6 +14067,13 @@@ F: drivers/md/raid
  F:    include/linux/raid/
  F:    include/uapi/linux/raid/
  
 +SOCIONEXT (SNI) AVE NETWORK DRIVER
 +M:    Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/ethernet/socionext/sni_ave.c
 +F:    Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt
 +
  SOCIONEXT (SNI) NETSEC NETWORK DRIVER
  M:    Jassi Brar <jaswinder.singh@linaro.org>
  L:    netdev@vger.kernel.org
@@@ -14102,14 -13921,6 +14107,14 @@@ S: Maintaine
  F:    drivers/ssb/
  F:    include/linux/ssb/
  
 +SONY IMX214 SENSOR DRIVER
 +M:    Ricardo Ribalda <ricardo.ribalda@gmail.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/imx214.c
 +F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.txt
 +
  SONY IMX258 SENSOR DRIVER
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  L:    linux-media@vger.kernel.org
@@@ -14301,7 -14112,7 +14306,7 @@@ SPIDERNET NETWORK DRIVER for CEL
  M:    Ishizaki Kou <kou.ishizaki@toshiba.co.jp>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/spider_net.txt
 +F:    Documentation/networking/device_drivers/toshiba/spider_net.txt
  F:    drivers/net/ethernet/toshiba/spider_net*
  
  SPMI SUBSYSTEM
@@@ -14335,14 -14146,6 +14340,14 @@@ M: Jan-Benedict Glaw <jbglaw@lug-owl.de
  S:    Maintained
  F:    arch/alpha/kernel/srm_env.c
  
 +ST LSM6DSx IMU IIO DRIVER
 +M:    Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
 +L:    linux-iio@vger.kernel.org
 +W:    http://www.st.com/
 +S:    Maintained
 +F:    drivers/iio/imu/st_lsm6dsx/
 +F:    Documentation/devicetree/bindings/iio/imu/st_lsm6dsx.txt
 +
  ST STM32 I2C/SMBUS DRIVER
  M:    Pierre-Yves MORDRET <pierre-yves.mordret@st.com>
  L:    linux-i2c@vger.kernel.org
@@@ -14428,8 -14231,8 +14433,8 @@@ S:   Odd Fixe
  F:    drivers/staging/vt665?/
  
  STAGING - WILC1000 WIFI DRIVER
 -M:    Aditya Shankar <aditya.shankar@microchip.com>
 -M:    Ganesh Krishna <ganesh.krishna@microchip.com>
 +M:    Adham Abozaeid <adham.abozaeid@microchip.com>
 +M:    Ajay Singh <ajay.kathat@microchip.com>
  L:    linux-wireless@vger.kernel.org
  S:    Supported
  F:    drivers/staging/wilc1000/
@@@ -14659,11 -14462,9 +14664,11 @@@ SYNOPSYS DESIGNWARE DMAC DRIVE
  M:    Viresh Kumar <vireshk@kernel.org>
  R:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  S:    Maintained
 +F:    Documentation/devicetree/bindings/dma/snps-dma.txt
 +F:    drivers/dma/dw/
 +F:    include/dt-bindings/dma/dw-dmac.h
  F:    include/linux/dma/dw.h
  F:    include/linux/platform_data/dma-dw.h
 -F:    drivers/dma/dw/
  
  SYNOPSYS DESIGNWARE ENTERPRISE ETHERNET DRIVER
  M:    Jose Abreu <Jose.Abreu@synopsys.com>
@@@ -15027,12 -14828,6 +15032,12 @@@ F: Documentation/devicetree/bindings/cl
  F:    drivers/clk/keystone/sci-clk.c
  F:    drivers/reset/reset-ti-sci.c
  
 +Texas Instruments ASoC drivers
 +M:    Peter Ujfalusi <peter.ujfalusi@ti.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    sound/soc/ti/
 +
  THANKO'S RAREMONO AM/FM/SW RADIO RECEIVER USB DRIVER
  M:    Hans Verkuil <hverkuil@xs4all.nl>
  L:    linux-media@vger.kernel.org
@@@ -15307,7 -15102,7 +15312,7 @@@ M:   Samuel Chessman <chessman@tux.org
  L:    tlan-devel@lists.sourceforge.net (subscribers-only)
  W:    http://sourceforge.net/projects/tlan/
  S:    Maintained
 -F:    Documentation/networking/tlan.txt
 +F:    Documentation/networking/device_drivers/ti/tlan.txt
  F:    drivers/net/ethernet/ti/tlan.*
  
  TM6000 VIDEO4LINUX DRIVER
@@@ -15361,7 -15156,7 +15366,7 @@@ F:   drivers/platform/x86/topstar-laptop.
  
  TORTURE-TEST MODULES
  M:    Davidlohr Bueso <dave@stgolabs.net>
 -M:    "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
  M:    Josh Triplett <josh@joshtriplett.org>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
@@@ -15979,16 -15774,15 +15984,16 @@@ F:        drivers/media/usb/zr364xx
  USER-MODE LINUX (UML)
  M:    Jeff Dike <jdike@addtoit.com>
  M:    Richard Weinberger <richard@nod.at>
 +M:    Anton Ivanov <anton.ivanov@cambridgegreys.com>
  L:    linux-um@lists.infradead.org
  W:    http://user-mode-linux.sourceforge.net
 +Q:    https://patchwork.ozlabs.org/project/linux-um/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml.git
  S:    Maintained
  F:    Documentation/virtual/uml/
  F:    arch/um/
  F:    arch/x86/um/
  F:    fs/hostfs/
 -F:    fs/hppfs/
  
  USERSPACE COPYIN/COPYOUT (UIOVEC)
  M:    Alexander Viro <viro@zeniv.linux.org.uk>
@@@ -16281,7 -16075,7 +16286,7 @@@ F:   drivers/vme
  F:    include/linux/vme*
  
  VMWARE BALLOON DRIVER
 -M:    Xavier Deguillard <xdeguillard@vmware.com>
 +M:    Julien Freche <jfreche@vmware.com>
  M:    Nadav Amit <namit@vmware.com>
  M:    "VMware, Inc." <pv-drivers@vmware.com>
  L:    linux-kernel@vger.kernel.org
@@@ -16621,12 -16415,6 +16626,12 @@@ F: include/linux/idr.
  F:    include/linux/xarray.h
  F:    tools/testing/radix-tree
  
 +XBOX DVD IR REMOTE
 +M:    Benjamin Valentin <benpicco@googlemail.com>
 +S:    Maintained
 +F:    drivers/media/rc/xbox_remote.c
 +F:    drivers/media/rc/keymaps/rc-xbox-dvd.c
 +
  XC2028/3028 TUNER DRIVER
  M:    Mauro Carvalho Chehab <mchehab@kernel.org>
  L:    linux-media@vger.kernel.org
@@@ -16673,7 -16461,6 +16678,7 @@@ L:   xen-devel@lists.xenproject.org (mode
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git
  S:    Supported
  F:    arch/x86/xen/
 +F:    arch/x86/platform/pvh/
  F:    drivers/*/xen-*front.c
  F:    drivers/xen/
  F:    arch/x86/include/asm/xen/
diff --combined drivers/thermal/Kconfig
index 5fbfabbf627b8f94344b7804abd805b1cb5227e4,93bd3bbefb9a90d28db7d7aba6997f1c2db4993e..fdc48a1655e744f4c537334498556e2327136868
@@@ -212,7 -212,7 +212,7 @@@ config HISI_THERMA
  
  config IMX_THERMAL
        tristate "Temperature sensor driver for Freescale i.MX SoCs"
-       depends on (ARCH_MXC && CPU_THERMAL) || COMPILE_TEST
+       depends on ARCH_MXC || COMPILE_TEST
        depends on NVMEM || !NVMEM
        depends on MFD_SYSCON
        depends on OF
@@@ -383,7 -383,7 +383,7 @@@ config INTEL_QUARK_DTS_THERMA
          underlying BIOS/Firmware.
  
  menu "ACPI INT340X thermal drivers"
 -source drivers/thermal/int340x_thermal/Kconfig
 +source "drivers/thermal/int340x_thermal/Kconfig"
  endmenu
  
  config INTEL_BXT_PMIC_THERMAL
index d7105d01859ab086de87482535019408ae15c818,df3054b0ae6b6d122fd48e0c7e79bb639d82fe7b..53129de59dd92b466937fa2ce767bd4dab16a039
  #include <linux/iopoll.h>
  #include <linux/mfd/syscon.h>
  #include <linux/regmap.h>
+ #include <linux/interrupt.h>
+ #include "thermal_core.h"
+ #define TO_MCELSIUS(c)                        ((c) * 1000)
  
  /* Thermal Manager Control and Status Register */
  #define PMU_TDC0_SW_RST_MASK          (0x1 << 1)
  #define CONTROL1_TSEN_AVG_MASK                0x7
  #define CONTROL1_EXT_TSEN_SW_RESET    BIT(7)
  #define CONTROL1_EXT_TSEN_HW_RESETn   BIT(8)
+ #define CONTROL1_TSEN_INT_EN          BIT(25)
+ #define CONTROL1_TSEN_SELECT_OFF      21
+ #define CONTROL1_TSEN_SELECT_MASK     0x3
  
  #define STATUS_POLL_PERIOD_US         1000
  #define STATUS_POLL_TIMEOUT_US                100000
+ #define OVERHEAT_INT_POLL_DELAY_MS    1000
  
  struct armada_thermal_data;
  
@@@ -75,7 -84,11 +84,11 @@@ struct armada_thermal_priv 
        /* serialize temperature reads/updates */
        struct mutex update_lock;
        struct armada_thermal_data *data;
+       struct thermal_zone_device *overheat_sensor;
+       int interrupt_source;
        int current_channel;
+       long current_threshold;
+       long current_hysteresis;
  };
  
  struct armada_thermal_data {
        /* Register shift and mask to access the sensor temperature */
        unsigned int temp_shift;
        unsigned int temp_mask;
+       unsigned int thresh_shift;
+       unsigned int hyst_shift;
+       unsigned int hyst_mask;
        u32 is_valid_bit;
  
        /* Syscon access */
        unsigned int syscon_control0_off;
        unsigned int syscon_control1_off;
        unsigned int syscon_status_off;
+       unsigned int dfx_irq_cause_off;
+       unsigned int dfx_irq_mask_off;
+       unsigned int dfx_overheat_irq;
+       unsigned int dfx_server_irq_mask_off;
+       unsigned int dfx_server_irq_en;
  
        /* One sensor is in the thermal IC, the others are in the CPUs if any */
        unsigned int cpu_nr;
@@@ -272,6 -293,41 +293,41 @@@ static bool armada_is_valid(struct arma
        return reg & priv->data->is_valid_bit;
  }
  
+ static void armada_enable_overheat_interrupt(struct armada_thermal_priv *priv)
+ {
+       struct armada_thermal_data *data = priv->data;
+       u32 reg;
+       /* Clear DFX temperature IRQ cause */
+       regmap_read(priv->syscon, data->dfx_irq_cause_off, &reg);
+       /* Enable DFX Temperature IRQ */
+       regmap_read(priv->syscon, data->dfx_irq_mask_off, &reg);
+       reg |= data->dfx_overheat_irq;
+       regmap_write(priv->syscon, data->dfx_irq_mask_off, reg);
+       /* Enable DFX server IRQ */
+       regmap_read(priv->syscon, data->dfx_server_irq_mask_off, &reg);
+       reg |= data->dfx_server_irq_en;
+       regmap_write(priv->syscon, data->dfx_server_irq_mask_off, reg);
+       /* Enable overheat interrupt */
+       regmap_read(priv->syscon, data->syscon_control1_off, &reg);
+       reg |= CONTROL1_TSEN_INT_EN;
+       regmap_write(priv->syscon, data->syscon_control1_off, reg);
+ }
+ static void __maybe_unused
+ armada_disable_overheat_interrupt(struct armada_thermal_priv *priv)
+ {
+       struct armada_thermal_data *data = priv->data;
+       u32 reg;
+       regmap_read(priv->syscon, data->syscon_control1_off, &reg);
+       reg &= ~CONTROL1_TSEN_INT_EN;
+       regmap_write(priv->syscon, data->syscon_control1_off, reg);
+ }
  /* There is currently no board with more than one sensor per channel */
  static int armada_select_channel(struct armada_thermal_priv *priv, int channel)
  {
@@@ -357,7 -413,7 +413,7 @@@ static int armada_get_temp_legacy(struc
        int ret;
  
        /* Valid check */
 -      if (armada_is_valid(priv)) {
 +      if (!armada_is_valid(priv)) {
                dev_err(priv->dev,
                        "Temperature sensor reading not valid\n");
                return -EIO;
@@@ -388,6 -444,14 +444,14 @@@ static int armada_get_temp(void *_senso
  
        /* Do the actual reading */
        ret = armada_read_sensor(priv, temp);
+       if (ret)
+               goto unlock_mutex;
+       /*
+        * Select back the interrupt source channel from which a potential
+        * critical trip point has been set.
+        */
+       ret = armada_select_channel(priv, priv->interrupt_source);
  
  unlock_mutex:
        mutex_unlock(&priv->update_lock);
        return ret;
  }
  
 -static struct thermal_zone_of_device_ops of_ops = {
 +static const struct thermal_zone_of_device_ops of_ops = {
        .get_temp = armada_get_temp,
  };
  
+ static unsigned int armada_mc_to_reg_temp(struct armada_thermal_data *data,
+                                         unsigned int temp_mc)
+ {
+       s64 b = data->coef_b;
+       s64 m = data->coef_m;
+       s64 div = data->coef_div;
+       unsigned int sample;
+       if (data->inverted)
+               sample = div_s64(((temp_mc * div) + b), m);
+       else
+               sample = div_s64((b - (temp_mc * div)), m);
+       return sample & data->temp_mask;
+ }
+ /*
+  * The documentation states:
+  * high/low watermark = threshold +/- 0.4761 * 2^(hysteresis + 2)
+  * which is the mathematical derivation for:
+  * 0x0 <=> 1.9°C, 0x1 <=> 3.8°C, 0x2 <=> 7.6°C, 0x3 <=> 15.2°C
+  */
+ static unsigned int hyst_levels_mc[] = {1900, 3800, 7600, 15200};
+ static unsigned int armada_mc_to_reg_hyst(struct armada_thermal_data *data,
+                                         unsigned int hyst_mc)
+ {
+       int i;
+       /*
+        * We will always take the smallest possible hysteresis to avoid risking
+        * the hardware integrity by enlarging the threshold by +8°C in the
+        * worst case.
+        */
+       for (i = ARRAY_SIZE(hyst_levels_mc) - 1; i > 0; i--)
+               if (hyst_mc >= hyst_levels_mc[i])
+                       break;
+       return i & data->hyst_mask;
+ }
+ static void armada_set_overheat_thresholds(struct armada_thermal_priv *priv,
+                                          int thresh_mc, int hyst_mc)
+ {
+       struct armada_thermal_data *data = priv->data;
+       unsigned int threshold = armada_mc_to_reg_temp(data, thresh_mc);
+       unsigned int hysteresis = armada_mc_to_reg_hyst(data, hyst_mc);
+       u32 ctrl1;
+       regmap_read(priv->syscon, data->syscon_control1_off, &ctrl1);
+       /* Set Threshold */
+       if (thresh_mc >= 0) {
+               ctrl1 &= ~(data->temp_mask << data->thresh_shift);
+               ctrl1 |= threshold << data->thresh_shift;
+               priv->current_threshold = thresh_mc;
+       }
+       /* Set Hysteresis */
+       if (hyst_mc >= 0) {
+               ctrl1 &= ~(data->hyst_mask << data->hyst_shift);
+               ctrl1 |= hysteresis << data->hyst_shift;
+               priv->current_hysteresis = hyst_mc;
+       }
+       regmap_write(priv->syscon, data->syscon_control1_off, ctrl1);
+ }
+ static irqreturn_t armada_overheat_isr(int irq, void *blob)
+ {
+       /*
+        * Disable the IRQ and continue in thread context (thermal core
+        * notification and temperature monitoring).
+        */
+       disable_irq_nosync(irq);
+       return IRQ_WAKE_THREAD;
+ }
+ static irqreturn_t armada_overheat_isr_thread(int irq, void *blob)
+ {
+       struct armada_thermal_priv *priv = blob;
+       int low_threshold = priv->current_threshold - priv->current_hysteresis;
+       int temperature;
+       u32 dummy;
+       int ret;
+       /* Notify the core in thread context */
+       thermal_zone_device_update(priv->overheat_sensor,
+                                  THERMAL_EVENT_UNSPECIFIED);
+       /*
+        * The overheat interrupt must be cleared by reading the DFX interrupt
+        * cause _after_ the temperature has fallen down to the low threshold.
+        * Otherwise future interrupts might not be served.
+        */
+       do {
+               msleep(OVERHEAT_INT_POLL_DELAY_MS);
+               mutex_lock(&priv->update_lock);
+               ret = armada_read_sensor(priv, &temperature);
+               mutex_unlock(&priv->update_lock);
+               if (ret)
+                       goto enable_irq;
+       } while (temperature >= low_threshold);
+       regmap_read(priv->syscon, priv->data->dfx_irq_cause_off, &dummy);
+       /* Notify the thermal core that the temperature is acceptable again */
+       thermal_zone_device_update(priv->overheat_sensor,
+                                  THERMAL_EVENT_UNSPECIFIED);
+ enable_irq:
+       enable_irq(irq);
+       return IRQ_HANDLED;
+ }
  static const struct armada_thermal_data armadaxp_data = {
        .init = armadaxp_init,
        .temp_shift = 10,
@@@ -454,6 -635,9 +635,9 @@@ static const struct armada_thermal_dat
        .is_valid_bit = BIT(16),
        .temp_shift = 0,
        .temp_mask = 0x3ff,
+       .thresh_shift = 3,
+       .hyst_shift = 19,
+       .hyst_mask = 0x3,
        .coef_b = -150000LL,
        .coef_m = 423ULL,
        .coef_div = 1,
        .syscon_control0_off = 0x84,
        .syscon_control1_off = 0x88,
        .syscon_status_off = 0x8C,
+       .dfx_irq_cause_off = 0x108,
+       .dfx_irq_mask_off = 0x10C,
+       .dfx_overheat_irq = BIT(22),
+       .dfx_server_irq_mask_off = 0x104,
+       .dfx_server_irq_en = BIT(1),
        .cpu_nr = 4,
  };
  
@@@ -470,6 -659,9 +659,9 @@@ static const struct armada_thermal_dat
        .is_valid_bit = BIT(10),
        .temp_shift = 0,
        .temp_mask = 0x3ff,
+       .thresh_shift = 16,
+       .hyst_shift = 26,
+       .hyst_mask = 0x3,
        .coef_b = 1172499100ULL,
        .coef_m = 2000096ULL,
        .coef_div = 4201,
        .syscon_control0_off = 0x70,
        .syscon_control1_off = 0x74,
        .syscon_status_off = 0x78,
+       .dfx_irq_cause_off = 0x108,
+       .dfx_irq_mask_off = 0x10C,
+       .dfx_overheat_irq = BIT(20),
+       .dfx_server_irq_mask_off = 0x104,
+       .dfx_server_irq_en = BIT(1),
  };
  
  static const struct of_device_id armada_thermal_id_table[] = {
@@@ -526,37 -723,33 +723,31 @@@ static int armada_thermal_probe_legacy(
  
        /* First memory region points towards the status register */
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 -      if (!res)
 -              return -EIO;
 -
 -      /*
 -       * Edit the resource start address and length to map over all the
 -       * registers, instead of pointing at them one by one.
 -       */
 -      res->start -= data->syscon_status_off;
 -      res->end = res->start + max(data->syscon_status_off,
 -                                  max(data->syscon_control0_off,
 -                                      data->syscon_control1_off)) +
 -                 sizeof(unsigned int) - 1;
 -
        base = devm_ioremap_resource(&pdev->dev, res);
        if (IS_ERR(base))
                return PTR_ERR(base);
  
 +      /*
 +       * Fix up from the old individual DT register specification to
 +       * cover all the registers.  We do this by adjusting the ioremap()
 +       * result, which should be fine as ioremap() deals with pages.
 +       * However, validate that we do not cross a page boundary while
 +       * making this adjustment.
 +       */
 +      if (((unsigned long)base & ~PAGE_MASK) < data->syscon_status_off)
 +              return -EINVAL;
 +      base -= data->syscon_status_off;
 +
        priv->syscon = devm_regmap_init_mmio(&pdev->dev, base,
                                             &armada_thermal_regmap_config);
-       if (IS_ERR(priv->syscon))
-               return PTR_ERR(priv->syscon);
-       return 0;
+       return PTR_ERR_OR_ZERO(priv->syscon);
  }
  
  static int armada_thermal_probe_syscon(struct platform_device *pdev,
                                       struct armada_thermal_priv *priv)
  {
        priv->syscon = syscon_node_to_regmap(pdev->dev.parent->of_node);
-       if (IS_ERR(priv->syscon))
-               return PTR_ERR(priv->syscon);
-       return 0;
+       return PTR_ERR_OR_ZERO(priv->syscon);
  }
  
  static void armada_set_sane_name(struct platform_device *pdev,
        } while (insane_char);
  }
  
+ /*
+  * The IP can manage to trigger interrupts on overheat situation from all the
+  * sensors. However, the interrupt source changes along with the last selected
+  * source (ie. the last read sensor), which is an inconsistent behavior. Avoid
+  * possible glitches by always selecting back only one channel (arbitrarily: the
+  * first in the DT which has a critical trip point). We also disable sensor
+  * switch during overheat situations.
+  */
+ static int armada_configure_overheat_int(struct armada_thermal_priv *priv,
+                                        struct thermal_zone_device *tz,
+                                        int sensor_id)
+ {
+       /* Retrieve the critical trip point to enable the overheat interrupt */
+       const struct thermal_trip *trips = of_thermal_get_trip_points(tz);
+       int ret;
+       int i;
+       if (!trips)
+               return -EINVAL;
+       for (i = 0; i < of_thermal_get_ntrips(tz); i++)
+               if (trips[i].type == THERMAL_TRIP_CRITICAL)
+                       break;
+       if (i == of_thermal_get_ntrips(tz))
+               return -EINVAL;
+       ret = armada_select_channel(priv, sensor_id);
+       if (ret)
+               return ret;
+       armada_set_overheat_thresholds(priv,
+                                      trips[i].temperature,
+                                      trips[i].hysteresis);
+       priv->overheat_sensor = tz;
+       priv->interrupt_source = sensor_id;
+       armada_enable_overheat_interrupt(priv);
+       return 0;
+ }
  static int armada_thermal_probe(struct platform_device *pdev)
  {
        struct thermal_zone_device *tz;
        struct armada_drvdata *drvdata;
        const struct of_device_id *match;
        struct armada_thermal_priv *priv;
-       int sensor_id;
+       int sensor_id, irq;
        int ret;
  
        match = of_match_device(armada_thermal_id_table, &pdev->dev);
        drvdata->data.priv = priv;
        platform_set_drvdata(pdev, drvdata);
  
+       irq = platform_get_irq(pdev, 0);
+       if (irq == -EPROBE_DEFER)
+               return irq;
+       /* The overheat interrupt feature is not mandatory */
+       if (irq > 0) {
+               ret = devm_request_threaded_irq(&pdev->dev, irq,
+                                               armada_overheat_isr,
+                                               armada_overheat_isr_thread,
+                                               0, NULL, priv);
+               if (ret) {
+                       dev_err(&pdev->dev, "Cannot request threaded IRQ %d\n",
+                               irq);
+                       return ret;
+               }
+       }
        /*
         * There is one channel for the IC and one per CPU (if any), each
         * channel has one sensor.
                        devm_kfree(&pdev->dev, sensor);
                        continue;
                }
+               /*
+                * The first channel that has a critical trip point registered
+                * in the DT will serve as interrupt source. Others possible
+                * critical trip points will simply be ignored by the driver.
+                */
+               if (irq > 0 && !priv->overheat_sensor)
+                       armada_configure_overheat_int(priv, tz, sensor->id);
        }
  
+       /* Just complain if no overheat interrupt was set up */
+       if (!priv->overheat_sensor)
+               dev_warn(&pdev->dev, "Overheat interrupt not available\n");
        return 0;
  }
  
index b9d90f0ed504dc20357da58104eaf63526f73e06,24b006a9514217dc10984be657b376f186c54fbd..720760cd493feb4583bffde64edd5253dd35e380
@@@ -1,8 -1,17 +1,8 @@@
 +// SPDX-License-Identifier: GPL-2.0+
  /*
   * Driver for Broadcom BCM2835 SoC temperature sensor
   *
   * Copyright (C) 2016 Martin Sperl
 - *
 - * 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.
 - *
 - * This program is distributed in the hope that it will be useful,
 - * but WITHOUT ANY WARRANTY; without even the implied warranty of
 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 - * GNU General Public License for more details.
   */
  
  #include <linux/clk.h>
@@@ -18,6 -27,8 +18,8 @@@
  #include <linux/platform_device.h>
  #include <linux/thermal.h>
  
+ #include "../thermal_hwmon.h"
  #define BCM2835_TS_TSENSCTL                   0x00
  #define BCM2835_TS_TSENSSTAT                  0x04
  
@@@ -266,6 -277,15 +268,15 @@@ static int bcm2835_thermal_probe(struc
  
        platform_set_drvdata(pdev, tz);
  
+       /*
+        * Thermal_zone doesn't enable hwmon as default,
+        * enable it here
+        */
+       tz->tzp->no_hwmon = false;
+       err = thermal_add_hwmon_sysfs(tz);
+       if (err)
+               goto err_tz;
        bcm2835_thermal_debugfs(pdev);
  
        return 0;
index e8b1570cc3888a3eff4e066c324a3d3c4d10b95c,956eef8717bb9138d0609c324fdfe6c7d4185c58..65704bdd18e4afa4aa29f1ce3f9b39243247a761
@@@ -299,7 -299,7 +299,7 @@@ static int brcmstb_set_trips(void *data
        return 0;
  }
  
 -static struct thermal_zone_of_device_ops of_ops = {
 +static const struct thermal_zone_of_device_ops of_ops = {
        .get_temp       = brcmstb_get_temp,
        .set_trips      = brcmstb_set_trips,
  };
@@@ -329,7 -329,8 +329,8 @@@ static int brcmstb_thermal_probe(struc
        priv->dev = &pdev->dev;
        platform_set_drvdata(pdev, priv);
  
-       thermal = thermal_zone_of_sensor_register(&pdev->dev, 0, priv, &of_ops);
+       thermal = devm_thermal_zone_of_sensor_register(&pdev->dev, 0, priv,
+                                                      &of_ops);
        if (IS_ERR(thermal)) {
                ret = PTR_ERR(thermal);
                dev_err(&pdev->dev, "could not register sensor: %d\n", ret);
        irq = platform_get_irq(pdev, 0);
        if (irq < 0) {
                dev_err(&pdev->dev, "could not get IRQ\n");
-               ret = irq;
-               goto err;
+               return irq;
        }
        ret = devm_request_threaded_irq(&pdev->dev, irq, NULL,
                                        brcmstb_tmon_irq_thread, IRQF_ONESHOT,
                                        DRV_NAME, priv);
        if (ret < 0) {
                dev_err(&pdev->dev, "could not request IRQ: %d\n", ret);
-               goto err;
+               return ret;
        }
  
        dev_info(&pdev->dev, "registered AVS TMON of-sensor driver\n");
  
        return 0;
- err:
-       thermal_zone_of_sensor_unregister(&pdev->dev, thermal);
-       return ret;
- }
- static int brcmstb_thermal_exit(struct platform_device *pdev)
- {
-       struct brcmstb_thermal_priv *priv = platform_get_drvdata(pdev);
-       struct thermal_zone_device *thermal = priv->thermal;
-       if (thermal)
-               thermal_zone_of_sensor_unregister(&pdev->dev, priv->thermal);
-       return 0;
  }
  
  static struct platform_driver brcmstb_thermal_driver = {
        .probe = brcmstb_thermal_probe,
-       .remove = brcmstb_thermal_exit,
        .driver = {
                .name = DRV_NAME,
                .of_match_table = brcmstb_thermal_id_table,