Merge tag 'printk-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/printk...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 13 Oct 2020 22:58:10 +0000 (15:58 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 13 Oct 2020 22:58:10 +0000 (15:58 -0700)
Pull printk updates from Petr Mladek:
 "The big new thing is the fully lockless ringbuffer implementation,
  including the support for continuous lines. It will allow to store and
  read messages in any situation wihtout the risk of deadlocks and
  without the need of temporary per-CPU buffers.

  The access is still serialized by logbuf_lock. It synchronizes few
  more operations, for example, temporary buffer for formatting the
  message, syslog and kmsg_dump operations. The lock removal is being
  discussed and should be ready for the next release.

  The continuous lines are handled exactly the same way as before to
  avoid regressions in user space. It means that they are appended to
  the last message when the caller is the same. Only the last message
  can be extended.

  The data ring includes plain text of the messages. Except for an
  integer at the beginning of each message that points back to the
  descriptor ring with other metadata.

  The dictionary has to stay. journalctl uses it to filter the log. It
  allows to show messages related to a given device. The dictionary
  values are stored in the descriptor ring with the other metadata.

  This is the first part of the printk rework as discussed at Plumbers
  2019, see https://lore.kernel.org/r/87k1acz5rx.fsf@linutronix.de. The
  next big step will be handling consoles by kthreads during the normal
  system operation. It will require special handling of situations when
  the kthreads could not get scheduled, for example, early boot,
  suspend, panic.

  Other changes:

   - Add John Ogness as a reviewer for printk subsystem. He is author of
     the rework and is familiar with the code and history.

   - Fix locking in serial8250_do_startup() to prevent lockdep report.

   - Few code cleanups"

* tag 'printk-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux: (27 commits)
  printk: Use fallthrough pseudo-keyword
  printk: reduce setup_text_buf size to LOG_LINE_MAX
  printk: avoid and/or handle record truncation
  printk: remove dict ring
  printk: move dictionary keys to dev_printk_info
  printk: move printk_info into separate array
  printk: reimplement log_cont using record extension
  printk: ringbuffer: add finalization/extension support
  printk: ringbuffer: change representation of states
  printk: ringbuffer: clear initial reserved fields
  printk: ringbuffer: add BLK_DATALESS() macro
  printk: ringbuffer: relocate get_data()
  printk: ringbuffer: avoid memcpy() on state_var
  printk: ringbuffer: fix setting state in desc_read()
  kernel.h: Move oops_in_progress to printk.h
  scripts/gdb: update for lockless printk ringbuffer
  scripts/gdb: add utils.read_ulong()
  docs: vmcoreinfo: add lockless printk ringbuffer vmcoreinfo
  printk: reduce LOG_BUF_SHIFT range for H8300
  printk: ringbuffer: support dataless records
  ...

1  2 
MAINTAINERS
drivers/base/core.c
include/linux/crash_core.h
include/linux/kernel.h
init/Kconfig

diff --combined MAINTAINERS
@@@ -147,7 -147,7 +147,7 @@@ Maintainers Lis
  M:    Steffen Klassert <klassert@kernel.org>
  L:    netdev@vger.kernel.org
  S:    Odd Fixes
 -F:    Documentation/networking/device_drivers/3com/vortex.rst
 +F:    Documentation/networking/device_drivers/ethernet/3com/vortex.rst
  F:    drivers/net/ethernet/3com/3c59x.c
  
  3CR990 NETWORK DRIVER
@@@ -802,13 -802,6 +802,13 @@@ S:       Maintaine
  F:    Documentation/devicetree/bindings/interrupt-controller/amazon,al-fic.txt
  F:    drivers/irqchip/irq-al-fic.c
  
 +AMAZON ANNAPURNA LABS MEMORY CONTROLLER EDAC
 +M:    Talel Shenhar <talel@amazon.com>
 +M:    Talel Shenhar <talelshenhar@gmail.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/edac/amazon,al-mc-edac.yaml
 +F:    drivers/edac/al_mc_edac.c
 +
  AMAZON ANNAPURNA LABS THERMAL MMIO DRIVER
  M:    Talel Shenhar <talel@amazon.com>
  S:    Maintained
@@@ -823,7 -816,7 +823,7 @@@ R: Saeed Bishara <saeedb@amazon.com
  R:    Zorik Machulsky <zorik@amazon.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/amazon/ena.rst
 +F:    Documentation/networking/device_drivers/ethernet/amazon/ena.rst
  F:    drivers/net/ethernet/amazon/
  
  AMAZON RDMA EFA DRIVER
@@@ -1089,7 -1082,6 +1089,7 @@@ L:      linux-media@vger.kernel.or
  S:    Supported
  W:    http://ez.analog.com/community/linux-device-drivers
  F:    drivers/media/i2c/adv7180.c
 +F:    Documentation/devicetree/bindings/media/i2c/adv7180.yaml
  
  ANALOG DEVICES INC ADV748X DRIVER
  M:    Kieran Bingham <kieran.bingham@ideasonboard.com>
@@@ -1187,8 -1179,6 +1187,8 @@@ M:      Todd Kjos <tkjos@android.com
  M:    Martijn Coenen <maco@android.com>
  M:    Joel Fernandes <joel@joelfernandes.org>
  M:    Christian Brauner <christian@brauner.io>
 +M:    Hridya Valsaraju <hridya@google.com>
 +M:    Suren Baghdasaryan <surenb@google.com>
  L:    devel@driverdev.osuosl.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
@@@ -1314,7 -1304,7 +1314,7 @@@ L:      netdev@vger.kernel.or
  S:    Supported
  W:    https://www.marvell.com/
  Q:    http://patchwork.ozlabs.org/project/netdev/list/
 -F:    Documentation/networking/device_drivers/aquantia/atlantic.rst
 +F:    Documentation/networking/device_drivers/ethernet/aquantia/atlantic.rst
  F:    drivers/net/ethernet/aquantia/atlantic/
  
  AQUANTIA ETHERNET DRIVER PTP SUBSYSTEM
@@@ -1508,7 -1498,7 +1508,7 @@@ ARM SMC WATCHDOG DRIVE
  M:    Julius Werner <jwerner@chromium.org>
  R:    Evan Benn <evanbenn@chromium.org>
  S:    Maintained
 -F:    devicetree/bindings/watchdog/arm-smc-wdt.yaml
 +F:    Documentation/devicetree/bindings/watchdog/arm-smc-wdt.yaml
  F:    drivers/watchdog/arm_smc_wdt.c
  
  ARM SMMU DRIVERS
@@@ -1517,7 -1507,7 +1517,7 @@@ R:      Robin Murphy <robin.murphy@arm.com
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    Documentation/devicetree/bindings/iommu/arm,smmu*
 -F:    drivers/iommu/arm-smmu*
 +F:    drivers/iommu/arm/
  F:    drivers/iommu/io-pgtable-arm-v7s.c
  F:    drivers/iommu/io-pgtable-arm.c
  
@@@ -1537,7 -1527,6 +1537,7 @@@ F:      Documentation/devicetree/bindings/ar
  F:    Documentation/devicetree/bindings/clock/actions,owl-cmu.txt
  F:    Documentation/devicetree/bindings/dma/owl-dma.txt
  F:    Documentation/devicetree/bindings/i2c/i2c-owl.txt
 +F:    Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
  F:    Documentation/devicetree/bindings/mmc/owl-mmc.yaml
  F:    Documentation/devicetree/bindings/pinctrl/actions,s900-pinctrl.txt
  F:    Documentation/devicetree/bindings/power/actions,owl-sps.txt
@@@ -1549,12 -1538,10 +1549,12 @@@ F:   drivers/clk/actions
  F:    drivers/clocksource/timer-owl*
  F:    drivers/dma/owl-dma.c
  F:    drivers/i2c/busses/i2c-owl.c
 +F:    drivers/irqchip/irq-owl-sirq.c
  F:    drivers/mmc/host/owl-mmc.c
  F:    drivers/pinctrl/actions/*
  F:    drivers/soc/actions/
  F:    include/dt-bindings/power/owl-*
 +F:    include/dt-bindings/reset/actions,*
  F:    include/linux/soc/actions/
  N:    owl
  
@@@ -1637,7 -1624,7 +1637,7 @@@ N:      meso
  
  ARM/Annapurna Labs ALPINE ARCHITECTURE
  M:    Tsahee Zidenberg <tsahee@annapurnalabs.com>
 -M:    Antoine Tenart <antoine.tenart@bootlin.com>
 +M:    Antoine Tenart <atenart@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/boot/dts/alpine*
@@@ -1708,6 -1695,7 +1708,6 @@@ F:      arch/arm/mach-cns3xxx
  
  ARM/CAVIUM THUNDER NETWORK DRIVER
  M:    Sunil Goutham <sgoutham@marvell.com>
 -M:    Robert Richter <rrichter@marvell.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    drivers/net/ethernet/cavium/thunder/
@@@ -2323,7 -2311,7 +2323,7 @@@ F:      drivers/pci/controller/dwc/pcie-qcom
  F:    drivers/phy/qualcomm/
  F:    drivers/power/*/msm*
  F:    drivers/reset/reset-qcom-*
 -F:    drivers/scsi/ufs/ufs-qcom.*
 +F:    drivers/scsi/ufs/ufs-qcom*
  F:    drivers/spi/spi-geni-qcom.c
  F:    drivers/spi/spi-qcom-qspi.c
  F:    drivers/spi/spi-qup.c
@@@ -2459,7 -2447,7 +2459,7 @@@ L:      linux-samsung-soc@vger.kernel.org (m
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/s5p-cec.txt
 -F:    drivers/media/platform/s5p-cec/
 +F:    drivers/media/cec/platform/s5p/
  
  ARM/SAMSUNG S5P SERIES JPEG CODEC SUPPORT
  M:    Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
@@@ -2518,7 -2506,7 +2518,7 @@@ S:      Maintaine
  F:    drivers/clk/socfpga/
  
  ARM/SOCFPGA EDAC SUPPORT
 -M:    Thor Thayer <thor.thayer@linux.intel.com>
 +M:    Dinh Nguyen <dinguyen@kernel.org>
  S:    Maintained
  F:    drivers/edac/altera_edac.
  
@@@ -2604,7 -2592,7 +2604,7 @@@ L:      linux-tegra@vger.kernel.or
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/tegra-cec.txt
 -F:    drivers/media/platform/tegra-cec/
 +F:    drivers/media/cec/platform/tegra/
  
  ARM/TETON BGA MACHINE SUPPORT
  M:    "Mark F. Brown" <mark.brown314@gmail.com>
@@@ -2879,7 -2867,7 +2879,7 @@@ ASYMMETRIC KEY
  M:    David Howells <dhowells@redhat.com>
  L:    keyrings@vger.kernel.org
  S:    Maintained
 -F:    Documentation/crypto/asymmetric-keys.txt
 +F:    Documentation/crypto/asymmetric-keys.rst
  F:    crypto/asymmetric_keys/
  F:    include/crypto/pkcs7.h
  F:    include/crypto/public_key.h
@@@ -2889,7 -2877,7 +2889,7 @@@ ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT
  R:    Dan Williams <dan.j.williams@intel.com>
  S:    Odd fixes
  W:    http://sourceforge.net/projects/xscaleiop
 -F:    Documentation/crypto/async-tx-api.txt
 +F:    Documentation/crypto/async-tx-api.rst
  F:    crypto/async_tx/
  F:    drivers/dma/
  F:    include/linux/async_tx.h
@@@ -2933,7 -2921,7 +2933,7 @@@ S:      Supporte
  F:    drivers/net/wireless/ath/*
  
  ATHEROS ATH5K WIRELESS DRIVER
 -M:    Jiri Slaby <jirislaby@gmail.com>
 +M:    Jiri Slaby <jirislaby@kernel.org>
  M:    Nick Kossifidis <mickflemm@gmail.com>
  M:    Luis Chamberlain <mcgrof@kernel.org>
  L:    linux-wireless@vger.kernel.org
@@@ -3218,7 -3206,6 +3218,7 @@@ S:      Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
  F:    block/
  F:    drivers/block/
 +F:    include/linux/blk*
  F:    kernel/trace/blktrace.c
  F:    lib/sbitmap.c
  
@@@ -3402,7 -3389,6 +3402,7 @@@ M:      Florian Fainelli <f.fainelli@gmail.c
  L:    netdev@vger.kernel.org
  L:    openwrt-devel@lists.openwrt.org (subscribers-only)
  S:    Supported
 +F:    Documentation/devicetree/bindings/net/dsa/b53.txt
  F:    drivers/net/dsa/b53/*
  F:    include/linux/platform_data/b53.h
  
@@@ -3588,28 -3574,13 +3588,28 @@@ L:   bcm-kernel-feedback-list@broadcom.co
  S:    Maintained
  F:    drivers/phy/broadcom/phy-brcm-usb*
  
 +BROADCOM ETHERNET PHY DRIVERS
 +M:    Florian Fainelli <f.fainelli@gmail.com>
 +L:    bcm-kernel-feedback-list@broadcom.com
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/net/broadcom-bcm87xx.txt
 +F:    drivers/net/phy/bcm*.[ch]
 +F:    drivers/net/phy/broadcom.c
 +F:    include/linux/brcmphy.h
 +
  BROADCOM GENET ETHERNET DRIVER
  M:    Doug Berger <opendmb@gmail.com>
  M:    Florian Fainelli <f.fainelli@gmail.com>
  L:    bcm-kernel-feedback-list@broadcom.com
  L:    netdev@vger.kernel.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/net/brcm,bcmgenet.txt
 +F:    Documentation/devicetree/bindings/net/brcm,unimac-mdio.txt
  F:    drivers/net/ethernet/broadcom/genet/
 +F:    drivers/net/mdio/mdio-bcm-unimac.c
 +F:    include/linux/platform_data/bcmgenet.h
 +F:    include/linux/platform_data/mdio-bcm-unimac.h
  
  BROADCOM IPROC ARM ARCHITECTURE
  M:    Ray Jui <rjui@broadcom.com>
@@@ -3652,7 -3623,6 +3652,7 @@@ M:      Selvin Xavier <selvin.xavier@broadco
  M:    Devesh Sharma <devesh.sharma@broadcom.com>
  M:    Somnath Kotur <somnath.kotur@broadcom.com>
  M:    Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
 +M:    Naresh Kumar PBS <nareshkumar.pbs@broadcom.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    http://www.broadcom.com
@@@ -3961,8 -3931,8 +3961,8 @@@ W:      https://wireless.wiki.kernel.org/en/
  F:    drivers/net/wireless/ath/carl9170/
  
  CAVIUM I2C DRIVER
 -M:    Robert Richter <rrichter@marvell.com>
 -S:    Supported
 +M:    Robert Richter <rric@kernel.org>
 +S:    Odd Fixes
  W:    http://www.marvell.com
  F:    drivers/i2c/busses/i2c-octeon*
  F:    drivers/i2c/busses/i2c-thunderx*
@@@ -3977,8 -3947,8 +3977,8 @@@ W:      http://www.marvell.co
  F:    drivers/net/ethernet/cavium/liquidio/
  
  CAVIUM MMC DRIVER
 -M:    Robert Richter <rrichter@marvell.com>
 -S:    Supported
 +M:    Robert Richter <rric@kernel.org>
 +S:    Odd Fixes
  W:    http://www.marvell.com
  F:    drivers/mmc/host/cavium*
  
@@@ -3990,9 -3960,9 +3990,9 @@@ W:      http://www.marvell.co
  F:    drivers/crypto/cavium/cpt/
  
  CAVIUM THUNDERX2 ARM64 SOC
 -M:    Robert Richter <rrichter@marvell.com>
 +M:    Robert Richter <rric@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 +S:    Odd Fixes
  F:    Documentation/devicetree/bindings/arm/cavium-thunder2.txt
  F:    arch/arm64/boot/dts/cavium/thunder2-99xx*
  
@@@ -4044,7 -4014,7 +4044,7 @@@ S:      Supporte
  W:    http://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/cec-gpio.txt
 -F:    drivers/media/platform/cec-gpio/
 +F:    drivers/media/cec/platform/cec-gpio/
  
  CELL BROADBAND ENGINE ARCHITECTURE
  M:    Arnd Bergmann <arnd@arndb.de>
@@@ -4172,14 -4142,6 +4172,14 @@@ F:    drivers/power/supply/cros_usbpd-char
  N:    cros_ec
  N:    cros-ec
  
 +CHRONTEL CH7322 CEC DRIVER
 +M:    Jeff Chase <jnchase@google.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/chrontel,ch7322.yaml
 +F:    drivers/media/cec/i2c/ch7322.c
 +
  CIRRUS LOGIC AUDIO CODEC DRIVERS
  M:    James Schulman <james.schulman@cirrus.com>
  M:    David Rhodes <david.rhodes@cirrus.com>
@@@ -4271,8 -4233,6 +4271,8 @@@ S:      Maintaine
  F:    .clang-format
  
  CLANG/LLVM BUILD SUPPORT
 +M:    Nathan Chancellor <natechancellor@gmail.com>
 +M:    Nick Desaulniers <ndesaulniers@google.com>
  L:    clang-built-linux@googlegroups.com
  S:    Supported
  W:    https://clangbuiltlinux.github.io/
@@@ -4422,11 -4382,11 +4422,11 @@@ T:   git git://git.infradead.org/users/hc
  F:    fs/configfs/
  F:    include/linux/configfs.h
  
 -CONNECTOR
 -M:    Evgeniy Polyakov <zbr@ioremap.net>
 -L:    netdev@vger.kernel.org
 -S:    Maintained
 -F:    drivers/connector/
 +CONSOLE SUBSYSTEM
 +M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 +S:    Supported
 +F:    drivers/video/console/
 +F:    include/linux/console*
  
  CONTROL GROUP (CGROUP)
  M:    Tejun Heo <tj@kernel.org>
@@@ -4481,12 -4441,6 +4481,12 @@@ S:    Maintaine
  F:    Documentation/hwmon/coretemp.rst
  F:    drivers/hwmon/coretemp.c
  
 +CORSAIR-CPRO HARDWARE MONITOR DRIVER
 +M:    Marius Zachmann <mail@mariuszachmann.de>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hwmon/corsair-cpro.c
 +
  COSA/SRP SYNC SERIAL DRIVER
  M:    Jan "Yenya" Kasprzak <kas@fi.muni.cz>
  S:    Maintained
@@@ -4840,7 -4794,7 +4840,7 @@@ F:      net/ax25/sysctl_net_ax25.
  DAVICOM FAST ETHERNET (DMFE) NETWORK DRIVER
  L:    netdev@vger.kernel.org
  S:    Orphan
 -F:    Documentation/networking/device_drivers/dec/dmfe.rst
 +F:    Documentation/networking/device_drivers/ethernet/dec/dmfe.rst
  F:    drivers/net/ethernet/dec/tulip/dmfe.c
  
  DC390/AM53C974 SCSI driver
@@@ -5076,7 -5030,7 +5076,7 @@@ F:      include/linux/dm-*.
  F:    include/uapi/linux/dm-*.h
  
  DEVLINK
 -M:    Jiri Pirko <jiri@mellanox.com>
 +M:    Jiri Pirko <jiri@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    Documentation/networking/devlink
@@@ -5180,7 -5134,6 +5180,7 @@@ F:      fs/dlm
  
  DMA BUFFER SHARING FRAMEWORK
  M:    Sumit Semwal <sumit.semwal@linaro.org>
 +M:    Christian König <christian.koenig@amd.com>
  L:    linux-media@vger.kernel.org
  L:    dri-devel@lists.freedesktop.org
  L:    linaro-mm-sig@lists.linaro.org (moderated for non-subscribers)
@@@ -5265,7 -5218,6 +5265,7 @@@ DOCUMENTATIO
  M:    Jonathan Corbet <corbet@lwn.net>
  L:    linux-doc@vger.kernel.org
  S:    Maintained
 +P:    Documentation/doc-guide/maintainer-profile.rst
  T:    git git://git.lwn.net/linux.git docs-next
  F:    Documentation/
  F:    scripts/documentation-file-ref-check
@@@ -5303,14 -5255,6 +5303,14 @@@ T:    git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/i2c/dongwoon,dw9714.txt
  F:    drivers/media/i2c/dw9714.c
  
 +DONGWOON DW9768 LENS VOICE COIL DRIVER
 +M:    Dongchun Zhu <dongchun.zhu@mediatek.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/dongwoon,dw9768.yaml
 +F:    drivers/media/i2c/dw9768.c
 +
  DONGWOON DW9807 LENS VOICE COIL DRIVER
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  L:    linux-media@vger.kernel.org
@@@ -5337,8 -5281,8 +5337,8 @@@ M:      Ioana Ciornei <ioana.ciornei@nxp.com
  M:    Ioana Radulescu <ruxandra.radulescu@nxp.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
 -F:    Documentation/networking/device_drivers/freescale/dpaa2/ethernet-driver.rst
 -F:    Documentation/networking/device_drivers/freescale/dpaa2/mac-phy-support.rst
 +F:    Documentation/networking/device_drivers/ethernet/freescale/dpaa2/ethernet-driver.rst
 +F:    Documentation/networking/device_drivers/ethernet/freescale/dpaa2/mac-phy-support.rst
  F:    drivers/net/ethernet/freescale/dpaa2/Kconfig
  F:    drivers/net/ethernet/freescale/dpaa2/Makefile
  F:    drivers/net/ethernet/freescale/dpaa2/dpaa2-eth*
@@@ -5915,7 -5859,7 +5915,7 @@@ M:      Eric Anholt <eric@anholt.net
  S:    Supported
  T:    git git://github.com/anholt/linux
  T:    git git://anongit.freedesktop.org/drm/drm-misc
 -F:    Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
 +F:    Documentation/devicetree/bindings/display/brcm,bcm2835-*.yaml
  F:    drivers/gpu/drm/vc4/
  F:    include/uapi/drm/vc4_drm.h
  
@@@ -5939,15 -5883,6 +5939,15 @@@ T:    git git://anongit.freedesktop.org/dr
  F:    Documentation/gpu/xen-front.rst
  F:    drivers/gpu/drm/xen/
  
 +DRM DRIVERS FOR XILINX
 +M:    Hyun Kwon <hyun.kwon@xilinx.com>
 +M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 +L:    dri-devel@lists.freedesktop.org
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/xlnx/
 +F:    drivers/gpu/drm/xlnx/
 +
  DRM DRIVERS FOR ZTE ZX
  M:    Shawn Guo <shawnguo@kernel.org>
  L:    dri-devel@lists.freedesktop.org
@@@ -6108,7 -6043,7 +6108,7 @@@ F:      include/linux/dynamic_debug.
  F:    lib/dynamic_debug.c
  
  DYNAMIC INTERRUPT MODERATION
 -M:    Tal Gilboa <talgi@mellanox.com>
 +M:    Tal Gilboa <talgi@nvidia.com>
  S:    Maintained
  F:    Documentation/networking/net_dim.rst
  F:    include/linux/dim.h
@@@ -6188,27 -6123,28 +6188,27 @@@ F:   Documentation/devicetree/bindings/ed
  F:    drivers/edac/aspeed_edac.c
  
  EDAC-BLUEFIELD
 -M:    Shravan Kumar Ramani <sramani@mellanox.com>
 +M:    Shravan Kumar Ramani <shravankr@nvidia.com>
  S:    Supported
  F:    drivers/edac/bluefield_edac.c
  
  EDAC-CALXEDA
 -M:    Robert Richter <rric@kernel.org>
 +M:    Andre Przywara <andre.przywara@arm.com>
  L:    linux-edac@vger.kernel.org
  S:    Maintained
  F:    drivers/edac/highbank*
  
  EDAC-CAVIUM OCTEON
  M:    Ralf Baechle <ralf@linux-mips.org>
 -M:    Robert Richter <rrichter@marvell.com>
  L:    linux-edac@vger.kernel.org
  L:    linux-mips@vger.kernel.org
  S:    Supported
  F:    drivers/edac/octeon_edac*
  
  EDAC-CAVIUM THUNDERX
 -M:    Robert Richter <rrichter@marvell.com>
 +M:    Robert Richter <rric@kernel.org>
  L:    linux-edac@vger.kernel.org
 -S:    Supported
 +S:    Odd Fixes
  F:    drivers/edac/thunderx_edac*
  
  EDAC-CORE
@@@ -6216,7 -6152,7 +6216,7 @@@ M:      Borislav Petkov <bp@alien8.de
  M:    Mauro Carvalho Chehab <mchehab@kernel.org>
  M:    Tony Luck <tony.luck@intel.com>
  R:    James Morse <james.morse@arm.com>
 -R:    Robert Richter <rrichter@marvell.com>
 +R:    Robert Richter <rric@kernel.org>
  L:    linux-edac@vger.kernel.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras.git edac-for-next
@@@ -6509,8 -6445,8 +6509,8 @@@ S:      Odd Fixe
  F:    drivers/net/ethernet/agere/
  
  ETHERNET BRIDGE
 -M:    Roopa Prabhu <roopa@cumulusnetworks.com>
 -M:    Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
 +M:    Roopa Prabhu <roopa@nvidia.com>
 +M:    Nikolay Aleksandrov <nikolay@nvidia.com>
  L:    bridge@lists.linux-foundation.org (moderated for non-subscribers)
  L:    netdev@vger.kernel.org
  S:    Maintained
@@@ -6520,6 -6456,7 +6520,6 @@@ F:      net/bridge
  
  ETHERNET PHY LIBRARY
  M:    Andrew Lunn <andrew@lunn.ch>
 -M:    Florian Fainelli <f.fainelli@gmail.com>
  M:    Heiner Kallweit <hkallweit1@gmail.com>
  R:    Russell King <linux@armlinux.org.uk>
  L:    netdev@vger.kernel.org
@@@ -6624,7 -6561,7 +6624,7 @@@ F:      drivers/iommu/exynos-iommu.
  
  EZchip NPS platform support
  M:    Vineet Gupta <vgupta@synopsys.com>
 -M:    Ofer Levi <oferle@mellanox.com>
 +M:    Ofer Levi <oferle@nvidia.com>
  S:    Supported
  F:    arch/arc/boot/dts/eznps.dts
  F:    arch/arc/plat-eznps
@@@ -6909,14 -6846,6 +6909,14 @@@ L:    linuxppc-dev@lists.ozlabs.or
  S:    Maintained
  F:    drivers/dma/fsldma.*
  
 +FREESCALE DSPI DRIVER
 +M:    Vladimir Oltean <olteanv@gmail.com>
 +L:    linux-spi@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt
 +F:    drivers/spi/spi-fsl-dspi.c
 +F:    include/linux/spi/spi-fsl-dspi.h
 +
  FREESCALE ENETC ETHERNET DRIVERS
  M:    Claudiu Manoil <claudiu.manoil@nxp.com>
  L:    netdev@vger.kernel.org
@@@ -7082,13 -7011,6 +7082,13 @@@ L:    linuxppc-dev@lists.ozlabs.or
  S:    Maintained
  F:    drivers/usb/gadget/udc/fsl*
  
 +FREESCALE USB PHY DRIVER
 +M:    Ran Wang <ran.wang_1@nxp.com>
 +L:    linux-usb@vger.kernel.org
 +L:    linuxppc-dev@lists.ozlabs.org
 +S:    Maintained
 +F:    drivers/usb/phy/phy-fsl-usb*
 +
  FREEVXFS FILESYSTEM
  M:    Christoph Hellwig <hch@infradead.org>
  S:    Maintained
@@@ -7225,7 -7147,7 +7225,7 @@@ F:      include/linux/futex.
  F:    include/uapi/linux/futex.h
  F:    kernel/futex.c
  F:    tools/perf/bench/futex*
 -F:    Documentation/locking/*futex*
 +F:    tools/testing/selftests/futex/
  
  GATEWORKS SYSTEM CONTROLLER (GSC) DRIVER
  M:    Tim Harvey <tharvey@gateworks.com>
@@@ -7249,7 -7171,7 +7249,7 @@@ F:      drivers/staging/gasket
  GCC PLUGINS
  M:    Kees Cook <keescook@chromium.org>
  R:    Emese Revfy <re.emese@gmail.com>
 -L:    kernel-hardening@lists.openwall.com
 +L:    linux-hardening@vger.kernel.org
  S:    Maintained
  F:    Documentation/kbuild/gcc-plugins.rst
  F:    scripts/Makefile.gcc-plugins
@@@ -7421,7 -7343,7 +7421,7 @@@ R:      Sagi Shahar <sagis@google.com
  R:    Jon Olson <jonolson@google.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/google/gve.rst
 +F:    Documentation/networking/device_drivers/ethernet/google/gve.rst
  F:    drivers/net/ethernet/google
  
  GPD POCKET FAN DRIVER
@@@ -8032,7 -7954,7 +8032,7 @@@ HUAWEI ETHERNET DRIVE
  M:    Bin Luo <luobin9@huawei.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/hinic.rst
 +F:    Documentation/networking/device_drivers/ethernet/huawei/hinic.rst
  F:    drivers/net/ethernet/huawei/hinic/
  
  HUGETLB FILESYSTEM
@@@ -8084,7 -8006,7 +8084,7 @@@ S:      Supporte
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git
  F:    Documentation/ABI/stable/sysfs-bus-vmbus
  F:    Documentation/ABI/testing/debugfs-hyperv
 -F:    Documentation/networking/device_drivers/microsoft/netvsc.rst
 +F:    Documentation/networking/device_drivers/ethernet/microsoft/netvsc.rst
  F:    arch/x86/hyperv
  F:    arch/x86/include/asm/hyperv-tlfs.h
  F:    arch/x86/include/asm/mshyperv.h
@@@ -8288,7 -8210,7 +8288,7 @@@ IA64 (Itanium) PLATFOR
  M:    Tony Luck <tony.luck@intel.com>
  M:    Fenghua Yu <fenghua.yu@intel.com>
  L:    linux-ia64@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux.git
  F:    Documentation/ia64/
  F:    arch/ia64/
@@@ -8337,9 -8259,8 +8337,9 @@@ S:      Supporte
  F:    drivers/pci/hotplug/rpaphp*
  
  IBM Power SRIOV Virtual NIC Device Driver
 -M:    Thomas Falcon <tlfalcon@linux.ibm.com>
 -M:    John Allen <jallen@linux.ibm.com>
 +M:    Dany Madden <drt@linux.ibm.com>
 +M:    Lijun Pan <ljp@linux.ibm.com>
 +M:    Sukadev Bhattiprolu <sukadev@linux.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/ibm/ibmvnic.*
@@@ -8353,7 -8274,7 +8353,7 @@@ F:      arch/powerpc/platforms/powernv/copy-
  F:    arch/powerpc/platforms/powernv/vas*
  
  IBM Power Virtual Ethernet Device Driver
 -M:    Thomas Falcon <tlfalcon@linux.ibm.com>
 +M:    Cristobal Forno <cforno12@linux.ibm.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/net/ethernet/ibm/ibmveth.*
@@@ -8444,9 -8365,8 +8444,9 @@@ W:      https://github.com/o2genum/ideapad-s
  F:    drivers/input/misc/ideapad_slidebar.c
  
  IDT VersaClock 5 CLOCK DRIVER
 -M:    Marek Vasut <marek.vasut@gmail.com>
 +M:    Luca Ceresoli <luca@lucaceresoli.net>
  S:    Maintained
 +F:    Documentation/devicetree/bindings/clock/idt,versaclock5.yaml
  F:    drivers/clk/clk-versaclock5.c
  
  IEEE 802.15.4 SUBSYSTEM
@@@ -8597,7 -8517,7 +8597,7 @@@ F:      drivers/iio/pressure/dps310.
  
  INFINIBAND SUBSYSTEM
  M:    Doug Ledford <dledford@redhat.com>
 -M:    Jason Gunthorpe <jgg@mellanox.com>
 +M:    Jason Gunthorpe <jgg@nvidia.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    https://github.com/linux-rdma/rdma-core
@@@ -8687,7 -8607,7 +8687,7 @@@ F:      drivers/input/input-mt.
  K:    \b(ABS|SYN)_MT_
  
  INSIDE SECURE CRYPTO DRIVER
 -M:    Antoine Tenart <antoine.tenart@bootlin.com>
 +M:    Antoine Tenart <atenart@kernel.org>
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    drivers/crypto/inside-secure/
@@@ -8766,8 -8686,7 +8766,8 @@@ F:      include/drm/i915
  F:    include/uapi/drm/i915_drm.h
  
  INTEL ETHERNET DRIVERS
 -M:    Jeff Kirsher <jeffrey.t.kirsher@intel.com>
 +M:    Jesse Brandeburg <jesse.brandeburg@intel.com>
 +M:    Tony Nguyen <anthony.l.nguyen@intel.com>
  L:    intel-wired-lan@lists.osuosl.org (moderated for non-subscribers)
  S:    Supported
  W:    http://www.intel.com/support/feedback.htm
@@@ -8775,7 -8694,18 +8775,7 @@@ W:     http://e1000.sourceforge.net
  Q:    http://patchwork.ozlabs.org/project/intel-wired-lan/list/
  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
 -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/i40e.rst
 -F:    Documentation/networking/device_drivers/intel/iavf.rst
 -F:    Documentation/networking/device_drivers/intel/ice.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/ethernet/intel/
  F:    drivers/net/ethernet/intel/
  F:    drivers/net/ethernet/intel/*/
  F:    include/linux/avf/virtchnl.h
@@@ -8866,7 -8796,7 +8866,7 @@@ INTEL IPU3 CSI-2 CIO2 DRIVE
  M:    Yong Zhi <yong.zhi@intel.com>
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  M:    Bingbu Cao <bingbu.cao@intel.com>
 -R:    Tian Shu Qiu <tian.shu.qiu@intel.com>
 +R:    Tianshu Qiu <tian.shu.qiu@intel.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/userspace-api/media/v4l/pixfmt-srggb10-ipu3.rst
@@@ -8875,7 -8805,7 +8875,7 @@@ F:      drivers/media/pci/intel/ipu3
  INTEL IPU3 CSI-2 IMGU DRIVER
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  R:    Bingbu Cao <bingbu.cao@intel.com>
 -R:    Tian Shu Qiu <tian.shu.qiu@intel.com>
 +R:    Tianshu Qiu <tian.shu.qiu@intel.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/admin-guide/media/ipu3.rst
@@@ -8903,7 -8833,7 +8903,7 @@@ M:      Tomas Winkler <tomas.winkler@intel.c
  L:    linux-kernel@vger.kernel.org
  S:    Supported
  F:    Documentation/driver-api/mei/*
 -F:    drivers/misc/mei/*
 +F:    drivers/misc/mei/
  F:    drivers/watchdog/mei_wdt.c
  F:    include/linux/mei_cl_bus.h
  F:    include/uapi/linux/mei.h
@@@ -8965,8 -8895,8 +8965,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/device_drivers/intel/ipw2100.rst
 -F:    Documentation/networking/device_drivers/intel/ipw2200.rst
 +F:    Documentation/networking/device_drivers/wifi/intel/ipw2100.rst
 +F:    Documentation/networking/device_drivers/wifi/intel/ipw2200.rst
  F:    drivers/net/wireless/intel/ipw2x00/
  
  INTEL PSTATE DRIVER
@@@ -9096,14 -9026,6 +9096,14 @@@ F:    include/dt-bindings/interconnect
  F:    include/linux/interconnect-provider.h
  F:    include/linux/interconnect.h
  
 +INVENSENSE ICM-426xx IMU DRIVER
 +M:    Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Maintained
 +W     https://invensense.tdk.com/
 +F:    Documentation/devicetree/bindings/iio/imu/invensense,icm42600.yaml
 +F:    drivers/iio/imu/inv_icm42600/
 +
  INVENSENSE MPU-3050 GYROSCOPE DRIVER
  M:    Linus Walleij <linus.walleij@linaro.org>
  L:    linux-iio@vger.kernel.org
@@@ -9139,7 -9061,6 +9139,7 @@@ F:      drivers/iommu
  F:    include/linux/iommu.h
  F:    include/linux/iova.h
  F:    include/linux/of_iommu.h
 +F:    include/uapi/linux/iommu.h
  
  IO_URING
  M:    Jens Axboe <axboe@kernel.dk>
@@@ -9261,7 -9182,7 +9261,7 @@@ F:      drivers/firmware/iscsi_ibft
  
  ISCSI EXTENSIONS FOR RDMA (ISER) INITIATOR
  M:    Sagi Grimberg <sagi@grimberg.me>
 -M:    Max Gurtovoy <maxg@mellanox.com>
 +M:    Max Gurtovoy <mgurtovoy@nvidia.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    http://www.openfabrics.org
@@@ -9578,11 -9499,9 +9578,11 @@@ F:    arch/arm64/kvm
  F:    include/kvm/arm_*
  
  KERNEL VIRTUAL MACHINE FOR MIPS (KVM/mips)
 +M:    Huacai Chen <chenhc@lemote.com>
 +M:    Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
  L:    linux-mips@vger.kernel.org
  L:    kvm@vger.kernel.org
 -S:    Orphan
 +S:    Maintained
  F:    arch/mips/include/asm/kvm*
  F:    arch/mips/include/uapi/asm/kvm*
  F:    arch/mips/kvm/
@@@ -9713,15 -9632,6 +9713,15 @@@ F:    include/linux/kdb.
  F:    include/linux/kgdb.h
  F:    kernel/debug/
  
 +KHADAS MCU MFD DRIVER
 +M:    Neil Armstrong <narmstrong@baylibre.com>
 +L:    linux-amlogic@lists.infradead.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/mfd/khadas,mcu.yaml
 +F:    drivers/mfd/khadas-mcu.c
 +F:    include/linux/mfd/khadas-mcu.h
 +F:    drivers/thermal/khadas_mcu_fan.c
 +
  KMEMLEAK
  M:    Catalin Marinas <catalin.marinas@arm.com>
  S:    Maintained
@@@ -9745,7 -9655,7 +9745,7 @@@ M:      Anil S Keshavamurthy <anil.s.keshava
  M:    "David S. Miller" <davem@davemloft.net>
  M:    Masami Hiramatsu <mhiramat@kernel.org>
  S:    Maintained
 -F:    Documentation/kprobes.txt
 +F:    Documentation/trace/kprobes.rst
  F:    include/asm-generic/kprobes.h
  F:    include/linux/kprobes.h
  F:    kernel/kprobes.c
@@@ -9810,17 -9720,19 +9810,17 @@@ F:   drivers/scsi/53c700
  
  LEAKING_ADDRESSES
  M:    Tobin C. Harding <me@tobin.cc>
 -M:    Tycho Andersen <tycho@tycho.ws>
 -L:    kernel-hardening@lists.openwall.com
 +M:    Tycho Andersen <tycho@tycho.pizza>
 +L:    linux-hardening@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tobin/leaks.git
  F:    scripts/leaking_addresses.pl
  
  LED SUBSYSTEM
 -M:    Jacek Anaszewski <jacek.anaszewski@gmail.com>
  M:    Pavel Machek <pavel@ucw.cz>
  R:    Dan Murphy <dmurphy@ti.com>
  L:    linux-leds@vger.kernel.org
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds.git
  F:    Documentation/devicetree/bindings/leds/
  F:    drivers/leds/
@@@ -9882,6 -9794,15 +9882,6 @@@ T:     git git://git.kernel.org/pub/scm/lin
  F:    drivers/ata/pata_arasan_cf.c
  F:    include/linux/pata_arasan_cf_data.h
  
 -LIBATA PATA DRIVERS
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 -M:    Jens Axboe <axboe@kernel.dk>
 -L:    linux-ide@vger.kernel.org
 -S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
 -F:    drivers/ata/ata_generic.c
 -F:    drivers/ata/pata_*.c
 -
  LIBATA PATA FARADAY FTIDE010 AND GEMINI SATA BRIDGE DRIVERS
  M:    Linus Walleij <linus.walleij@linaro.org>
  L:    linux-ide@vger.kernel.org
@@@ -10501,7 -10422,7 +10501,7 @@@ M:   Geetha sowjanya <gakula@marvell.com
  M:    Jerin Jacob <jerinj@marvell.com>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/marvell/octeontx2.rst
 +F:    Documentation/networking/device_drivers/ethernet/marvell/octeontx2.rst
  F:    drivers/net/ethernet/marvell/octeontx2/af/
  
  MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER
@@@ -10561,16 -10482,6 +10561,16 @@@ F: Documentation/hwmon/max6697.rs
  F:    drivers/hwmon/max6697.c
  F:    include/linux/platform_data/max6697.h
  
 +MAX9286 QUAD GMSL DESERIALIZER DRIVER
 +M:    Jacopo Mondi <jacopo+renesas@jmondi.org>
 +M:    Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
 +M:    Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
 +M:    Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/maxim,max9286.yaml
 +F:    drivers/media/i2c/max9286.c
 +
  MAX9860 MONO AUDIO VOICE CODEC DRIVER
  M:    Peter Rosin <peda@axentia.se>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
@@@ -10849,7 -10760,7 +10849,7 @@@ L:   linux-media@vger.kernel.or
  L:    linux-renesas-soc@vger.kernel.org
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/renesas,fcp.txt
 +F:    Documentation/devicetree/bindings/media/renesas,fcp.yaml
  F:    drivers/media/platform/rcar-fcp.c
  F:    include/media/rcar-fcp.h
  
@@@ -10859,7 -10770,7 +10859,7 @@@ L:   linux-media@vger.kernel.or
  L:    linux-renesas-soc@vger.kernel.org
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/renesas,fdp1.txt
 +F:    Documentation/devicetree/bindings/media/renesas,fdp1.yaml
  F:    drivers/media/platform/rcar_fdp1.c
  
  MEDIA DRIVERS FOR RENESAS - VIN
@@@ -10879,7 -10790,7 +10879,7 @@@ L:   linux-media@vger.kernel.or
  L:    linux-renesas-soc@vger.kernel.org
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/renesas,vsp1.txt
 +F:    Documentation/devicetree/bindings/media/renesas,vsp1.yaml
  F:    drivers/media/platform/vsp1/
  
  MEDIA DRIVERS FOR ST STV0910 DEMODULATOR ICs
@@@ -11043,7 -10954,6 +11043,7 @@@ F:   drivers/char/hw_random/mtk-rng.
  
  MEDIATEK SWITCH DRIVER
  M:    Sean Wang <sean.wang@mediatek.com>
 +M:    Landen Chao <Landen.Chao@mediatek.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/dsa/mt7530.*
@@@ -11099,7 -11009,7 +11099,7 @@@ F:   Documentation/devicetree/bindings/in
  F:    drivers/input/touchscreen/melfas_mip4.c
  
  MELLANOX ETHERNET DRIVER (mlx4_en)
 -M:    Tariq Toukan <tariqt@mellanox.com>
 +M:    Tariq Toukan <tariqt@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11107,7 -11017,7 +11107,7 @@@ Q:   http://patchwork.ozlabs.org/project/
  F:    drivers/net/ethernet/mellanox/mlx4/en_*
  
  MELLANOX ETHERNET DRIVER (mlx5e)
 -M:    Saeed Mahameed <saeedm@mellanox.com>
 +M:    Saeed Mahameed <saeedm@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11115,7 -11025,7 +11115,7 @@@ Q:   http://patchwork.ozlabs.org/project/
  F:    drivers/net/ethernet/mellanox/mlx5/core/en_*
  
  MELLANOX ETHERNET INNOVA DRIVERS
 -R:    Boris Pismenny <borisp@mellanox.com>
 +R:    Boris Pismenny <borisp@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11126,8 -11036,8 +11126,8 @@@ F:   drivers/net/ethernet/mellanox/mlx5/c
  F:    include/linux/mlx5/mlx5_ifc_fpga.h
  
  MELLANOX ETHERNET SWITCH DRIVERS
 -M:    Jiri Pirko <jiri@mellanox.com>
 -M:    Ido Schimmel <idosch@mellanox.com>
 +M:    Jiri Pirko <jiri@nvidia.com>
 +M:    Ido Schimmel <idosch@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11136,7 -11046,7 +11136,7 @@@ F:   drivers/net/ethernet/mellanox/mlxsw
  F:    tools/testing/selftests/drivers/net/mlxsw/
  
  MELLANOX FIRMWARE FLASH LIBRARY (mlxfw)
 -M:    mlxsw@mellanox.com
 +M:    mlxsw@nvidia.com
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11146,7 -11056,7 +11146,7 @@@ F:   drivers/net/ethernet/mellanox/mlxfw
  MELLANOX HARDWARE PLATFORM SUPPORT
  M:    Andy Shevchenko <andy@infradead.org>
  M:    Darren Hart <dvhart@infradead.org>
 -M:    Vadim Pasternak <vadimp@mellanox.com>
 +M:    Vadim Pasternak <vadimp@nvidia.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Supported
  F:    Documentation/ABI/testing/sysfs-platform-mellanox-bootctl
@@@ -11154,7 -11064,7 +11154,7 @@@ F:   drivers/platform/mellanox
  F:    include/linux/platform_data/mlxreg.h
  
  MELLANOX MLX4 core VPI driver
 -M:    Tariq Toukan <tariqt@mellanox.com>
 +M:    Tariq Toukan <tariqt@nvidia.com>
  L:    netdev@vger.kernel.org
  L:    linux-rdma@vger.kernel.org
  S:    Supported
@@@ -11164,7 -11074,7 +11164,7 @@@ F:   drivers/net/ethernet/mellanox/mlx4
  F:    include/linux/mlx4/
  
  MELLANOX MLX4 IB driver
 -M:    Yishai Hadas <yishaih@mellanox.com>
 +M:    Yishai Hadas <yishaih@nvidia.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11174,19 -11084,19 +11174,19 @@@ F:        include/linux/mlx4
  F:    include/uapi/rdma/mlx4-abi.h
  
  MELLANOX MLX5 core VPI driver
 -M:    Saeed Mahameed <saeedm@mellanox.com>
 -M:    Leon Romanovsky <leonro@mellanox.com>
 +M:    Saeed Mahameed <saeedm@nvidia.com>
 +M:    Leon Romanovsky <leonro@nvidia.com>
  L:    netdev@vger.kernel.org
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
  Q:    http://patchwork.ozlabs.org/project/netdev/list/
 -F:    Documentation/networking/device_drivers/mellanox/
 +F:    Documentation/networking/device_drivers/ethernet/mellanox/
  F:    drivers/net/ethernet/mellanox/mlx5/core/
  F:    include/linux/mlx5/
  
  MELLANOX MLX5 IB driver
 -M:    Leon Romanovsky <leonro@mellanox.com>
 +M:    Leon Romanovsky <leonro@nvidia.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -11196,8 -11106,8 +11196,8 @@@ F:   include/linux/mlx5
  F:    include/uapi/rdma/mlx5-abi.h
  
  MELLANOX MLXCPLD I2C AND MUX DRIVER
 -M:    Vadim Pasternak <vadimp@mellanox.com>
 -M:    Michael Shych <michaelsh@mellanox.com>
 +M:    Vadim Pasternak <vadimp@nvidia.com>
 +M:    Michael Shych <michaelsh@nvidia.com>
  L:    linux-i2c@vger.kernel.org
  S:    Supported
  F:    Documentation/i2c/busses/i2c-mlxcpld.rst
@@@ -11205,7 -11115,7 +11205,7 @@@ F:   drivers/i2c/busses/i2c-mlxcpld.
  F:    drivers/i2c/muxes/i2c-mux-mlxcpld.c
  
  MELLANOX MLXCPLD LED DRIVER
 -M:    Vadim Pasternak <vadimp@mellanox.com>
 +M:    Vadim Pasternak <vadimp@nvidia.com>
  L:    linux-leds@vger.kernel.org
  S:    Supported
  F:    Documentation/leds/leds-mlxcpld.rst
@@@ -11213,7 -11123,7 +11213,7 @@@ F:   drivers/leds/leds-mlxcpld.
  F:    drivers/leds/leds-mlxreg.c
  
  MELLANOX PLATFORM DRIVER
 -M:    Vadim Pasternak <vadimp@mellanox.com>
 +M:    Vadim Pasternak <vadimp@nvidia.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Supported
  F:    drivers/platform/x86/mlx-platform.c
@@@ -11319,8 -11229,8 +11319,8 @@@ S:   Supporte
  W:    http://linux-meson.com/
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/amlogic,meson-gx-ao-cec.yaml
 -F:    drivers/media/platform/meson/ao-cec-g12a.c
 -F:    drivers/media/platform/meson/ao-cec.c
 +F:    drivers/media/cec/platform/meson/ao-cec-g12a.c
 +F:    drivers/media/cec/platform/meson/ao-cec.c
  
  MESON NAND CONTROLLER DRIVER FOR AMLOGIC SOCS
  M:    Liang Yang <liang.yang@amlogic.com>
@@@ -11330,6 -11240,7 +11330,6 @@@ F:   Documentation/devicetree/bindings/mt
  F:    drivers/mtd/nand/raw/meson_*
  
  MESON VIDEO DECODER DRIVER FOR AMLOGIC SOCS
 -M:    Maxime Jourdan <mjourdan@baylibre.com>
  M:    Neil Armstrong <narmstrong@baylibre.com>
  L:    linux-media@vger.kernel.org
  L:    linux-amlogic@lists.infradead.org
@@@ -11360,19 -11271,6 +11360,19 @@@ W: http://www.monstr.eu/fdt
  T:    git git://git.monstr.eu/linux-2.6-microblaze.git
  F:    arch/microblaze/
  
 +MICROCHIP AT91 DMA DRIVERS
 +M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 +M:    Tudor Ambarus <tudor.ambarus@microchip.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    dmaengine@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/dma/atmel-dma.txt
 +F:    drivers/dma/at_hdmac.c
 +F:    drivers/dma/at_hdmac_regs.h
 +F:    drivers/dma/at_xdmac.c
 +F:    include/dt-bindings/dma/at91.h
 +F:    include/linux/platform_data/dma-atmel.h
 +
  MICROCHIP AT91 SERIAL DRIVER
  M:    Richard Genoud <richard.genoud@gmail.com>
  S:    Maintained
@@@ -11401,6 -11299,17 +11401,6 @@@ L:  alsa-devel@alsa-project.org (moderat
  S:    Supported
  F:    sound/soc/atmel
  
 -MICROCHIP DMA DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -L:    dmaengine@vger.kernel.org
 -S:    Supported
 -F:    Documentation/devicetree/bindings/dma/atmel-dma.txt
 -F:    drivers/dma/at_hdmac.c
 -F:    drivers/dma/at_hdmac_regs.h
 -F:    include/dt-bindings/dma/at91.h
 -F:    include/linux/platform_data/dma-atmel.h
 -
  MICROCHIP ECC DRIVER
  M:    Tudor Ambarus <tudor.ambarus@microchip.com>
  L:    linux-crypto@vger.kernel.org
@@@ -11492,6 -11401,7 +11492,6 @@@ F:   Documentation/devicetree/bindings/pw
  F:    drivers/pwm/pwm-atmel.c
  
  MICROCHIP SAMA5D2-COMPATIBLE ADC DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@microchip.com>
  M:    Eugen Hristev <eugen.hristev@microchip.com>
  L:    linux-iio@vger.kernel.org
  S:    Supported
@@@ -11529,12 -11439,12 +11529,12 @@@ L:        linux-arm-kernel@lists.infradead.or
  S:    Supported
  F:    drivers/usb/gadget/udc/atmel_usba_udc.*
  
 -MICROCHIP XDMA DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 -L:    linux-arm-kernel@lists.infradead.org
 -L:    dmaengine@vger.kernel.org
 +MICROCHIP WILC1000 WIFI DRIVER
 +M:    Ajay Singh <ajay.kathat@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +L:    linux-wireless@vger.kernel.org
  S:    Supported
 -F:    drivers/dma/at_xdmac.c
 +F:    drivers/net/wireless/microchip/wilc1000/
  
  MICROSEMI MIPS SOCS
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
@@@ -11591,17 -11501,6 +11591,17 @@@ F: arch/mips/configs/generic/board-bost
  F:    drivers/clk/imgtec/clk-boston.c
  F:    include/dt-bindings/clock/boston-clock.h
  
 +MIPS CORE DRIVERS
 +M:    Thomas Bogendoerfer <tsbogend@alpha.franken.de>
 +M:    Serge Semin <fancer.lancer@gmail.com>
 +L:    linux-mips@vger.kernel.org
 +S:    Supported
 +F:    drivers/bus/mips_cdmm.c
 +F:    drivers/clocksource/mips-gic-timer.c
 +F:    drivers/cpuidle/cpuidle-cps.c
 +F:    drivers/irqchip/irq-mips-cpu.c
 +F:    drivers/irqchip/irq-mips-gic.c
 +
  MIPS GENERIC PLATFORM
  M:    Paul Burton <paulburton@kernel.org>
  L:    linux-mips@vger.kernel.org
@@@ -11730,7 -11629,7 +11730,7 @@@ F:   drivers/media/pci/meye
  F:    include/uapi/linux/meye.h
  
  MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD
 -M:    Jiri Slaby <jirislaby@gmail.com>
 +M:    Jiri Slaby <jirislaby@kernel.org>
  S:    Maintained
  F:    Documentation/driver-api/serial/moxa-smartio.rst
  F:    drivers/tty/mxser.*
@@@ -11780,13 -11679,6 +11780,13 @@@ Q: http://patchwork.linuxtv.org/project
  T:    git git://linuxtv.org/anttip/media_tree.git
  F:    drivers/media/usb/msi2500/
  
 +MSTAR INTERRUPT CONTROLLER DRIVER
 +M:    Mark-PK Tsai <mark-pk.tsai@mediatek.com>
 +M:    Daniel Palmer <daniel@thingy.jp>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/interrupt-controller/mstar,mst-intc.yaml
 +F:    drivers/irqchip/irq-mst-intc.c
 +
  MSYSTEMS DISKONCHIP G3 MTD DRIVER
  M:    Robert Jarzmik <robert.jarzmik@free.fr>
  L:    linux-mtd@lists.infradead.org
@@@ -11991,8 -11883,8 +11991,8 @@@ NETERION 10GbE DRIVERS (s2io/vxge
  M:    Jon Mason <jdmason@kudzu.us>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/neterion/s2io.rst
 -F:    Documentation/networking/device_drivers/neterion/vxge.rst
 +F:    Documentation/networking/device_drivers/ethernet/neterion/s2io.rst
 +F:    Documentation/networking/device_drivers/ethernet/neterion/vxge.rst
  F:    drivers/net/ethernet/neterion/
  
  NETFILTER
@@@ -12028,8 -11920,7 +12028,8 @@@ F:   include/uapi/linux/netrom.
  F:    net/netrom/
  
  NETRONOME ETHERNET DRIVERS
 -M:    Jakub Kicinski <kuba@kernel.org>
 +M:    Simon Horman <simon.horman@netronome.com>
 +R:    Jakub Kicinski <kuba@kernel.org>
  L:    oss-drivers@netronome.com
  S:    Maintained
  F:    drivers/net/ethernet/netronome/
@@@ -12063,7 -11954,6 +12063,7 @@@ Q:   http://patchwork.ozlabs.org/project/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git
  F:    Documentation/devicetree/bindings/net/
 +F:    drivers/connector/
  F:    drivers/net/
  F:    include/linux/etherdevice.h
  F:    include/linux/fcdevice.h
@@@ -12089,7 -11979,6 +12089,7 @@@ NETWORKING [DSA
  M:    Andrew Lunn <andrew@lunn.ch>
  M:    Vivien Didelot <vivien.didelot@gmail.com>
  M:    Florian Fainelli <f.fainelli@gmail.com>
 +M:    Vladimir Oltean <olteanv@gmail.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/dsa/
  F:    drivers/net/dsa/
@@@ -12202,8 -12091,8 +12202,8 @@@ F:   net/ipv6/syncookies.
  F:    net/ipv6/tcp*.c
  
  NETWORKING [TLS]
 -M:    Boris Pismenny <borisp@mellanox.com>
 -M:    Aviad Yehezkel <aviadye@mellanox.com>
 +M:    Boris Pismenny <borisp@nvidia.com>
 +M:    Aviad Yehezkel <aviadye@nvidia.com>
  M:    John Fastabend <john.fastabend@gmail.com>
  M:    Daniel Borkmann <daniel@iogearbox.net>
  M:    Jakub Kicinski <kuba@kernel.org>
@@@ -12440,7 -12329,6 +12440,7 @@@ F:   drivers/nvme/target
  NVMEM FRAMEWORK
  M:    Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/srini/nvmem.git
  F:    Documentation/ABI/stable/sysfs-bus-nvmem
  F:    Documentation/devicetree/bindings/nvmem/
  F:    drivers/nvmem/
@@@ -12503,7 -12391,7 +12503,7 @@@ S:   Supporte
  F:    drivers/nfc/nxp-nci
  
  OBJAGG
 -M:    Jiri Pirko <jiri@mellanox.com>
 +M:    Jiri Pirko <jiri@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    include/linux/objagg.h
@@@ -12776,7 -12664,7 +12776,7 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    drivers/media/i2c/ov2685.c
  
  OMNIVISION OV2740 SENSOR DRIVER
 -M:    Tianshu Qiu <tian.shu.qiua@intel.com>
 +M:    Tianshu Qiu <tian.shu.qiu@intel.com>
  R:    Shawn Tu <shawnx.tu@intel.com>
  R:    Bingbu Cao <bingbu.cao@intel.com>
  L:    linux-media@vger.kernel.org
@@@ -12792,12 -12680,10 +12792,12 @@@ T:        git git://linuxtv.org/media_tree.gi
  F:    drivers/media/i2c/ov5640.c
  
  OMNIVISION OV5647 SENSOR DRIVER
 -M:    Luis Oliveira <lolivei@synopsys.com>
 +M:    Dave Stevenson <dave.stevenson@raspberrypi.com>
 +M:    Jacopo Mondi <jacopo@jmondi.org>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/ov5647.yaml
  F:    drivers/media/i2c/ov5647.c
  
  OMNIVISION OV5670 SENSOR DRIVER
@@@ -13060,9 -12946,7 +13060,9 @@@ F:   lib/packing.
  
  PADATA PARALLEL EXECUTION MECHANISM
  M:    Steffen Klassert <steffen.klassert@secunet.com>
 +M:    Daniel Jordan <daniel.m.jordan@oracle.com>
  L:    linux-crypto@vger.kernel.org
 +L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/core-api/padata.rst
  F:    include/linux/padata.h
@@@ -13149,7 -13033,7 +13149,7 @@@ F:   drivers/video/logo/logo_parisc
  F:    include/linux/hp_sdc.h
  
  PARMAN
 -M:    Jiri Pirko <jiri@mellanox.com>
 +M:    Jiri Pirko <jiri@nvidia.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    include/linux/parman.h
@@@ -13199,7 -13083,6 +13199,7 @@@ F:   drivers/firmware/pcdp.
  
  PCI DRIVER FOR AARDVARK (Marvell Armada 3700)
  M:    Thomas Petazzoni <thomas.petazzoni@bootlin.com>
 +M:    Pali Rohár <pali@kernel.org>
  L:    linux-pci@vger.kernel.org
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
@@@ -13348,14 -13231,12 +13348,14 @@@ S:        Maintaine
  F:    Documentation/devicetree/bindings/pci/designware-pcie.txt
  F:    drivers/pci/controller/dwc/*designware*
  
 -PCI DRIVER FOR TI DRA7XX
 +PCI DRIVER FOR TI DRA7XX/J721E
  M:    Kishon Vijay Abraham I <kishon@ti.com>
  L:    linux-omap@vger.kernel.org
  L:    linux-pci@vger.kernel.org
 +L:    linux-arm-kernel@lists.infradead.org
  S:    Supported
  F:    Documentation/devicetree/bindings/pci/ti-pci.txt
 +F:    drivers/pci/controller/cadence/pci-j721e.c
  F:    drivers/pci/controller/dwc/pci-dra7xx.c
  
  PCI DRIVER FOR TI KEYSTONE
@@@ -13384,6 -13265,7 +13384,6 @@@ F:   tools/pci
  
  PCI ENHANCED ERROR HANDLING (EEH) FOR POWERPC
  M:    Russell Currey <ruscur@russell.cc>
 -M:    Sam Bobroff <sbobroff@linux.ibm.com>
  M:    Oliver O'Halloran <oohall@gmail.com>
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Supported
@@@ -13469,10 -13351,10 +13469,10 @@@ F:        Documentation/devicetree/bindings/pc
  F:    drivers/pci/controller/dwc/*artpec*
  
  PCIE DRIVER FOR CAVIUM THUNDERX
 -M:    Robert Richter <rrichter@marvell.com>
 +M:    Robert Richter <rric@kernel.org>
  L:    linux-pci@vger.kernel.org
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Supported
 +S:    Odd Fixes
  F:    drivers/pci/controller/pci-thunder-*
  
  PCIE DRIVER FOR HISILICON
@@@ -13566,7 -13448,7 +13566,7 @@@ M:   Shannon Nelson <snelson@pensando.io
  M:    Pensando Drivers <drivers@pensando.io>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/pensando/ionic.rst
 +F:    Documentation/networking/device_drivers/ethernet/pensando/ionic.rst
  F:    drivers/net/ethernet/pensando/
  
  PER-CPU MEMORY ALLOCATOR
@@@ -13606,21 -13488,14 +13606,21 @@@ F:        arch/*/kernel/perf_event*.
  F:    include/linux/perf_event.h
  F:    include/uapi/linux/perf_event.h
  F:    kernel/events/*
 +F:    tools/lib/perf/
  F:    tools/perf/
  
 -PERFORMANCE EVENTS SUBSYSTEM ARM64 PMU EVENTS
 +PERFORMANCE EVENTS TOOLING ARM64
  R:    John Garry <john.garry@huawei.com>
  R:    Will Deacon <will@kernel.org>
 +R:    Mathieu Poirier <mathieu.poirier@linaro.org>
 +R:    Leo Yan <leo.yan@linaro.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
 +F:    tools/build/feature/test-libopencsd.c
 +F:    tools/perf/arch/arm*/
  F:    tools/perf/pmu-events/arch/arm64/
 +F:    tools/perf/util/arm-spe*
 +F:    tools/perf/util/cs-etm*
  
  PERSONALITY HANDLING
  M:    Christoph Hellwig <hch@infradead.org>
@@@ -13789,13 -13664,6 +13789,13 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/iio/chemical/plantower,pms7003.yaml
  F:    drivers/iio/chemical/pms7003.c
  
 +PLDMFW LIBRARY
 +M:    Jacob Keller <jacob.e.keller@intel.com>
 +S:    Maintained
 +F:    Documentation/driver-api/pldmfw/
 +F:    include/linux/pldmfw.h
 +F:    lib/pldmfw/
 +
  PLX DMA DRIVER
  M:    Logan Gunthorpe <logang@deltatee.com>
  S:    Maintained
@@@ -13970,6 -13838,7 +13970,7 @@@ PRINT
  M:    Petr Mladek <pmladek@suse.com>
  M:    Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
  R:    Steven Rostedt <rostedt@goodmis.org>
+ R:    John Ogness <john.ogness@linutronix.de>
  S:    Maintained
  F:    include/linux/printk.h
  F:    kernel/printk/
@@@ -14304,7 -14173,7 +14305,7 @@@ M:   Laurentiu Tudor <laurentiu.tudor@nxp
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt
 -F:    Documentation/networking/device_drivers/freescale/dpaa2/overview.rst
 +F:    Documentation/networking/device_drivers/ethernet/freescale/dpaa2/overview.rst
  F:    drivers/bus/fsl-mc/
  
  QT1010 MEDIA DRIVER
@@@ -14411,7 -14280,7 +14412,7 @@@ M:   Rob Clark <robdclark@gmail.com
  L:    iommu@lists.linux-foundation.org
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
 -F:    drivers/iommu/qcom_iommu.c
 +F:    drivers/iommu/arm/arm-smmu/qcom_iommu.c
  
  QUALCOMM IPCC MAILBOX DRIVER
  M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
@@@ -14426,12 -14295,12 +14427,12 @@@ M:        Subash Abhinov Kasiviswanathan <suba
  M:    Sean Tranchetti <stranche@codeaurora.org>
  L:    netdev@vger.kernel.org
  S:    Maintained
 -F:    Documentation/networking/device_drivers/qualcomm/rmnet.rst
 +F:    Documentation/networking/device_drivers/cellular/qualcomm/rmnet.rst
  F:    drivers/net/ethernet/qualcomm/rmnet/
  F:    include/linux/if_rmnet.h
  
  QUALCOMM TSENS THERMAL DRIVER
 -M:    Amit Kucheria <amit.kucheria@linaro.org>
 +M:    Amit Kucheria <amitk@kernel.org>
  L:    linux-pm@vger.kernel.org
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
@@@ -14571,19 -14440,6 +14572,19 @@@ L: linux-wireless@vger.kernel.or
  S:    Orphan
  F:    drivers/net/wireless/ray*
  
 +RC-CORE / LIRC FRAMEWORK
 +M:    Sean Young <sean@mess.org>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +W:    http://linuxtv.org
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/driver-api/media/rc-core.rst
 +F:    Documentation/userspace-api/media/rc/
 +F:    drivers/media/rc/
 +F:    include/media/rc-map.h
 +F:    include/media/rc-core.h
 +F:    include/uapi/linux/lirc.h
 +
  RCMM REMOTE CONTROLS DECODER
  M:    Patrick Lerda <patrick9876@free.fr>
  S:    Maintained
@@@ -14600,18 -14456,6 +14601,18 @@@ S: Supporte
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev
  F:    tools/testing/selftests/rcutorture
  
 +RDACM20 Camera Sensor
 +M:    Jacopo Mondi <jacopo+renesas@jmondi.org>
 +M:    Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
 +M:    Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
 +M:    Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/imi,rdacm2x-gmsl.yaml
 +F:    drivers/media/i2c/max9271.c
 +F:    drivers/media/i2c/max9271.h
 +F:    drivers/media/i2c/rdacm20.c
 +
  RDC R-321X SoC
  M:    Florian Fainelli <florian@openwrt.org>
  S:    Maintained
@@@ -14739,7 -14583,7 +14740,7 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git rproc-next
  F:    Documentation/ABI/testing/sysfs-class-remoteproc
  F:    Documentation/devicetree/bindings/remoteproc/
 -F:    Documentation/remoteproc.txt
 +F:    Documentation/staging/remoteproc.rst
  F:    drivers/remoteproc/
  F:    include/linux/remoteproc.h
  F:    include/linux/remoteproc/
@@@ -14751,7 -14595,7 +14752,7 @@@ L:   linux-remoteproc@vger.kernel.or
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git rpmsg-next
  F:    Documentation/ABI/testing/sysfs-bus-rpmsg
 -F:    Documentation/rpmsg.txt
 +F:    Documentation/staging/rpmsg.rst
  F:    drivers/rpmsg/
  F:    include/linux/rpmsg.h
  F:    include/linux/rpmsg/
@@@ -14904,11 -14748,8 +14905,11 @@@ F: include/linux/hid-roccat
  
  ROCKCHIP ISP V1 DRIVER
  M:    Helen Koike <helen.koike@collabora.com>
 +M:    Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
 +F:    Documentation/admin-guide/media/rkisp1.rst
 +F:    Documentation/userspace-api/media/v4l/pixfmt-meta-rkisp1.rst
  F:    drivers/staging/media/rkisp1/
  
  ROCKCHIP RASTER 2D GRAPHIC ACCELERATION UNIT DRIVER
@@@ -14946,13 -14787,6 +14947,13 @@@ L: linux-serial@vger.kernel.or
  S:    Odd Fixes
  F:    drivers/tty/serial/rp2.*
  
 +ROHM BD99954 CHARGER IC
 +R:    Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
 +L:    linux-power@fi.rohmeurope.com
 +S:    Supported
 +F:    drivers/power/supply/bd99954-charger.c
 +F:    drivers/power/supply/bd99954-charger.h
 +
  ROHM BH1750 AMBIENT LIGHT SENSOR DRIVER
  M:    Tomasz Duszynski <tduszyns@gmail.com>
  S:    Maintained
@@@ -14970,31 -14804,6 +14971,31 @@@ F: drivers/mfd/bd9571mwv.
  F:    drivers/regulator/bd9571mwv-regulator.c
  F:    include/linux/mfd/bd9571mwv.h
  
 +ROHM POWER MANAGEMENT IC DEVICE DRIVERS
 +R:    Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
 +L:    linux-power@fi.rohmeurope.com
 +S:    Supported
 +F:    Documentation/devicetree/bindings/mfd/rohm,bd70528-pmic.txt
 +F:    Documentation/devicetree/bindings/regulator/rohm,bd70528-regulator.txt
 +F:    drivers/clk/clk-bd718x7.c
 +F:    drivers/gpio/gpio-bd70528.c
 +F:    drivers/gpio/gpio-bd71828.c
 +F:    drivers/mfd/rohm-bd70528.c
 +F:    drivers/mfd/rohm-bd71828.c
 +F:    drivers/mfd/rohm-bd718x7.c
 +F:    drivers/power/supply/bd70528-charger.c
 +F:    drivers/regulator/bd70528-regulator.c
 +F:    drivers/regulator/bd71828-regulator.c
 +F:    drivers/regulator/bd718x7-regulator.c
 +F:    drivers/regulator/rohm-regulator.c
 +F:    drivers/rtc/rtc-bd70528.c
 +F:    drivers/watchdog/bd70528_wdt.c
 +F:    include/linux/mfd/rohm-bd70528.h
 +F:    include/linux/mfd/rohm-bd71828.h
 +F:    include/linux/mfd/rohm-bd718x7.h
 +F:    include/linux/mfd/rohm-generic.h
 +F:    include/linux/mfd/rohm-shared.h
 +
  ROSE NETWORK LAYER
  M:    Ralf Baechle <ralf@linux-mips.org>
  L:    linux-hams@vger.kernel.org
@@@ -15404,7 -15213,6 +15405,7 @@@ R:   Dietmar Eggemann <dietmar.eggemann@a
  R:    Steven Rostedt <rostedt@goodmis.org> (SCHED_FIFO/SCHED_RR)
  R:    Ben Segall <bsegall@google.com> (CONFIG_CFS_BANDWIDTH)
  R:    Mel Gorman <mgorman@suse.de> (CONFIG_NUMA_BALANCING)
 +R:    Daniel Bristot de Oliveira <bristot@redhat.com> (SCHED_DEADLINE)
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched/core
@@@ -15526,8 -15334,8 +15527,8 @@@ F:   drivers/mmc/host/sdricoh_cs.
  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
 +F:    drivers/media/cec/platform/seco/seco-cec.c
 +F:    drivers/media/cec/platform/seco/seco-cec.h
  
  SECURE COMPUTING
  M:    Kees Cook <keescook@chromium.org>
@@@ -15559,7 -15367,7 +15560,7 @@@ F:   drivers/mmc/host/sdhci
  F:    include/linux/mmc/sdhci*
  
  SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) MICROCHIP DRIVER
 -M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 +M:    Eugen Hristev <eugen.hristev@microchip.com>
  L:    linux-mmc@vger.kernel.org
  S:    Supported
  F:    drivers/mmc/host/sdhci-of-at91.c
@@@ -15596,7 -15404,6 +15597,7 @@@ F:   include/uapi/linux/sed
  SECURITY CONTACT
  M:    Security Officers <security@kernel.org>
  S:    Supported
 +F:    Documentation/admin-guide/security-bugs.rst
  
  SECURITY SUBSYSTEM
  M:    James Morris <jmorris@namei.org>
@@@ -15625,20 -15432,11 +15626,20 @@@ F:        scripts/selinux
  F:    security/selinux/
  
  SENSABLE PHANTOM
 -M:    Jiri Slaby <jirislaby@gmail.com>
 +M:    Jiri Slaby <jirislaby@kernel.org>
  S:    Maintained
  F:    drivers/misc/phantom.c
  F:    include/uapi/linux/phantom.h
  
 +SENSIRION SCD30 CARBON DIOXIDE SENSOR DRIVER
 +M:    Tomasz Duszynski <tomasz.duszynski@octakon.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/chemical/sensirion,scd30.yaml
 +F:    drivers/iio/chemical/scd30.h
 +F:    drivers/iio/chemical/scd30_core.c
 +F:    drivers/iio/chemical/scd30_i2c.c
 +F:    drivers/iio/chemical/scd30_serial.c
 +
  SENSIRION SPS30 AIR POLLUTION SENSOR DRIVER
  M:    Tomasz Duszynski <tduszyns@gmail.com>
  S:    Maintained
@@@ -15690,7 -15488,7 +15691,7 @@@ F:   drivers/net/phy/phylink.
  F:    drivers/net/phy/sfp*
  F:    include/linux/phylink.h
  F:    include/linux/sfp.h
 -K:    phylink
 +K:    phylink\.h|struct\s+phylink|\.phylink|>phylink_|phylink_(autoneg|clear|connect|create|destroy|disconnect|ethtool|helper|mac|mii|of|set|start|stop|test|validate)
  
  SGI GRU DRIVER
  M:    Dimitri Sivanich <sivanich@sgi.com>
@@@ -16037,6 -15835,13 +16038,6 @@@ L:  netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/smsc/smsc9420.*
  
 -SOC-CAMERA V4L2 SUBSYSTEM
 -L:    linux-media@vger.kernel.org
 -S:    Orphan
 -T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/staging/media/soc_camera/
 -F:    include/media/soc_camera.h
 -
  SOCIONEXT (SNI) AVE NETWORK DRIVER
  M:    Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
  L:    netdev@vger.kernel.org
@@@ -16085,7 -15890,7 +16086,7 @@@ F:   drivers/infiniband/sw/siw
  F:    include/uapi/rdma/siw-abi.h
  
  SOFT-ROCE DRIVER (rxe)
 -M:    Zhu Yanjun <yanjunz@mellanox.com>
 +M:    Zhu Yanjun <yanjunz@nvidia.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
  F:    drivers/infiniband/sw/rxe/
@@@ -16094,6 -15899,7 +16095,6 @@@ F:   include/uapi/rdma/rdma_user_rxe.
  SOFTLOGIC 6x10 MPEG CODEC
  M:    Bluecherry Maintainers <maintainers@bluecherrydvr.com>
  M:    Anton Sviridenko <anton@corp.bluecherry.net>
 -M:    Andrey Utkin <andrey.utkin@corp.bluecherry.net>
  M:    Andrey Utkin <andrey_utkin@fastmail.com>
  M:    Ismael Luceno <ismael@iodev.co.uk>
  L:    linux-media@vger.kernel.org
@@@ -16175,7 -15981,7 +16176,7 @@@ M:   Leon Luo <leonl@leopardimaging.com
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/imx274.txt
 +F:    Documentation/devicetree/bindings/media/i2c/sony,imx274.yaml
  F:    drivers/media/i2c/imx274.c
  
  SONY IMX290 SENSOR DRIVER
@@@ -16277,9 -16083,8 +16278,9 @@@ F:   sound/soc/sof
  
  SOUNDWIRE SUBSYSTEM
  M:    Vinod Koul <vkoul@kernel.org>
 -M:    Sanyog Kale <sanyog.r.kale@intel.com>
 +M:    Bard Liao <yung-chuan.liao@linux.intel.com>
  R:    Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
 +R:    Sanyog Kale <sanyog.r.kale@intel.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/driver-api/soundwire/
@@@ -16330,16 -16135,6 +16331,16 @@@ Q: https://patchwork.kernel.org/project
  B:    https://bugzilla.kernel.org/enter_bug.cgi?component=Sparse&product=Tools
  F:    include/linux/compiler.h
  
 +SPEAKUP CONSOLE SPEECH DRIVER
 +M:    William Hubbs <w.d.hubbs@gmail.com>
 +M:    Chris Brannon <chris@the-brannons.com>
 +M:    Kirk Reiser <kirk@reisers.ca>
 +M:    Samuel Thibault <samuel.thibault@ens-lyon.org>
 +L:    speakup@linux-speakup.org
 +S:    Odd Fixes
 +W:    http://www.linux-speakup.org/
 +F:    drivers/accessibility/speakup/
 +
  SPEAR CLOCK FRAMEWORK SUPPORT
  M:    Viresh Kumar <vireshk@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -16384,7 -16179,7 +16385,7 @@@ SPIDERNET NETWORK DRIVER for CEL
  M:    Ishizaki Kou <kou.ishizaki@toshiba.co.jp>
  L:    netdev@vger.kernel.org
  S:    Supported
 -F:    Documentation/networking/device_drivers/toshiba/spider_net.rst
 +F:    Documentation/networking/device_drivers/ethernet/toshiba/spider_net.rst
  F:    drivers/net/ethernet/toshiba/spider_net*
  
  SPMI SUBSYSTEM
@@@ -16527,11 -16322,28 +16528,11 @@@ L:        linux-fbdev@vger.kernel.or
  S:    Maintained
  F:    drivers/staging/sm750fb/
  
 -STAGING - SPEAKUP CONSOLE SPEECH DRIVER
 -M:    William Hubbs <w.d.hubbs@gmail.com>
 -M:    Chris Brannon <chris@the-brannons.com>
 -M:    Kirk Reiser <kirk@reisers.ca>
 -M:    Samuel Thibault <samuel.thibault@ens-lyon.org>
 -L:    speakup@linux-speakup.org
 -S:    Odd Fixes
 -W:    http://www.linux-speakup.org/
 -F:    drivers/staging/speakup/
 -
  STAGING - VIA VT665X DRIVERS
  M:    Forest Bond <forest@alittletooquiet.net>
  S:    Odd Fixes
  F:    drivers/staging/vt665?/
  
 -STAGING - WILC1000 WIFI DRIVER
 -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/
 -
  STAGING SUBSYSTEM
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  L:    devel@driverdev.osuosl.org
@@@ -16561,7 -16373,7 +16562,7 @@@ STI CEC DRIVE
  M:    Benjamin Gaignard <benjamin.gaignard@linaro.org>
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/stih-cec.txt
 -F:    drivers/media/platform/sti/cec/
 +F:    drivers/media/cec/platform/sti/
  
  STK1160 USB VIDEO CAPTURE DRIVER
  M:    Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
@@@ -16594,7 -16406,7 +16595,7 @@@ M:   Jose Abreu <joabreu@synopsys.com
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.stlinux.com
 -F:    Documentation/networking/device_drivers/stmicro/
 +F:    Documentation/networking/device_drivers/ethernet/stmicro/
  F:    drivers/net/ethernet/stmicro/stmmac/
  
  SUN3/3X
@@@ -16745,13 -16557,6 +16746,13 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/gpio/snps,dw-apb-gpio.yaml
  F:    drivers/gpio/gpio-dwapb.c
  
 +SYNOPSYS DESIGNWARE APB SSI DRIVER
 +M:    Serge Semin <fancer.lancer@gmail.com>
 +L:    linux-spi@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/spi/snps,dw-apb-ssi.yaml
 +F:    drivers/spi/spi-dw*
 +
  SYNOPSYS DESIGNWARE AXI DMAC DRIVER
  M:    Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
  S:    Maintained
@@@ -17042,7 -16847,7 +17043,7 @@@ TEE SUBSYSTE
  M:    Jens Wiklander <jens.wiklander@linaro.org>
  L:    op-tee@lists.trustedfirmware.org
  S:    Maintained
 -F:    Documentation/tee.txt
 +F:    Documentation/staging/tee.rst
  F:    drivers/tee/
  F:    include/linux/tee_drv.h
  F:    include/uapi/linux/tee.h
@@@ -17076,10 -16881,8 +17077,10 @@@ F: drivers/i2c/busses/i2c-tegra.
  
  TEGRA IOMMU DRIVERS
  M:    Thierry Reding <thierry.reding@gmail.com>
 +R:    Krishna Reddy <vdumpa@nvidia.com>
  L:    linux-tegra@vger.kernel.org
  S:    Supported
 +F:    drivers/iommu/arm/arm-smmu/arm-smmu-nvidia.c
  F:    drivers/iommu/tegra*
  
  TEGRA KBC DRIVER
@@@ -17170,11 -16973,10 +17171,11 @@@ M:        Tero Kristo <t-kristo@ti.com
  M:    Santosh Shilimkar <ssantosh@kernel.org>
  L:    linux-arm-kernel@lists.infradead.org
  S:    Maintained
 +F:    Documentation/devicetree/bindings/arm/keystone/ti,k3-sci-common.yaml
  F:    Documentation/devicetree/bindings/arm/keystone/ti,sci.txt
  F:    Documentation/devicetree/bindings/clock/ti,sci-clk.txt
 -F:    Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.txt
 -F:    Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt
 +F:    Documentation/devicetree/bindings/interrupt-controller/ti,sci-inta.yaml
 +F:    Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.yaml
  F:    Documentation/devicetree/bindings/reset/ti,sci-reset.txt
  F:    Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
  F:    drivers/clk/keystone/sci-clk.c
@@@ -17199,7 -17001,7 +17200,7 @@@ F:   drivers/media/radio/radio-raremono.
  THERMAL
  M:    Zhang Rui <rui.zhang@intel.com>
  M:    Daniel Lezcano <daniel.lezcano@linaro.org>
 -R:    Amit Kucheria <amit.kucheria@verdurent.com>
 +R:    Amit Kucheria <amitk@kernel.org>
  L:    linux-pm@vger.kernel.org
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-pm/list/
@@@ -17232,14 -17034,6 +17233,14 @@@ F: drivers/thermal/cpufreq_cooling.
  F:    drivers/thermal/cpuidle_cooling.c
  F:    include/linux/cpu_cooling.h
  
 +THERMAL/POWER_ALLOCATOR
 +M:    Lukasz Luba <lukasz.luba@arm.com>
 +L:    linux-pm@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/driver-api/thermal/power_allocator.rst
 +F:    drivers/thermal/gov_power_allocator.c
 +F:    include/trace/events/thermal_power_allocator.h
 +
  THINKPAD ACPI EXTRAS DRIVER
  M:    Henrique de Moraes Holschuh <ibm-acpi@hmh.eng.br>
  L:    ibm-acpi-devel@lists.sourceforge.net
@@@ -17271,8 -17065,8 +17272,8 @@@ S:   Maintaine
  F:    drivers/net/thunderbolt.c
  
  THUNDERX GPIO DRIVER
 -M:    Robert Richter <rrichter@marvell.com>
 -S:    Maintained
 +M:    Robert Richter <rric@kernel.org>
 +S:    Odd Fixes
  F:    drivers/gpio/gpio-thunderx.c
  
  TI AM437X VPFE DRIVER
@@@ -17500,7 -17294,7 +17501,7 @@@ M:   Samuel Chessman <chessman@tux.org
  L:    tlan-devel@lists.sourceforge.net (subscribers-only)
  S:    Maintained
  W:    http://sourceforge.net/projects/tlan/
 -F:    Documentation/networking/device_drivers/ti/tlan.rst
 +F:    Documentation/networking/device_drivers/ethernet/ti/tlan.rst
  F:    drivers/net/ethernet/ti/tlan.*
  
  TM6000 VIDEO4LINUX DRIVER
@@@ -17618,7 -17412,7 +17619,7 @@@ L:   linux-integrity@vger.kernel.or
  S:    Maintained
  W:    https://kernsec.org/wiki/index.php/Linux_Kernel_Integrity
  Q:    https://patchwork.kernel.org/project/linux-integrity/list/
 -T:    git git://git.infradead.org/users/jjs/linux-tpmdd.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git
  F:    drivers/char/tpm/
  
  TRACING
@@@ -17657,7 -17451,7 +17658,7 @@@ K:   ^Subject:.*(?i)trivia
  
  TTY LAYER
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -M:    Jiri Slaby <jslaby@suse.com>
 +M:    Jiri Slaby <jirislaby@kernel.org>
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git
  F:    Documentation/driver-api/serial/
@@@ -17755,7 -17549,6 +17756,7 @@@ S:   Supporte
  W:    http://www.linux-mtd.infradead.org/doc/ubifs.html
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs.git next
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs.git fixes
 +F:    Documentation/filesystems/ubifs-authentication.rst
  F:    Documentation/filesystems/ubifs.rst
  F:    fs/ubifs/
  
@@@ -18149,6 -17942,14 +18150,6 @@@ T:  git git://linuxtv.org/media_tree.gi
  F:    drivers/media/usb/uvc/
  F:    include/uapi/linux/uvcvideo.h
  
 -USB VISION DRIVER
 -M:    Hans Verkuil <hverkuil@xs4all.nl>
 -L:    linux-media@vger.kernel.org
 -S:    Odd Fixes
 -W:    https://linuxtv.org
 -T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/staging/media/usbvision/
 -
  USB WEBCAM GADGET
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  L:    linux-usb@vger.kernel.org
@@@ -18302,8 -18103,7 +18303,8 @@@ F:   drivers/gpu/vga/vga_switcheroo.
  F:    include/linux/vga_switcheroo.h
  
  VIA RHINE NETWORK DRIVER
 -S:    Orphan
 +S:    Maintained
 +M:    Kevin Brace <kevinbrace@bracecomputerlab.com>
  F:    drivers/net/ethernet/via/via-rhine.c
  
  VIA SD/MMC CARD CONTROLLER DRIVER
@@@ -18348,8 -18148,10 +18349,8 @@@ S:  Maintaine
  F:    drivers/media/platform/video-mux.c
  
  VIDEOBUF2 FRAMEWORK
 -M:    Pawel Osciak <pawel@osciak.com>
 +M:    Tomasz Figa <tfiga@chromium.org>
  M:    Marek Szyprowski <m.szyprowski@samsung.com>
 -M:    Kyungmin Park <kyungmin.park@samsung.com>
 -R:    Tomasz Figa <tfiga@chromium.org>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    drivers/media/common/videobuf2/*
@@@ -18539,14 -18341,6 +18540,14 @@@ W: https://linuxtv.or
  T:    git git://linuxtv.org/media_tree.git
  F:    drivers/media/test-drivers/vivid/*
  
 +VIDTV VIRTUAL DIGITAL TV DRIVER
 +M:    Daniel W. S. Almeida <dwlsalmeida@gmail.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +W:    https://linuxtv.org
 +T:    git git://linuxtv.org/media_tree.git
 +F:    drivers/media/test-drivers/vidtv/*
 +
  VLYNQ BUS
  M:    Florian Fainelli <f.fainelli@gmail.com>
  L:    openwrt-devel@lists.openwrt.org (subscribers-only)
@@@ -18914,10 -18708,10 +18915,10 @@@ T:        git git://git.kernel.org/pub/scm/lin
  F:    arch/x86/mm/
  
  X86 PLATFORM DRIVERS
 -M:    Darren Hart <dvhart@infradead.org>
 -M:    Andy Shevchenko <andy@infradead.org>
 +M:    Hans de Goede <hdegoede@redhat.com>
 +M:    Mark Gross <mgross@linux.intel.com>
  L:    platform-driver-x86@vger.kernel.org
 -S:    Odd Fixes
 +S:    Maintained
  T:    git git://git.infradead.org/linux-platform-drivers-x86.git
  F:    drivers/platform/olpc/
  F:    drivers/platform/x86/
@@@ -18931,15 -18725,6 +18932,15 @@@ S: Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/core
  F:    arch/x86/platform
  
 +X86 PLATFORM UV HPE SUPERDOME FLEX
 +M:    Steve Wahl <steve.wahl@hpe.com>
 +R:    Dimitri Sivanich <dimitri.sivanich@hpe.com>
 +R:    Russ Anderson <russ.anderson@hpe.com>
 +S:    Supported
 +F:    arch/x86/include/asm/uv/
 +F:    arch/x86/kernel/apic/x2apic_uv_x.c
 +F:    arch/x86/platform/uv/
 +
  X86 VDSO
  M:    Andy Lutomirski <luto@kernel.org>
  L:    linux-kernel@vger.kernel.org
@@@ -19138,24 -18923,6 +19139,24 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/platform/xilinx/
  F:    include/uapi/linux/xilinx-v4l2-controls.h
  
 +XILINX ZYNQMP DPDMA DRIVER
 +M:    Hyun Kwon <hyun.kwon@xilinx.com>
 +M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 +L:    dmaengine@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/dma/xilinx/xlnx,zynqmp-dpdma.yaml
 +F:    drivers/dma/xilinx/xilinx_dpdma.c
 +F:    include/dt-bindings/dma/xlnx-zynqmp-dpdma.h
 +
 +XILINX ZYNQMP PSGTR PHY DRIVER
 +M:    Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com>
 +M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Supported
 +T:    git https://github.com/Xilinx/linux-xlnx.git
 +F:    Documentation/devicetree/bindings/phy/xlnx,zynqmp-psgtr.yaml
 +F:    drivers/phy/xilinx/phy-zynqmp.c
 +
  XILLYBUS DRIVER
  M:    Eli Billauer <eli.billauer@gmail.com>
  L:    linux-kernel@vger.kernel.org
@@@ -19212,7 -18979,7 +19213,7 @@@ L:   linux-hams@vger.kernel.or
  S:    Maintained
  W:    http://yaina.de/jreuter/
  W:    http://www.qsl.net/dl1bke/
 -F:    Documentation/networking/z8530drv.rst
 +F:    Documentation/networking/device_drivers/hamradio/z8530drv.rst
  F:    drivers/net/hamradio/*scc.c
  F:    drivers/net/hamradio/z8530.h
  
@@@ -19267,16 -19034,6 +19268,16 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/filesystems/zonefs.rst
  F:    fs/zonefs/
  
 +ZR36067 VIDEO FOR LINUX DRIVER
 +M:    Corentin Labbe <clabbe@baylibre.com>
 +L:    mjpeg-users@lists.sourceforge.net
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +W:    http://mjpeg.sourceforge.net/driver-zoran/
 +Q:    https://patchwork.linuxtv.org/project/linux-media/list/
 +F:    Documentation/driver-api/media/drivers/zoran.rst
 +F:    drivers/staging/media/zoran/
 +
  ZPOOL COMPRESSED PAGE STORAGE API
  M:    Dan Streetman <ddstreet@ieee.org>
  L:    linux-mm@kvack.org
diff --combined drivers/base/core.c
@@@ -122,7 -122,7 +122,7 @@@ int device_links_read_lock_held(void
   * Check if @target depends on @dev or any device dependent on it (its child or
   * its consumer etc).  Return 1 if that is the case or 0 otherwise.
   */
 -static int device_is_dependent(struct device *dev, void *target)
 +int device_is_dependent(struct device *dev, void *target)
  {
        struct device_link *link;
        int ret;
@@@ -236,210 -236,6 +236,210 @@@ void device_pm_move_to_tail(struct devi
        device_links_read_unlock(idx);
  }
  
 +#define to_devlink(dev)       container_of((dev), struct device_link, link_dev)
 +
 +static ssize_t status_show(struct device *dev,
 +                        struct device_attribute *attr, char *buf)
 +{
 +      char *status;
 +
 +      switch (to_devlink(dev)->status) {
 +      case DL_STATE_NONE:
 +              status = "not tracked"; break;
 +      case DL_STATE_DORMANT:
 +              status = "dormant"; break;
 +      case DL_STATE_AVAILABLE:
 +              status = "available"; break;
 +      case DL_STATE_CONSUMER_PROBE:
 +              status = "consumer probing"; break;
 +      case DL_STATE_ACTIVE:
 +              status = "active"; break;
 +      case DL_STATE_SUPPLIER_UNBIND:
 +              status = "supplier unbinding"; break;
 +      default:
 +              status = "unknown"; break;
 +      }
 +      return sprintf(buf, "%s\n", status);
 +}
 +static DEVICE_ATTR_RO(status);
 +
 +static ssize_t auto_remove_on_show(struct device *dev,
 +                                 struct device_attribute *attr, char *buf)
 +{
 +      struct device_link *link = to_devlink(dev);
 +      char *str;
 +
 +      if (link->flags & DL_FLAG_AUTOREMOVE_SUPPLIER)
 +              str = "supplier unbind";
 +      else if (link->flags & DL_FLAG_AUTOREMOVE_CONSUMER)
 +              str = "consumer unbind";
 +      else
 +              str = "never";
 +
 +      return sprintf(buf, "%s\n", str);
 +}
 +static DEVICE_ATTR_RO(auto_remove_on);
 +
 +static ssize_t runtime_pm_show(struct device *dev,
 +                             struct device_attribute *attr, char *buf)
 +{
 +      struct device_link *link = to_devlink(dev);
 +
 +      return sprintf(buf, "%d\n", !!(link->flags & DL_FLAG_PM_RUNTIME));
 +}
 +static DEVICE_ATTR_RO(runtime_pm);
 +
 +static ssize_t sync_state_only_show(struct device *dev,
 +                                  struct device_attribute *attr, char *buf)
 +{
 +      struct device_link *link = to_devlink(dev);
 +
 +      return sprintf(buf, "%d\n", !!(link->flags & DL_FLAG_SYNC_STATE_ONLY));
 +}
 +static DEVICE_ATTR_RO(sync_state_only);
 +
 +static struct attribute *devlink_attrs[] = {
 +      &dev_attr_status.attr,
 +      &dev_attr_auto_remove_on.attr,
 +      &dev_attr_runtime_pm.attr,
 +      &dev_attr_sync_state_only.attr,
 +      NULL,
 +};
 +ATTRIBUTE_GROUPS(devlink);
 +
 +static void device_link_free(struct device_link *link)
 +{
 +      while (refcount_dec_not_one(&link->rpm_active))
 +              pm_runtime_put(link->supplier);
 +
 +      put_device(link->consumer);
 +      put_device(link->supplier);
 +      kfree(link);
 +}
 +
 +#ifdef CONFIG_SRCU
 +static void __device_link_free_srcu(struct rcu_head *rhead)
 +{
 +      device_link_free(container_of(rhead, struct device_link, rcu_head));
 +}
 +
 +static void devlink_dev_release(struct device *dev)
 +{
 +      struct device_link *link = to_devlink(dev);
 +
 +      call_srcu(&device_links_srcu, &link->rcu_head, __device_link_free_srcu);
 +}
 +#else
 +static void devlink_dev_release(struct device *dev)
 +{
 +      device_link_free(to_devlink(dev));
 +}
 +#endif
 +
 +static struct class devlink_class = {
 +      .name = "devlink",
 +      .owner = THIS_MODULE,
 +      .dev_groups = devlink_groups,
 +      .dev_release = devlink_dev_release,
 +};
 +
 +static int devlink_add_symlinks(struct device *dev,
 +                              struct class_interface *class_intf)
 +{
 +      int ret;
 +      size_t len;
 +      struct device_link *link = to_devlink(dev);
 +      struct device *sup = link->supplier;
 +      struct device *con = link->consumer;
 +      char *buf;
 +
 +      len = max(strlen(dev_name(sup)), strlen(dev_name(con)));
 +      len += strlen("supplier:") + 1;
 +      buf = kzalloc(len, GFP_KERNEL);
 +      if (!buf)
 +              return -ENOMEM;
 +
 +      ret = sysfs_create_link(&link->link_dev.kobj, &sup->kobj, "supplier");
 +      if (ret)
 +              goto out;
 +
 +      ret = sysfs_create_link(&link->link_dev.kobj, &con->kobj, "consumer");
 +      if (ret)
 +              goto err_con;
 +
 +      snprintf(buf, len, "consumer:%s", dev_name(con));
 +      ret = sysfs_create_link(&sup->kobj, &link->link_dev.kobj, buf);
 +      if (ret)
 +              goto err_con_dev;
 +
 +      snprintf(buf, len, "supplier:%s", dev_name(sup));
 +      ret = sysfs_create_link(&con->kobj, &link->link_dev.kobj, buf);
 +      if (ret)
 +              goto err_sup_dev;
 +
 +      goto out;
 +
 +err_sup_dev:
 +      snprintf(buf, len, "consumer:%s", dev_name(con));
 +      sysfs_remove_link(&sup->kobj, buf);
 +err_con_dev:
 +      sysfs_remove_link(&link->link_dev.kobj, "consumer");
 +err_con:
 +      sysfs_remove_link(&link->link_dev.kobj, "supplier");
 +out:
 +      kfree(buf);
 +      return ret;
 +}
 +
 +static void devlink_remove_symlinks(struct device *dev,
 +                                 struct class_interface *class_intf)
 +{
 +      struct device_link *link = to_devlink(dev);
 +      size_t len;
 +      struct device *sup = link->supplier;
 +      struct device *con = link->consumer;
 +      char *buf;
 +
 +      sysfs_remove_link(&link->link_dev.kobj, "consumer");
 +      sysfs_remove_link(&link->link_dev.kobj, "supplier");
 +
 +      len = max(strlen(dev_name(sup)), strlen(dev_name(con)));
 +      len += strlen("supplier:") + 1;
 +      buf = kzalloc(len, GFP_KERNEL);
 +      if (!buf) {
 +              WARN(1, "Unable to properly free device link symlinks!\n");
 +              return;
 +      }
 +
 +      snprintf(buf, len, "supplier:%s", dev_name(sup));
 +      sysfs_remove_link(&con->kobj, buf);
 +      snprintf(buf, len, "consumer:%s", dev_name(con));
 +      sysfs_remove_link(&sup->kobj, buf);
 +      kfree(buf);
 +}
 +
 +static struct class_interface devlink_class_intf = {
 +      .class = &devlink_class,
 +      .add_dev = devlink_add_symlinks,
 +      .remove_dev = devlink_remove_symlinks,
 +};
 +
 +static int __init devlink_class_init(void)
 +{
 +      int ret;
 +
 +      ret = class_register(&devlink_class);
 +      if (ret)
 +              return ret;
 +
 +      ret = class_interface_register(&devlink_class_intf);
 +      if (ret)
 +              class_unregister(&devlink_class);
 +
 +      return ret;
 +}
 +postcore_initcall(devlink_class_init);
 +
  #define DL_MANAGED_LINK_FLAGS (DL_FLAG_AUTOREMOVE_CONSUMER | \
                               DL_FLAG_AUTOREMOVE_SUPPLIER | \
                               DL_FLAG_AUTOPROBE_CONSUMER  | \
@@@ -612,6 -408,13 +612,6 @@@ struct device_link *device_link_add(str
  
        refcount_set(&link->rpm_active, 1);
  
 -      if (flags & DL_FLAG_PM_RUNTIME) {
 -              if (flags & DL_FLAG_RPM_ACTIVE)
 -                      refcount_inc(&link->rpm_active);
 -
 -              pm_runtime_new_link(consumer);
 -      }
 -
        get_device(supplier);
        link->supplier = supplier;
        INIT_LIST_HEAD(&link->s_node);
        link->flags = flags;
        kref_init(&link->kref);
  
 +      link->link_dev.class = &devlink_class;
 +      device_set_pm_not_required(&link->link_dev);
 +      dev_set_name(&link->link_dev, "%s--%s",
 +                   dev_name(supplier), dev_name(consumer));
 +      if (device_register(&link->link_dev)) {
 +              put_device(consumer);
 +              put_device(supplier);
 +              kfree(link);
 +              link = NULL;
 +              goto out;
 +      }
 +
 +      if (flags & DL_FLAG_PM_RUNTIME) {
 +              if (flags & DL_FLAG_RPM_ACTIVE)
 +                      refcount_inc(&link->rpm_active);
 +
 +              pm_runtime_new_link(consumer);
 +      }
 +
        /* Determine the initial link state. */
        if (flags & DL_FLAG_STATELESS)
                link->status = DL_STATE_NONE;
@@@ -755,7 -539,22 +755,7 @@@ static void device_link_add_missing_sup
        mutex_unlock(&wfs_lock);
  }
  
 -static void device_link_free(struct device_link *link)
 -{
 -      while (refcount_dec_not_one(&link->rpm_active))
 -              pm_runtime_put(link->supplier);
 -
 -      put_device(link->consumer);
 -      put_device(link->supplier);
 -      kfree(link);
 -}
 -
  #ifdef CONFIG_SRCU
 -static void __device_link_free_srcu(struct rcu_head *rhead)
 -{
 -      device_link_free(container_of(rhead, struct device_link, rcu_head));
 -}
 -
  static void __device_link_del(struct kref *kref)
  {
        struct device_link *link = container_of(kref, struct device_link, kref);
  
        list_del_rcu(&link->s_node);
        list_del_rcu(&link->c_node);
 -      call_srcu(&device_links_srcu, &link->rcu_head, __device_link_free_srcu);
 +      device_unregister(&link->link_dev);
  }
  #else /* !CONFIG_SRCU */
  static void __device_link_del(struct kref *kref)
  
        list_del(&link->s_node);
        list_del(&link->c_node);
 -      device_link_free(link);
 +      device_unregister(&link->link_dev);
  }
  #endif /* !CONFIG_SRCU */
  
@@@ -807,7 -606,9 +807,7 @@@ static void device_link_put_kref(struc
  void device_link_del(struct device_link *link)
  {
        device_links_write_lock();
 -      device_pm_lock();
        device_link_put_kref(link);
 -      device_pm_unlock();
        device_links_write_unlock();
  }
  EXPORT_SYMBOL_GPL(device_link_del);
@@@ -828,6 -629,7 +828,6 @@@ void device_link_remove(void *consumer
                return;
  
        device_links_write_lock();
 -      device_pm_lock();
  
        list_for_each_entry(link, &supplier->links.consumers, s_node) {
                if (link->consumer == consumer) {
                }
        }
  
 -      device_pm_unlock();
        device_links_write_unlock();
  }
  EXPORT_SYMBOL_GPL(device_link_remove);
@@@ -1047,22 -850,6 +1047,22 @@@ static void device_link_drop_managed(st
        kref_put(&link->kref, __device_link_del);
  }
  
 +static ssize_t waiting_for_supplier_show(struct device *dev,
 +                                       struct device_attribute *attr,
 +                                       char *buf)
 +{
 +      bool val;
 +
 +      device_lock(dev);
 +      mutex_lock(&wfs_lock);
 +      val = !list_empty(&dev->links.needs_suppliers)
 +            && dev->links.need_for_probe;
 +      mutex_unlock(&wfs_lock);
 +      device_unlock(dev);
 +      return sprintf(buf, "%u\n", val);
 +}
 +static DEVICE_ATTR_RO(waiting_for_supplier);
 +
  /**
   * device_links_driver_bound - Update device links after probing its driver.
   * @dev: Device to update the links for.
@@@ -1087,7 -874,6 +1087,7 @@@ void device_links_driver_bound(struct d
        mutex_lock(&wfs_lock);
        list_del_init(&dev->links.needs_suppliers);
        mutex_unlock(&wfs_lock);
 +      device_remove_file(dev, &dev_attr_waiting_for_supplier);
  
        device_links_write_lock();
  
@@@ -1374,9 -1160,6 +1374,9 @@@ static void device_links_purge(struct d
  {
        struct device_link *link, *ln;
  
 +      if (dev->class == &devlink_class)
 +              return;
 +
        mutex_lock(&wfs_lock);
        list_del(&dev->links.needs_suppliers);
        mutex_unlock(&wfs_lock);
@@@ -2186,16 -1969,8 +2186,16 @@@ static int device_add_attrs(struct devi
                        goto err_remove_dev_groups;
        }
  
 +      if (fw_devlink_flags && !fw_devlink_is_permissive()) {
 +              error = device_create_file(dev, &dev_attr_waiting_for_supplier);
 +              if (error)
 +                      goto err_remove_dev_online;
 +      }
 +
        return 0;
  
 + err_remove_dev_online:
 +      device_remove_file(dev, &dev_attr_online);
   err_remove_dev_groups:
        device_remove_groups(dev, dev->groups);
   err_remove_type_groups:
@@@ -2213,7 -1988,6 +2213,7 @@@ static void device_remove_attrs(struct 
        struct class *class = dev->class;
        const struct device_type *type = dev->type;
  
 +      device_remove_file(dev, &dev_attr_waiting_for_supplier);
        device_remove_file(dev, &dev_attr_online);
        device_remove_groups(dev, dev->groups);
  
@@@ -4061,22 -3835,21 +4061,21 @@@ void device_shutdown(void
   */
  
  #ifdef CONFIG_PRINTK
- static int
create_syslog_header(const struct device *dev, char *hdr, size_t hdrlen)
+ static void
set_dev_info(const struct device *dev, struct dev_printk_info *dev_info)
  {
        const char *subsys;
-       size_t pos = 0;
+       memset(dev_info, 0, sizeof(*dev_info));
  
        if (dev->class)
                subsys = dev->class->name;
        else if (dev->bus)
                subsys = dev->bus->name;
        else
-               return 0;
+               return;
  
-       pos += snprintf(hdr + pos, hdrlen - pos, "SUBSYSTEM=%s", subsys);
-       if (pos >= hdrlen)
-               goto overflow;
+       strscpy(dev_info->subsystem, subsys, sizeof(dev_info->subsystem));
  
        /*
         * Add device identifier DEVICE=:
                        c = 'b';
                else
                        c = 'c';
-               pos++;
-               pos += snprintf(hdr + pos, hdrlen - pos,
-                               "DEVICE=%c%u:%u",
-                               c, MAJOR(dev->devt), MINOR(dev->devt));
+               snprintf(dev_info->device, sizeof(dev_info->device),
+                        "%c%u:%u", c, MAJOR(dev->devt), MINOR(dev->devt));
        } else if (strcmp(subsys, "net") == 0) {
                struct net_device *net = to_net_dev(dev);
  
-               pos++;
-               pos += snprintf(hdr + pos, hdrlen - pos,
-                               "DEVICE=n%u", net->ifindex);
+               snprintf(dev_info->device, sizeof(dev_info->device),
+                        "n%u", net->ifindex);
        } else {
-               pos++;
-               pos += snprintf(hdr + pos, hdrlen - pos,
-                               "DEVICE=+%s:%s", subsys, dev_name(dev));
+               snprintf(dev_info->device, sizeof(dev_info->device),
+                        "+%s:%s", subsys, dev_name(dev));
        }
-       if (pos >= hdrlen)
-               goto overflow;
-       return pos;
- overflow:
-       dev_WARN(dev, "device/subsystem name too long");
-       return 0;
  }
  
  int dev_vprintk_emit(int level, const struct device *dev,
                     const char *fmt, va_list args)
  {
-       char hdr[128];
-       size_t hdrlen;
+       struct dev_printk_info dev_info;
  
-       hdrlen = create_syslog_header(dev, hdr, sizeof(hdr));
+       set_dev_info(dev, &dev_info);
  
-       return vprintk_emit(0, level, hdrlen ? hdr : NULL, hdrlen, fmt, args);
+       return vprintk_emit(0, level, &dev_info, fmt, args);
  }
  EXPORT_SYMBOL(dev_vprintk_emit);
  
@@@ -4199,52 -3959,6 +4185,52 @@@ define_dev_printk_level(_dev_info, KERN
  
  #endif
  
 +/**
 + * dev_err_probe - probe error check and log helper
 + * @dev: the pointer to the struct device
 + * @err: error value to test
 + * @fmt: printf-style format string
 + * @...: arguments as specified in the format string
 + *
 + * This helper implements common pattern present in probe functions for error
 + * checking: print debug or error message depending if the error value is
 + * -EPROBE_DEFER and propagate error upwards.
 + * In case of -EPROBE_DEFER it sets also defer probe reason, which can be
 + * checked later by reading devices_deferred debugfs attribute.
 + * It replaces code sequence:
 + *    if (err != -EPROBE_DEFER)
 + *            dev_err(dev, ...);
 + *    else
 + *            dev_dbg(dev, ...);
 + *    return err;
 + * with
 + *    return dev_err_probe(dev, err, ...);
 + *
 + * Returns @err.
 + *
 + */
 +int dev_err_probe(const struct device *dev, int err, const char *fmt, ...)
 +{
 +      struct va_format vaf;
 +      va_list args;
 +
 +      va_start(args, fmt);
 +      vaf.fmt = fmt;
 +      vaf.va = &args;
 +
 +      if (err != -EPROBE_DEFER) {
 +              dev_err(dev, "error %pe: %pV", ERR_PTR(err), &vaf);
 +      } else {
 +              device_set_deferred_probe_reason(dev, &vaf);
 +              dev_dbg(dev, "error %pe: %pV", ERR_PTR(err), &vaf);
 +      }
 +
 +      va_end(args);
 +
 +      return err;
 +}
 +EXPORT_SYMBOL_GPL(dev_err_probe);
 +
  static inline bool fwnode_is_primary(struct fwnode_handle *fwnode)
  {
        return fwnode && !IS_ERR(fwnode->secondary);
   */
  void set_primary_fwnode(struct device *dev, struct fwnode_handle *fwnode)
  {
 -      if (fwnode) {
 -              struct fwnode_handle *fn = dev->fwnode;
 +      struct fwnode_handle *fn = dev->fwnode;
  
 +      if (fwnode) {
                if (fwnode_is_primary(fn))
                        fn = fn->secondary;
  
                }
                dev->fwnode = fwnode;
        } else {
 -              dev->fwnode = fwnode_is_primary(dev->fwnode) ?
 -                      dev->fwnode->secondary : NULL;
 +              if (fwnode_is_primary(fn)) {
 +                      dev->fwnode = fn->secondary;
 +                      fn->secondary = NULL;
 +              } else {
 +                      dev->fwnode = NULL;
 +              }
        }
  }
  EXPORT_SYMBOL_GPL(set_primary_fwnode);
@@@ -38,8 -38,6 +38,8 @@@ phys_addr_t paddr_vmcoreinfo_note(void)
  
  #define VMCOREINFO_OSRELEASE(value) \
        vmcoreinfo_append_str("OSRELEASE=%s\n", value)
 +#define VMCOREINFO_BUILD_ID(value) \
 +      vmcoreinfo_append_str("BUILD-ID=%s\n", value)
  #define VMCOREINFO_PAGESIZE(value) \
        vmcoreinfo_append_str("PAGESIZE=%ld\n", value)
  #define VMCOREINFO_SYMBOL(name) \
@@@ -55,6 -53,9 +55,9 @@@
  #define VMCOREINFO_OFFSET(name, field) \
        vmcoreinfo_append_str("OFFSET(%s.%s)=%lu\n", #name, #field, \
                              (unsigned long)offsetof(struct name, field))
+ #define VMCOREINFO_TYPE_OFFSET(name, field) \
+       vmcoreinfo_append_str("OFFSET(%s.%s)=%lu\n", #name, #field, \
+                             (unsigned long)offsetof(name, field))
  #define VMCOREINFO_LENGTH(name, value) \
        vmcoreinfo_append_str("LENGTH(%s)=%lu\n", #name, (unsigned long)value)
  #define VMCOREINFO_NUMBER(name) \
@@@ -66,10 -67,6 +69,10 @@@ extern unsigned char *vmcoreinfo_data
  extern size_t vmcoreinfo_size;
  extern u32 *vmcoreinfo_note;
  
 +/* raw contents of kernel .notes section */
 +extern const void __start_notes __weak;
 +extern const void __stop_notes __weak;
 +
  Elf_Word *append_elf_note(Elf_Word *buf, char *name, unsigned int type,
                          void *data, size_t data_len);
  void final_note(Elf_Word *buf);
diff --combined include/linux/kernel.h
@@@ -17,6 -17,7 +17,6 @@@
  #include <asm/byteorder.h>
  #include <asm/div64.h>
  #include <uapi/linux/kernel.h>
 -#include <asm/div64.h>
  
  #define STACK_MAGIC   0xdeadbeef
  
@@@ -33,7 -34,6 +33,7 @@@
  #define ALIGN_DOWN(x, a)      __ALIGN_KERNEL((x) - ((a) - 1), (a))
  #define __ALIGN_MASK(x, mask) __ALIGN_KERNEL_MASK((x), (mask))
  #define PTR_ALIGN(p, a)               ((typeof(p))ALIGN((unsigned long)(p), (a)))
 +#define PTR_ALIGN_DOWN(p, a)  ((typeof(p))ALIGN_DOWN((unsigned long)(p), (a)))
  #define IS_ALIGNED(x, a)              (((x) & ((typeof(x))(a) - 1)) == 0)
  
  /* generic data direction definitions */
   * lower_32_bits - return bits 0-31 of a number
   * @n: the number we're accessing
   */
 -#define lower_32_bits(n) ((u32)(n))
 +#define lower_32_bits(n) ((u32)((n) & 0xffffffff))
  
  struct completion;
  struct pt_regs;
@@@ -321,7 -321,8 +321,7 @@@ void panic(const char *fmt, ...) __nore
  void nmi_panic(struct pt_regs *regs, const char *msg);
  extern void oops_enter(void);
  extern void oops_exit(void);
 -void print_oops_end_marker(void);
 -extern int oops_may_print(void);
 +extern bool oops_may_print(void);
  void do_exit(long error_code) __noreturn;
  void complete_and_exit(struct completion *, long) __noreturn;
  
@@@ -345,7 -346,7 +345,7 @@@ int __must_check kstrtoll(const char *s
   * @res: Where to write the result of the conversion on success.
   *
   * Returns 0 on success, -ERANGE on overflow and -EINVAL on parsing error.
 - * Used as a replacement for the simple_strtoull. Return code must be checked.
 + * Preferred over simple_strtoul(). Return code must be checked.
  */
  static inline int __must_check kstrtoul(const char *s, unsigned int base, unsigned long *res)
  {
   * @res: Where to write the result of the conversion on success.
   *
   * Returns 0 on success, -ERANGE on overflow and -EINVAL on parsing error.
 - * Used as a replacement for the simple_strtoull. Return code must be checked.
 + * Preferred over simple_strtol(). Return code must be checked.
   */
  static inline int __must_check kstrtol(const char *s, unsigned int base, long *res)
  {
@@@ -526,7 -527,6 +526,6 @@@ extern unsigned int sysctl_oops_all_cpu
  #endif /* CONFIG_SMP */
  
  extern void bust_spinlocks(int yes);
- extern int oops_in_progress;          /* If set, an oops, panic(), BUG() or die() is in progress */
  extern int panic_timeout;
  extern unsigned long panic_print;
  extern int panic_on_oops;
diff --combined init/Kconfig
@@@ -682,7 -682,8 +682,8 @@@ config IKHEADER
  
  config LOG_BUF_SHIFT
        int "Kernel log buffer size (16 => 64KB, 17 => 128KB)"
-       range 12 25
+       range 12 25 if !H8300
+       range 12 19 if H8300
        default 17
        depends on PRINTK
        help
@@@ -1913,8 -1914,9 +1914,8 @@@ config SLAB_MERGE_DEFAUL
          command line.
  
  config SLAB_FREELIST_RANDOM
 -      default n
 +      bool "Randomize slab freelist"
        depends on SLAB || SLUB
 -      bool "SLAB freelist randomization"
        help
          Randomizes the freelist order used on creating new pages. This
          security feature reduces the predictability of the kernel slab
  
  config SLAB_FREELIST_HARDENED
        bool "Harden slab freelist metadata"
 -      depends on SLUB
 +      depends on SLAB || SLUB
        help
          Many kernel heap attacks try to target slab cache metadata and
          other infrastructure. This options makes minor performance
          sacrifices to harden the kernel slab allocator against common
 -        freelist exploit methods.
 +        freelist exploit methods. Some slab implementations have more
 +        sanity-checking than others. This option is most effective with
 +        CONFIG_SLUB.
  
  config SHUFFLE_PAGE_ALLOCATOR
        bool "Page allocator randomization"
@@@ -1986,7 -1986,7 +1987,7 @@@ config MMAP_ALLOW_UNINITIALIZE
          userspace.  Since that isn't generally a problem on no-MMU systems,
          it is normally safe to say Y here.
  
 -        See Documentation/nommu-mmap.txt for more information.
 +        See Documentation/admin-guide/mm/nommu-mmap.rst for more information.
  
  config SYSTEM_DATA_VERIFICATION
        def_bool n