Merge tag 'vfio-v6.1-rc1' of https://github.com/awilliam/linux-vfio
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 12 Oct 2022 21:46:48 +0000 (14:46 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 12 Oct 2022 21:46:48 +0000 (14:46 -0700)
Pull VFIO updates from Alex Williamson:

 - Prune private items from vfio_pci_core.h to a new internal header,
   fix missed function rename, and refactor vfio-pci interrupt defines
   (Jason Gunthorpe)

 - Create consistent naming and handling of ioctls with a function per
   ioctl for vfio-pci and vfio group handling, use proper type args
   where available (Jason Gunthorpe)

 - Implement a set of low power device feature ioctls allowing userspace
   to make use of power states such as D3cold where supported (Abhishek
   Sahu)

 - Remove device counter on vfio groups, which had restricted the page
   pinning interface to singleton groups to account for limitations in
   the type1 IOMMU backend. Document usage as limited to emulated IOMMU
   devices, ie. traditional mdev devices where this restriction is
   consistent (Jason Gunthorpe)

 - Correct function prefix in hisi_acc driver incurred during previous
   refactoring (Shameer Kolothum)

 - Correct typo and remove redundant warning triggers in vfio-fsl driver
   (Christophe JAILLET)

 - Introduce device level DMA dirty tracking uAPI and implementation in
   the mlx5 variant driver (Yishai Hadas & Joao Martins)

 - Move much of the vfio_device life cycle management into vfio core,
   simplifying and avoiding duplication across drivers. This also
   facilitates adding a struct device to vfio_device which begins the
   introduction of device rather than group level user support and fills
   a gap allowing userspace identify devices as vfio capable without
   implicit knowledge of the driver (Kevin Tian & Yi Liu)

 - Split vfio container handling to a separate file, creating a more
   well defined API between the core and container code, masking IOMMU
   backend implementation from the core, allowing for an easier future
   transition to an iommufd based implementation of the same (Jason
   Gunthorpe)

 - Attempt to resolve race accessing the iommu_group for a device
   between vfio releasing DMA ownership and removal of the device from
   the IOMMU driver. Follow-up with support to allow vfio_group to exist
   with NULL iommu_group pointer to support existing userspace use cases
   of holding the group file open (Jason Gunthorpe)

 - Fix error code and hi/lo register manipulation issues in the hisi_acc
   variant driver, along with various code cleanups (Longfang Liu)

 - Fix a prior regression in GVT-g group teardown, resulting in
   unreleased resources (Jason Gunthorpe)

 - A significant cleanup and simplification of the mdev interface,
   consolidating much of the open coded per driver sysfs interface
   support into the mdev core (Christoph Hellwig)

 - Simplification of tracking and locking around vfio_groups that fall
   out from previous refactoring (Jason Gunthorpe)

 - Replace trivial open coded f_ops tests with new helper (Alex
   Williamson)

* tag 'vfio-v6.1-rc1' of https://github.com/awilliam/linux-vfio: (77 commits)
  vfio: More vfio_file_is_group() use cases
  vfio: Make the group FD disassociate from the iommu_group
  vfio: Hold a reference to the iommu_group in kvm for SPAPR
  vfio: Add vfio_file_is_group()
  vfio: Change vfio_group->group_rwsem to a mutex
  vfio: Remove the vfio_group->users and users_comp
  vfio/mdev: add mdev available instance checking to the core
  vfio/mdev: consolidate all the description sysfs into the core code
  vfio/mdev: consolidate all the available_instance sysfs into the core code
  vfio/mdev: consolidate all the name sysfs into the core code
  vfio/mdev: consolidate all the device_api sysfs into the core code
  vfio/mdev: remove mtype_get_parent_dev
  vfio/mdev: remove mdev_parent_dev
  vfio/mdev: unexport mdev_bus_type
  vfio/mdev: remove mdev_from_dev
  vfio/mdev: simplify mdev_type handling
  vfio/mdev: embedd struct mdev_parent in the parent data structure
  vfio/mdev: make mdev.h standalone includable
  drm/i915/gvt: simplify vgpu configuration management
  drm/i915/gvt: fix a memory leak in intel_gvt_init_vgpu_types
  ...

1  2 
MAINTAINERS
drivers/s390/crypto/vfio_ap_ops.c

diff --combined MAINTAINERS
@@@ -348,6 -348,7 +348,6 @@@ M: "Rafael J. Wysocki" <rafael@kernel.o
  R:    Len Brown <lenb@kernel.org>
  L:    linux-acpi@vger.kernel.org
  S:    Supported
 -W:    https://01.org/linux-acpi
  Q:    https://patchwork.kernel.org/project/linux-acpi/list/
  B:    https://bugzilla.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
@@@ -426,6 -427,7 +426,6 @@@ M: Rafael J. Wysocki <rafael@kernel.org
  R:    Zhang Rui <rui.zhang@intel.com>
  L:    linux-acpi@vger.kernel.org
  S:    Supported
 -W:    https://01.org/linux-acpi
  B:    https://bugzilla.kernel.org
  F:    drivers/acpi/*thermal*
  
@@@ -554,7 -556,7 +554,7 @@@ M: Michael Hennerich <michael.hennerich
  S:    Supported
  W:    http://wiki.analog.com/ADP5588
  W:    https://ez.analog.com/linux-software-drivers
 -F:    drivers/gpio/gpio-adp5588.c
 +F:    Documentation/devicetree/bindings/input/adi,adp5588.yaml
  F:    drivers/input/keyboard/adp5588-keys.c
  
  ADP8860 BACKLIGHT DRIVER (ADP8860/ADP8861/ADP8863)
@@@ -618,7 -620,7 +618,7 @@@ ADXL367 THREE-AXIS DIGITAL ACCELEROMETE
  M:    Cosmin Tanislav <cosmin.tanislav@analog.com>
  L:    linux-iio@vger.kernel.org
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml
  F:    drivers/iio/accel/adxl367*
  
@@@ -669,8 -671,7 +669,8 @@@ F: fs/afs
  F:    include/trace/events/afs.h
  
  AGPGART DRIVER
 -M:    David Airlie <airlied@linux.ie>
 +M:    David Airlie <airlied@redhat.com>
 +L:    dri-devel@lists.freedesktop.org
  S:    Maintained
  T:    git git://anongit.freedesktop.org/drm/drm
  F:    drivers/char/agp/
@@@ -748,17 -749,19 +748,17 @@@ S:      Supporte
  F:    drivers/infiniband/hw/erdma
  F:    include/uapi/rdma/erdma-abi.h
  
 +ALIBABA PMU DRIVER
 +M:    Shuai Xue <xueshuai@linux.alibaba.com>
 +S:    Supported
 +F:    Documentation/admin-guide/perf/alibaba_pmu.rst
 +F:    drivers/perf/alibaba_uncore_dwr_pmu.c
 +
  ALIENWARE WMI DRIVER
  L:    Dell.Client.Kernel@dell.com
  S:    Maintained
  F:    drivers/platform/x86/dell/alienware-wmi.c
  
 -ALL SENSORS DLH SERIES PRESSURE SENSORS DRIVER
 -M:    Tomislav Denis <tomislav.denis@avl.com>
 -L:    linux-iio@vger.kernel.org
 -S:    Maintained
 -W:    http://www.allsensors.com/
 -F:    Documentation/devicetree/bindings/iio/pressure/asc,dlhl60d.yaml
 -F:    drivers/iio/pressure/dlhl60d.c
 -
  ALLEGRO DVT VIDEO IP CORE DRIVER
  M:    Michael Tretter <m.tretter@pengutronix.de>
  R:    Pengutronix Kernel Team <kernel@pengutronix.de>
@@@ -817,13 -820,6 +817,13 @@@ L:       linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/staging/media/sunxi/cedrus/
  
 +ALLWINNER DMIC DRIVERS
 +M:    Ban Tao <fengzheng923@gmail.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/allwinner,sun50i-h6-dmic.yaml
 +F:    sound/soc/sunxi/sun50i-dmic.c
 +
  ALPHA PORT
  M:    Richard Henderson <richard.henderson@linaro.org>
  M:    Ivan Kokshaysky <ink@jurassic.park.msu.ru>
@@@ -882,13 -878,6 +882,13 @@@ L:       netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/altera/
  
 +ALTERA TSE PCS
 +M:    Maxime Chevallier <maxime.chevallier@bootlin.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    drivers/net/pcs/pcs-altera-tse.c
 +F:    include/linux/pcs-altera-tse.h
 +
  ALTERA UART/JTAG UART SERIAL DRIVERS
  M:    Tobias Klauser <tklauser@distanz.ch>
  L:    linux-serial@vger.kernel.org
@@@ -1021,6 -1010,7 +1021,6 @@@ F:      drivers/spi/spi-amd.
  
  AMD MP2 I2C DRIVER
  M:    Elie Morisse <syniurge@gmail.com>
 -M:    Nehal Shah <nehal-bakulchandra.shah@amd.com>
  M:    Shyam Sundar S K <shyam-sundar.s-k@amd.com>
  L:    linux-i2c@vger.kernel.org
  S:    Maintained
@@@ -1032,13 -1022,6 +1032,13 @@@ L:    platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/amd/pmc.c
  
 +AMD PMF DRIVER
 +M:    Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-amd-pmf
 +F:    drivers/platform/x86/amd/pmf/
 +
  AMD HSMP DRIVER
  M:    Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
  R:    Carlos Bilbao <carlos.bilbao@amd.com>
@@@ -1062,7 -1045,6 +1062,7 @@@ L:      linux-pm@vger.kernel.or
  S:    Supported
  F:    Documentation/admin-guide/pm/amd-pstate.rst
  F:    drivers/cpufreq/amd-pstate*
 +F:    include/linux/amd-pstate.h
  F:    tools/power/x86/amd_pstate_tracer/amd_pstate_trace.py
  
  AMD PTDMA DRIVER
@@@ -1170,7 -1152,7 +1170,7 @@@ ANALOG DEVICES INC AD74413R DRIVE
  M:    Cosmin Tanislav <cosmin.tanislav@analog.com>
  L:    linux-iio@vger.kernel.org
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/devicetree/bindings/iio/addac/adi,ad74413r.yaml
  F:    drivers/iio/addac/ad74413r.c
  F:    include/dt-bindings/iio/addac/adi,ad74413r.h
@@@ -1345,23 -1327,13 +1345,23 @@@ W:   https://ez.analog.com/linux-software
  F:    Documentation/ABI/testing/sysfs-bus-iio-frequency-ad9523
  F:    Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
  F:    Documentation/devicetree/bindings/iio/*/adi,*
 -F:    Documentation/devicetree/bindings/iio/dac/adi,ad5758.yaml
 +F:    Documentation/devicetree/bindings/iio/adc/lltc,ltc2496.yaml
 +F:    Documentation/devicetree/bindings/iio/adc/lltc,ltc2497.yaml
  F:    drivers/iio/*/ad*
  F:    drivers/iio/adc/ltc249*
  F:    drivers/iio/amplifiers/hmc425a.c
  F:    drivers/staging/iio/*/ad*
  X:    drivers/iio/*/adjd*
  
 +ANALOG DEVICES INC MAX31760 DRIVER
 +M:    Ibrahim Tilki <Ibrahim.Tilki@analog.com>
 +S:    Maintained
 +W:    http://wiki.analog.com/
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/hwmon/adi,max31760.yaml
 +F:    Documentation/hwmon/max31760.rst
 +F:    drivers/hwmon/max31760.c
 +
  ANALOGBITS PLL LIBRARIES
  M:    Paul Walmsley <paul.walmsley@sifive.com>
  S:    Supported
@@@ -1410,7 -1382,7 +1410,7 @@@ APEX EMBEDDED SYSTEMS STX104 IIO DRIVE
  M:    William Breathitt Gray <william.gray@linaro.org>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
 -F:    drivers/iio/adc/stx104.c
 +F:    drivers/iio/addac/stx104.c
  
  APM DRIVER
  M:    Jiri Kosina <jikos@kernel.org>
@@@ -1831,7 -1803,7 +1831,7 @@@ N:      sun[x456789]
  N:    sun50i
  
  ARM/Amlogic Meson SoC CLOCK FRAMEWORK
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  M:    Jerome Brunet <jbrunet@baylibre.com>
  L:    linux-amlogic@lists.infradead.org
  S:    Maintained
@@@ -1856,7 -1828,7 +1856,7 @@@ F:      Documentation/devicetree/bindings/so
  F:    sound/soc/meson/
  
  ARM/Amlogic Meson SoC support
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  M:    Kevin Hilman <khilman@baylibre.com>
  R:    Jerome Brunet <jbrunet@baylibre.com>
  R:    Martin Blumenstingl <martin.blumenstingl@googlemail.com>
@@@ -1915,7 -1887,6 +1915,7 @@@ F:      drivers/dma/apple-admac.
  F:    drivers/i2c/busses/i2c-pasemi-core.c
  F:    drivers/i2c/busses/i2c-pasemi-platform.c
  F:    drivers/iommu/apple-dart.c
 +F:    drivers/iommu/io-pgtable-dart.c
  F:    drivers/irqchip/irq-apple-aic.c
  F:    drivers/mailbox/apple-mailbox.c
  F:    drivers/nvme/host/apple.c
@@@ -1928,15 -1899,6 +1928,15 @@@ F:    include/dt-bindings/pinctrl/apple.
  F:    include/linux/apple-mailbox.h
  F:    include/linux/soc/apple/*
  
 +ARM/APPLE MACHINE SOUND DRIVERS
 +M:    Martin Povišer <povik+lin@cutebit.org>
 +L:    asahi@lists.linux.dev
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/apple,*
 +F:    sound/soc/apple/*
 +F:    sound/soc/codecs/cs42l83-i2c.c
 +
  ARM/ARTPEC MACHINE SUPPORT
  M:    Jesper Nilsson <jesper.nilsson@axis.com>
  M:    Lars Persson <lars.persson@axis.com>
@@@ -2067,7 -2029,6 +2067,7 @@@ F:      drivers/hwtracing/coresight/
  F:    include/dt-bindings/arm/coresight-cti-dt.h
  F:    include/linux/coresight*
  F:    samples/coresight/*
 +F:    tools/perf/tests/shell/coresight/*
  F:    tools/perf/arch/arm/util/auxtrace.c
  F:    tools/perf/arch/arm/util/cs-etm.c
  F:    tools/perf/arch/arm/util/cs-etm.h
@@@ -2433,7 -2394,6 +2433,7 @@@ N:      atme
  ARM/Microchip Sparx5 SoC support
  M:    Lars Povlsen <lars.povlsen@microchip.com>
  M:    Steen Hegelund <Steen.Hegelund@microchip.com>
 +M:    Daniel Machon <daniel.machon@microchip.com>
  M:    UNGLinuxDriver@microchip.com
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
@@@ -2571,7 -2531,7 +2571,7 @@@ W:      http://www.digriz.org.uk/ts78xx/kern
  F:    arch/arm/mach-orion5x/ts78xx-*
  
  ARM/OXNAS platform support
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-oxnas@groups.io (moderated for non-subscribers)
  S:    Maintained
@@@ -2619,7 -2579,7 +2619,7 @@@ W:      http://www.armlinux.org.uk
  
  ARM/QUALCOMM SUPPORT
  M:    Andy Gross <agross@kernel.org>
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  R:    Konrad Dybcio <konrad.dybcio@somainline.org>
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
@@@ -2628,7 -2588,6 +2628,7 @@@ F:      Documentation/devicetree/bindings/*/
  F:    Documentation/devicetree/bindings/soc/qcom/
  F:    arch/arm/boot/dts/qcom-*.dts
  F:    arch/arm/boot/dts/qcom-*.dtsi
 +F:    arch/arm/configs/qcom_defconfig
  F:    arch/arm/mach-qcom/
  F:    arch/arm64/boot/dts/qcom/
  F:    drivers/*/*/qcom*
@@@ -2691,7 -2650,7 +2691,7 @@@ F:      arch/arm/boot/dts/rtd
  F:    arch/arm/mach-realtek/
  F:    arch/arm64/boot/dts/realtek/
  
 -ARM/RENESAS ARM64 ARCHITECTURE
 +ARM/RENESAS ARCHITECTURE
  M:    Geert Uytterhoeven <geert+renesas@glider.be>
  M:    Magnus Damm <magnus.damm@gmail.com>
  L:    linux-renesas-soc@vger.kernel.org
@@@ -2702,16 -2661,6 +2702,16 @@@ T:    git git://git.kernel.org/pub/scm/lin
  F:    Documentation/devicetree/bindings/arm/renesas.yaml
  F:    Documentation/devicetree/bindings/hwinfo/renesas,prr.yaml
  F:    Documentation/devicetree/bindings/soc/renesas/
 +F:    arch/arm/boot/dts/emev2*
 +F:    arch/arm/boot/dts/gr-peach*
 +F:    arch/arm/boot/dts/iwg20d-q7*
 +F:    arch/arm/boot/dts/r7s*
 +F:    arch/arm/boot/dts/r8a*
 +F:    arch/arm/boot/dts/r9a*
 +F:    arch/arm/boot/dts/sh*
 +F:    arch/arm/configs/shmobile_defconfig
 +F:    arch/arm/include/debug/renesas-scif.S
 +F:    arch/arm/mach-shmobile/
  F:    arch/arm64/boot/dts/renesas/
  F:    drivers/soc/renesas/
  F:    include/linux/soc/renesas/
@@@ -2721,6 -2670,7 +2721,6 @@@ M:      Russell King <linux@armlinux.org.uk
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  W:    http://www.armlinux.org.uk/
 -F:    arch/arm/include/asm/hardware/entry-macro-iomd.S
  F:    arch/arm/include/asm/hardware/ioc.h
  F:    arch/arm/include/asm/hardware/iomd.h
  F:    arch/arm/include/asm/hardware/memc.h
@@@ -2822,6 -2772,29 +2822,6 @@@ L:     linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/media/platform/samsung/s5p-mfc/
  
 -ARM/SHMOBILE ARM ARCHITECTURE
 -M:    Geert Uytterhoeven <geert+renesas@glider.be>
 -M:    Magnus Damm <magnus.damm@gmail.com>
 -L:    linux-renesas-soc@vger.kernel.org
 -S:    Supported
 -Q:    http://patchwork.kernel.org/project/linux-renesas-soc/list/
 -C:    irc://irc.libera.chat/renesas-soc
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel.git next
 -F:    Documentation/devicetree/bindings/arm/renesas.yaml
 -F:    Documentation/devicetree/bindings/soc/renesas/
 -F:    arch/arm/boot/dts/emev2*
 -F:    arch/arm/boot/dts/gr-peach*
 -F:    arch/arm/boot/dts/iwg20d-q7*
 -F:    arch/arm/boot/dts/r7s*
 -F:    arch/arm/boot/dts/r8a*
 -F:    arch/arm/boot/dts/r9a*
 -F:    arch/arm/boot/dts/sh*
 -F:    arch/arm/configs/shmobile_defconfig
 -F:    arch/arm/include/debug/renesas-scif.S
 -F:    arch/arm/mach-shmobile/
 -F:    drivers/soc/renesas/
 -F:    include/linux/soc/renesas/
 -
  ARM/SOCFPGA ARCHITECTURE
  M:    Dinh Nguyen <dinguyen@kernel.org>
  S:    Maintained
@@@ -3114,8 -3087,6 +3114,8 @@@ W:      http://wiki.xilinx.co
  T:    git https://github.com/Xilinx/linux-xlnx.git
  F:    Documentation/devicetree/bindings/i2c/cdns,i2c-r1p10.yaml
  F:    Documentation/devicetree/bindings/i2c/xlnx,xps-iic-2.00.a.yaml
 +F:    Documentation/devicetree/bindings/memory-controllers/snps,dw-umctl2-ddrc.yaml
 +F:    Documentation/devicetree/bindings/memory-controllers/xlnx,zynq-ddrc-a05.yaml
  F:    Documentation/devicetree/bindings/spi/xlnx,zynq-qspi.yaml
  F:    arch/arm/mach-zynq/
  F:    drivers/clocksource/timer-cadence-ttc.c
@@@ -3239,13 -3210,6 +3239,13 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/usb/aspeed,ast2600-udc.yaml
  F:    drivers/usb/gadget/udc/aspeed_udc.c
  
 +ASPEED CRYPTO DRIVER
 +M:    Neal Liu <neal_liu@aspeedtech.com>
 +L:    linux-aspeed@lists.ozlabs.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/crypto/aspeed,ast2500-hace.yaml
 +F:    drivers/crypto/aspeed/
 +
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
  M:    Corentin Chary <corentin.chary@gmail.com>
  L:    acpi4asus-user@lists.sourceforge.net
@@@ -3269,6 -3233,13 +3269,6 @@@ L:     linux-hwmon@vger.kernel.or
  S:    Maintained
  F:    drivers/hwmon/asus_wmi_sensors.c
  
 -ASUS WMI EC HARDWARE MONITOR DRIVER
 -M:    Eugene Shalygin <eugene.shalygin@gmail.com>
 -M:    Denis Pauk <pauk.denis@gmail.com>
 -L:    linux-hwmon@vger.kernel.org
 -S:    Maintained
 -F:    drivers/hwmon/asus_wmi_ec_sensors.c
 -
  ASUS EC HARDWARE MONITOR DRIVER
  M:    Eugene Shalygin <eugene.shalygin@gmail.com>
  L:    linux-hwmon@vger.kernel.org
@@@ -3854,7 -3825,6 +3854,7 @@@ F:      kernel/bpf/dispatcher.
  F:    kernel/bpf/trampoline.c
  F:    include/linux/bpf*
  F:    include/linux/filter.h
 +F:    include/linux/tnum.h
  
  BPF [BTF]
  M:    Martin KaFai Lau <martin.lau@linux.dev>
@@@ -3980,7 -3950,6 +3980,7 @@@ M:      William Zhang <william.zhang@broadco
  M:    Anand Gore <anand.gore@broadcom.com>
  M:    Kursad Oney <kursad.oney@broadcom.com>
  M:    Florian Fainelli <f.fainelli@gmail.com>
 +M:    Rafał Miłecki <rafal@milecki.pl>
  R:    Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
@@@ -4927,7 -4896,6 +4927,7 @@@ M:      Prashant Malani <pmalani@chromium.or
  L:    chrome-platform@lists.linux.dev
  S:    Maintained
  F:    drivers/platform/chrome/cros_ec_typec.c
 +F:    drivers/platform/chrome/cros_typec_switch.c
  
  CHROMEOS EC USB PD NOTIFY DRIVER
  M:    Prashant Malani <pmalani@chromium.org>
@@@ -4991,7 -4959,7 +4991,7 @@@ F:      drivers/hwmon/lochnagar-hwmon.
  F:    drivers/mfd/lochnagar-i2c.c
  F:    drivers/pinctrl/cirrus/pinctrl-lochnagar.c
  F:    drivers/regulator/lochnagar-regulator.c
 -F:    include/dt-bindings/clk/lochnagar.h
 +F:    include/dt-bindings/clock/lochnagar.h
  F:    include/dt-bindings/pinctrl/lochnagar.h
  F:    include/linux/mfd/lochnagar*
  F:    sound/soc/codecs/lochnagar-sc.c
@@@ -5171,7 -5139,6 +5171,7 @@@ M:      Steve French <sfrench@samba.org
  R:    Paulo Alcantara <pc@cjr.nz> (DFS, global name space)
  R:    Ronnie Sahlberg <lsahlber@redhat.com> (directory leases, sparse files)
  R:    Shyam Prasad N <sprasad@microsoft.com> (multichannel)
 +R:    Tom Talpey <tom@talpey.com> (RDMA, smbdirect)
  L:    linux-cifs@vger.kernel.org
  L:    samba-technical@lists.samba.org (moderated for non-subscribers)
  S:    Supported
@@@ -5278,7 -5245,6 +5278,7 @@@ F:      block/blk-throttle.
  F:    include/linux/blk-cgroup.h
  
  CONTROL GROUP - CPUSET
 +M:    Waiman Long <longman@redhat.com>
  M:    Zefan Li <lizefan.x@bytedance.com>
  L:    cgroups@vger.kernel.org
  S:    Maintained
@@@ -5326,7 -5292,7 +5326,7 @@@ COUNTER SUBSYSTE
  M:    William Breathitt Gray <william.gray@linaro.org>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
 -T:    git https://git.linaro.org/people/william.gray/counter.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wbg/counter.git
  F:    Documentation/ABI/testing/sysfs-bus-counter
  F:    Documentation/driver-api/generic-counter.rst
  F:    drivers/counter/
@@@ -5407,8 -5373,8 +5407,8 @@@ T:      git git://git.kernel.org/pub/scm/lin
  F:    drivers/cpuidle/cpuidle-big_little.c
  
  CPUIDLE DRIVER - ARM EXYNOS
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  M:    Daniel Lezcano <daniel.lezcano@linaro.org>
 +R:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  M:    Kukjin Kim <kgene@kernel.org>
  L:    linux-pm@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
@@@ -5666,12 -5632,6 +5666,12 @@@ Q:    http://patchwork.linuxtv.org/project
  T:    git git://linuxtv.org/anttip/media_tree.git
  F:    drivers/media/common/cypress_firmware*
  
 +CYPRESS CY8C95X0 PINCTRL DRIVER
 +M:    Patrick Rudolph <patrick.rudolph@9elements.com>
 +L:    linux-gpio@vger.kernel.org
 +S:    Maintained
 +F:    drivers/pinctrl/pinctrl-cy8c95x0.c
 +
  CYPRESS CY8CTMA140 TOUCHSCREEN DRIVER
  M:    Linus Walleij <linus.walleij@linaro.org>
  L:    linux-input@vger.kernel.org
@@@ -5762,6 -5722,13 +5762,6 @@@ F:     include/linux/tfrc.
  F:    include/uapi/linux/dccp.h
  F:    net/dccp/
  
 -DECnet NETWORK LAYER
 -L:    linux-decnet-user@lists.sourceforge.net
 -S:    Orphan
 -W:    http://linux-decnet.sourceforge.net
 -F:    Documentation/networking/decnet.rst
 -F:    net/decnet/
 -
  DECSTATION PLATFORM SUPPORT
  M:    "Maciej W. Rozycki" <macro@orcam.me.uk>
  L:    linux-mips@vger.kernel.org
@@@ -5930,9 -5897,10 +5930,9 @@@ T:     git git://git.kernel.org/pub/scm/lin
  F:    drivers/usb/dwc2/
  
  DESIGNWARE USB3 DRD IP DRIVER
 -M:    Felipe Balbi <balbi@kernel.org>
 +M:    Thinh Nguyen <Thinh.Nguyen@synopsys.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git
  F:    drivers/usb/dwc3/
  
  DEVANTECH SRF ULTRASONIC RANGER IIO DRIVER
@@@ -6179,7 -6147,6 +6179,7 @@@ F:      include/asm-generic/dma-mapping.
  F:    include/linux/dma-direct.h
  F:    include/linux/dma-mapping.h
  F:    include/linux/dma-map-ops.h
 +F:    include/linux/swiotlb.h
  F:    kernel/dma/
  
  DMA MAPPING BENCHMARK
@@@ -6214,7 -6181,7 +6214,7 @@@ F:      Documentation/devicetree/bindings/me
  F:    drivers/memory/samsung/exynos5422-dmc.c
  
  DME1737 HARDWARE MONITOR DRIVER
 -M:    Juerg Haefliger <juergh@gmail.com>
 +M:    Juerg Haefliger <juergh@proton.me>
  L:    linux-hwmon@vger.kernel.org
  S:    Maintained
  F:    Documentation/hwmon/dme1737.rst
@@@ -6454,11 -6421,6 +6454,11 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/display/panel/feiyang,fy07024di26a30d.yaml
  F:    drivers/gpu/drm/panel/panel-feiyang-fy07024di26a30d.c
  
 +DRM DRIVER FOR GENERIC EDP PANELS
 +R:    Douglas Anderson <dianders@chromium.org>
 +F:    Documentation/devicetree/bindings/display/panel/panel-edp.yaml
 +F:    drivers/gpu/drm/panel/panel-edp.c
 +
  DRM DRIVER FOR GENERIC USB DISPLAY
  M:    Noralf Trønnes <noralf@tronnes.org>
  S:    Maintained
@@@ -6791,7 -6753,7 +6791,7 @@@ F:      Documentation/devicetree/bindings/di
  F:    drivers/gpu/drm/panel/panel-widechips-ws2401.c
  
  DRM DRIVERS
 -M:    David Airlie <airlied@linux.ie>
 +M:    David Airlie <airlied@gmail.com>
  M:    Daniel Vetter <daniel@ffwll.ch>
  L:    dri-devel@lists.freedesktop.org
  S:    Maintained
@@@ -6830,7 -6792,7 +6830,7 @@@ F:      Documentation/devicetree/bindings/di
  F:    drivers/gpu/drm/sun4i/
  
  DRM DRIVERS FOR AMLOGIC SOCS
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    dri-devel@lists.freedesktop.org
  L:    linux-amlogic@lists.infradead.org
  S:    Supported
@@@ -6852,7 -6814,7 +6852,7 @@@ F:      drivers/gpu/drm/atmel-hlcdc
  
  DRM DRIVERS FOR BRIDGE CHIPS
  M:    Andrzej Hajda <andrzej.hajda@intel.com>
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  M:    Robert Foss <robert.foss@linaro.org>
  R:    Laurent Pinchart <Laurent.pinchart@ideasonboard.com>
  R:    Jonas Karlman <jonas@kwiboo.se>
@@@ -7245,8 -7207,6 +7245,8 @@@ M:      Jason Baron <jbaron@akamai.com
  S:    Maintained
  F:    include/linux/dynamic_debug.h
  F:    lib/dynamic_debug.c
 +M:    Jim Cromie <jim.cromie@gmail.com>
 +F:    lib/test_dynamic_debug.c
  
  DYNAMIC INTERRUPT MODERATION
  M:    Tal Gilboa <talgi@nvidia.com>
@@@ -7574,7 -7534,7 +7574,7 @@@ M:      Adrian Hunter <adrian.hunter@intel.c
  M:    Ritesh Harjani <riteshh@codeaurora.org>
  M:    Asutosh Das <asutoshd@codeaurora.org>
  L:    linux-mmc@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/mmc/host/cqhci*
  
  EMULEX 10Gbps iSCSI - OneConnect DRIVER
@@@ -7727,6 -7687,7 +7727,6 @@@ R:      Kees Cook <keescook@chromium.org
  L:    linux-mm@kvack.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/execve
 -F:    arch/alpha/kernel/binfmt_loader.c
  F:    fs/*binfmt_*.c
  F:    fs/exec.c
  F:    include/linux/binfmts.h
@@@ -8043,7 -8004,6 +8043,7 @@@ L:      linux-hardening@vger.kernel.or
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    include/linux/fortify-string.h
 +F:    lib/fortify_kunit.c
  F:    lib/test_fortify/*
  F:    scripts/test_fortify.sh
  K:    \b__NO_FORTIFY\b
@@@ -8450,19 -8410,6 +8450,19 @@@ L:    platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/fujitsu-tablet.c
  
 +FUNCTION HOOKS (FTRACE)
 +M:    Steven Rostedt <rostedt@goodmis.org>
 +M:    Masami Hiramatsu <mhiramat@kernel.org>
 +R:    Mark Rutland <mark.rutland@arm.com>
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
 +F:    Documentation/trace/ftrace*
 +F:    kernel/trace/ftrace*
 +F:    kernel/trace/fgraph.c
 +F:    arch/*/*/*/*ftrace*
 +F:    arch/*/*/*ftrace*
 +F:    include/*/ftrace.h
 +
  FUNGIBLE ETHERNET DRIVERS
  M:    Dimitris Michailidis <dmichail@fungible.com>
  L:    netdev@vger.kernel.org
@@@ -8499,6 -8446,7 +8499,6 @@@ F:      tools/testing/selftests/futex
  
  GATEWORKS SYSTEM CONTROLLER (GSC) DRIVER
  M:    Tim Harvey <tharvey@gateworks.com>
 -M:    Robert Jones <rjones@gateworks.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/mfd/gateworks-gsc.yaml
  F:    drivers/mfd/gateworks-gsc.c
@@@ -8704,8 -8652,8 +8704,8 @@@ F:      drivers/input/touchscreen/goodix
  
  GOOGLE ETHERNET DRIVERS
  M:    Jeroen de Borst <jeroendb@google.com>
 -R:    Catherine Sullivan <csully@google.com>
 -R:    David Awogbemila <awogbemila@google.com>
 +M:    Catherine Sullivan <csully@google.com>
 +R:    Shailend Chand <shailend@google.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    Documentation/networking/device_drivers/ethernet/google/gve.rst
@@@ -8938,7 -8886,6 +8938,7 @@@ T:      git https://git.kernel.org/pub/scm/l
  F:    Documentation/ABI/testing/debugfs-driver-habanalabs
  F:    Documentation/ABI/testing/sysfs-driver-habanalabs
  F:    drivers/misc/habanalabs/
 +F:    include/trace/events/habanalabs.h
  F:    include/uapi/misc/habanalabs.h
  
  HACKRF MEDIA DRIVER
@@@ -8960,7 -8907,7 +8960,7 @@@ S:      Maintaine
  F:    Documentation/devicetree/bindings/media/nxp,imx8mq-vpu.yaml
  F:    Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
  F:    Documentation/devicetree/bindings/media/rockchip-vpu.yaml
 -F:    drivers/staging/media/hantro/
 +F:    drivers/media/platform/verisilicon/
  
  HARD DRIVE ACTIVE PROTECTION SYSTEM (HDAPS) DRIVER
  M:    Frank Seidel <frank@f-seidel.de>
@@@ -8996,7 -8943,7 +8996,7 @@@ F:      include/linux/hw_random.
  
  HARDWARE SPINLOCK CORE
  M:    Ohad Ben-Cohen <ohad@wizery.com>
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  R:    Baolin Wang <baolin.wang7@gmail.com>
  L:    linux-remoteproc@vger.kernel.org
  S:    Maintained
@@@ -9106,12 -9053,6 +9106,12 @@@ L:    linux-input@vger.kernel.or
  S:    Supported
  F:    drivers/hid/hid-playstation.c
  
 +HID PHOENIX RC FLIGHT CONTROLLER
 +M:    Marcus Folkesson <marcus.folkesson@gmail.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hid/hid-pxrc.c
 +
  HID SENSOR HUB DRIVERS
  M:    Jiri Kosina <jikos@kernel.org>
  M:    Jonathan Cameron <jic23@kernel.org>
@@@ -9124,12 -9065,6 +9124,12 @@@ F:    drivers/hid/hid-sensor-
  F:    drivers/iio/*/hid-*
  F:    include/linux/hid-sensor-*
  
 +HID VRC-2 CAR CONTROLLER DRIVER
 +M:    Marcus Folkesson <marcus.folkesson@gmail.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hid/hid-vrc2.c
 +
  HID WACOM DRIVER
  M:    Ping Cheng <ping.cheng@wacom.com>
  M:    Jason Gerecke  <jason.gerecke@wacom.com>
@@@ -9182,13 -9117,12 +9182,13 @@@ F:   net/dsa/tag_hellcreek.
  
  HISILICON DMA DRIVER
  M:    Zhou Wang <wangzhou1@hisilicon.com>
 +M:    Jie Hai <haijie1@hisilicon.com>
  L:    dmaengine@vger.kernel.org
  S:    Maintained
  F:    drivers/dma/hisi_dma.c
  
  HISILICON GPIO DRIVER
 -M:    Luo Jiaxing <luojiaxing@huawei.com>
 +M:    Jay Fang <f.fangjian@huawei.com>
  L:    linux-gpio@vger.kernel.org
  S:    Maintained
  F:    drivers/gpio/gpio-hisi.c
@@@ -9254,14 -9188,6 +9254,14 @@@ S:    Supporte
  F:    Documentation/admin-guide/perf/hns3-pmu.rst
  F:    drivers/perf/hisilicon/hns3_pmu.c
  
 +HISILICON PTT DRIVER
 +M:    Yicong Yang <yangyicong@hisilicon.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-devices-hisi_ptt
 +F:    Documentation/trace/hisi-ptt.rst
 +F:    drivers/hwtracing/ptt/
 +
  HISILICON QM DRIVER
  M:    Weili Qian <qianweili@huawei.com>
  M:    Zhou Wang <wangzhou1@hisilicon.com>
@@@ -9282,8 -9208,8 +9282,8 @@@ F:      Documentation/ABI/testing/debugfs-hi
  F:    drivers/crypto/hisilicon/zip/
  
  HISILICON ROCE DRIVER
 +M:    Haoyue Xu <xuhaoyue1@hisilicon.com>
  M:    Wenpeng Liang <liangwenpeng@huawei.com>
 -M:    Weihang Li <liweihang@huawei.com>
  L:    linux-rdma@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/infiniband/hisilicon-hns-roce.txt
@@@ -9720,13 -9646,6 +9720,13 @@@ S:    Orpha
  F:    Documentation/ia64/
  F:    arch/ia64/
  
 +IBM Operation Panel Input Driver
 +M:    Eddie James <eajames@linux.ibm.com>
 +L:    linux-input@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/input/ibm,op-panel.yaml
 +F:    drivers/input/misc/ibm-panel.c
 +
  IBM Power 842 compression accelerator
  M:    Haren Myneni <haren@us.ibm.com>
  S:    Supported
@@@ -10459,6 -10378,7 +10459,6 @@@ INTEL MENLOW THERMAL DRIVE
  M:    Sujith Thomas <sujith.thomas@intel.com>
  L:    linux-pm@vger.kernel.org
  S:    Supported
 -W:    https://01.org/linux-acpi
  F:    drivers/thermal/intel/intel_menlow.c
  
  INTEL P-Unit IPC DRIVER
@@@ -10706,8 -10626,8 +10706,8 @@@ L:   iommu@lists.linux.de
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git
  F:    drivers/iommu/dma-iommu.c
 +F:    drivers/iommu/dma-iommu.h
  F:    drivers/iommu/iova.c
 -F:    include/linux/dma-iommu.h
  F:    include/linux/iova.h
  
  IOMMU SUBSYSTEM
@@@ -10908,7 -10828,7 +10908,7 @@@ F:   drivers/media/tuners/it913x
  
  ITE IT66121 HDMI BRIDGE DRIVER
  M:    Phong LE <ple@baylibre.com>
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  S:    Maintained
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  F:    Documentation/devicetree/bindings/display/bridge/ite,it66121.yaml
@@@ -11019,6 -10939,7 +11019,6 @@@ F:   arch/*/include/asm/*kasan.
  F:    arch/*/mm/kasan_init*
  F:    include/linux/kasan*.h
  F:    lib/Kconfig.kasan
 -F:    lib/test_kasan*.c
  F:    mm/kasan/
  F:    scripts/Makefile.kasan
  
@@@ -11152,8 -11073,8 +11152,8 @@@ F:   tools/testing/selftests
  KERNEL SMB3 SERVER (KSMBD)
  M:    Namjae Jeon <linkinjeon@kernel.org>
  M:    Steve French <sfrench@samba.org>
 -M:    Hyunchul Lee <hyc.lee@gmail.com>
  R:    Sergey Senozhatsky <senozhatsky@chromium.org>
 +R:    Tom Talpey <tom@talpey.com>
  L:    linux-cifs@vger.kernel.org
  S:    Maintained
  T:    git git://git.samba.org/ksmbd.git
@@@ -11204,8 -11125,7 +11204,8 @@@ R:   Alexandru Elisei <alexandru.elisei@a
  R:    Suzuki K Poulose <suzuki.poulose@arm.com>
  R:    Oliver Upton <oliver.upton@linux.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -L:    kvmarm@lists.cs.columbia.edu (moderated for non-subscribers)
 +L:    kvmarm@lists.linux.dev
 +L:    kvmarm@lists.cs.columbia.edu (deprecated, moderated for non-subscribers)
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git
  F:    arch/arm64/include/asm/kvm*
@@@ -11427,7 -11347,7 +11427,7 @@@ F:   kernel/debug
  F:    kernel/module/kdb.c
  
  KHADAS MCU MFD DRIVER
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    linux-amlogic@lists.infradead.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/mfd/khadas,mcu.yaml
@@@ -11453,27 -11373,13 +11453,27 @@@ F:        kernel/kmod.
  F:    lib/test_kmod.c
  F:    tools/testing/selftests/kmod/
  
 +KMSAN
 +M:    Alexander Potapenko <glider@google.com>
 +R:    Marco Elver <elver@google.com>
 +R:    Dmitry Vyukov <dvyukov@google.com>
 +L:    kasan-dev@googlegroups.com
 +S:    Maintained
 +F:    Documentation/dev-tools/kmsan.rst
 +F:    arch/*/include/asm/kmsan.h
 +F:    arch/*/mm/kmsan_*
 +F:    include/linux/kmsan*.h
 +F:    lib/Kconfig.kmsan
 +F:    mm/kmsan/
 +F:    scripts/Makefile.kmsan
 +
  KPROBES
  M:    Naveen N. Rao <naveen.n.rao@linux.ibm.com>
  M:    Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
  M:    "David S. Miller" <davem@davemloft.net>
  M:    Masami Hiramatsu <mhiramat@kernel.org>
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
  F:    Documentation/trace/kprobes.rst
  F:    include/asm-generic/kprobes.h
  F:    include/linux/kprobes.h
@@@ -11650,15 -11556,6 +11650,15 @@@ F: drivers/ata/ahci_platform.
  F:    drivers/ata/libahci_platform.c
  F:    include/linux/ahci_platform.h
  
 +LIBATA SATA AHCI SYNOPSYS DWC CONTROLLER DRIVER
 +M:    Serge Semin <fancer.lancer@gmail.com>
 +L:    linux-ide@vger.kernel.org
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata.git
 +F:    Documentation/devicetree/bindings/ata/baikal,bt1-ahci.yaml
 +F:    Documentation/devicetree/bindings/ata/snps,dwc-ahci.yaml
 +F:    drivers/ata/ahci_dwc.c
 +
  LIBATA SATA PROMISE TX2/TX4 CONTROLLER DRIVER
  M:    Mikael Pettersson <mikpelinux@gmail.com>
  L:    linux-ide@vger.kernel.org
@@@ -11733,7 -11630,6 +11733,7 @@@ F:   Documentation/process/license-rules.
  F:    LICENSES/
  F:    scripts/spdxcheck-test.sh
  F:    scripts/spdxcheck.py
 +F:    scripts/spdxexclude
  
  LINEAR RANGES HELPERS
  M:    Mark Brown <broonie@kernel.org>
@@@ -12032,7 -11928,7 +12032,7 @@@ LTC2688 IIO DAC DRIVE
  M:    Nuno Sá <nuno.sa@analog.com>
  L:    linux-iio@vger.kernel.org
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/ABI/testing/sysfs-bus-iio-dac-ltc2688
  F:    Documentation/devicetree/bindings/iio/dac/adi,ltc2688.yaml
  F:    drivers/iio/dac/ltc2688.c
@@@ -12197,18 -12093,6 +12197,18 @@@ L: linux-man@vger.kernel.or
  S:    Maintained
  W:    http://www.kernel.org/doc/man-pages
  
 +MAPLE TREE
 +M:    Liam R. Howlett <Liam.Howlett@oracle.com>
 +L:    linux-mm@kvack.org
 +S:    Supported
 +F:    Documentation/core-api/maple_tree.rst
 +F:    include/linux/maple_tree.h
 +F:    include/trace/events/maple_tree.h
 +F:    lib/maple_tree.c
 +F:    lib/test_maple_tree.c
 +F:    tools/testing/radix-tree/linux/maple_tree.h
 +F:    tools/testing/radix-tree/maple.c
 +
  MARDUK (CREATOR CI40) DEVICE TREE SUPPORT
  M:    Rahul Bedarkar <rahulbedarkar89@gmail.com>
  L:    linux-mips@vger.kernel.org
@@@ -12461,14 -12345,6 +12461,14 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/iio/proximity/maxbotix,mb1232.yaml
  F:    drivers/iio/proximity/mb1232.c
  
 +MAXIM MAX11205 DRIVER
 +M:    Ramona Bolboaca <ramona.bolboaca@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/adc/maxim,max11205.yaml
 +F:    drivers/iio/adc/max11205.c
 +
  MAXIM MAX17040 FAMILY FUEL GAUGE DRIVERS
  R:    Iskren Chernev <iskren.chernev@gmail.com>
  R:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
@@@ -12534,6 -12410,7 +12534,6 @@@ F:   drivers/power/supply/max77976_charge
  
  MAXIM MUIC CHARGER DRIVERS FOR EXYNOS BASED BOARDS
  M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-pm@vger.kernel.org
  S:    Supported
  B:    mailto:linux-samsung-soc@vger.kernel.org
@@@ -12545,6 -12422,7 +12545,6 @@@ F:   drivers/power/supply/max77693_charge
  MAXIM PMIC AND MUIC DRIVERS FOR EXYNOS BASED BOARDS
  M:    Chanwoo Choi <cw00.choi@samsung.com>
  M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
  B:    mailto:linux-samsung-soc@vger.kernel.org
@@@ -12940,12 -12818,6 +12940,12 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/media/mediatek-jpeg-*.yaml
  F:    drivers/media/platform/mediatek/jpeg/
  
 +MEDIATEK KEYPAD DRIVER
 +M:    Mattijs Korpershoek <mkorpershoek@baylibre.com>
 +S:    Supported
 +F:    Documentation/devicetree/bindings/input/mediatek,mt6779-keypad.yaml
 +F:    drivers/input/keyboard/mt6779-keypad.c
 +
  MEDIATEK MDP DRIVER
  M:    Minghsiu Tsai <minghsiu.tsai@mediatek.com>
  M:    Houlong Wei <houlong.wei@mediatek.com>
@@@ -12998,7 -12870,7 +12998,7 @@@ MEDIATEK MT7621/28/88 I2C DRIVE
  M:    Stefan Roese <sr@denx.de>
  L:    linux-i2c@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
 +F:    Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml
  F:    drivers/i2c/busses/i2c-mt7621.c
  
  MEDIATEK MT7621 PCIE CONTROLLER DRIVER
@@@ -13111,9 -12983,9 +13111,9 @@@ F:   drivers/input/touchscreen/melfas_mip
  
  MELLANOX BLUEFIELD I2C DRIVER
  M:    Khalil Blaiech <kblaiech@nvidia.com>
 +M:    Asmaa Mnebhi <asmaa@nvidia.com>
  L:    linux-i2c@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml
  F:    drivers/i2c/busses/i2c-mlxbf.c
  
  MELLANOX ETHERNET DRIVER (mlx4_en)
@@@ -13317,13 -13189,6 +13317,13 @@@ F: drivers/mtd
  F:    include/linux/mtd/
  F:    include/uapi/mtd/
  
 +MEMSENSING MICROSYSTEMS MSA311 DRIVER
 +M:    Dmitry Rokosov <ddrokosov@sberdevices.ru>
 +L:    linux-iio@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/iio/accel/memsensing,msa311.yaml
 +F:    drivers/iio/accel/msa311.c
 +
  MEN A21 WATCHDOG DRIVER
  M:    Johannes Thumshirn <morbidrsa@gmail.com>
  L:    linux-watchdog@vger.kernel.org
@@@ -13353,7 -13218,7 +13353,7 @@@ S:   Maintaine
  F:    drivers/watchdog/menz69_wdt.c
  
  MESON AO CEC DRIVER FOR AMLOGIC SOCS
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    linux-media@vger.kernel.org
  L:    linux-amlogic@lists.infradead.org
  S:    Supported
@@@ -13364,7 -13229,7 +13364,7 @@@ F:   drivers/media/cec/platform/meson/ao-
  F:    drivers/media/cec/platform/meson/ao-cec.c
  
  MESON GE2D DRIVER FOR AMLOGIC SOCS
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    linux-media@vger.kernel.org
  L:    linux-amlogic@lists.infradead.org
  S:    Supported
@@@ -13380,7 -13245,7 +13380,7 @@@ F:   Documentation/devicetree/bindings/mt
  F:    drivers/mtd/nand/raw/meson_*
  
  MESON VIDEO DECODER DRIVER FOR AMLOGIC SOCS
 -M:    Neil Armstrong <narmstrong@baylibre.com>
 +M:    Neil Armstrong <neil.armstrong@linaro.org>
  L:    linux-media@vger.kernel.org
  L:    linux-amlogic@lists.infradead.org
  S:    Supported
@@@ -13427,7 -13292,7 +13427,7 @@@ F:   include/dt-bindings/dma/at91.
  MICROCHIP AT91 SERIAL DRIVER
  M:    Richard Genoud <richard.genoud@gmail.com>
  S:    Maintained
 -F:    Documentation/devicetree/bindings/mfd/atmel-usart.txt
 +F:    Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
  F:    drivers/tty/serial/atmel_serial.c
  F:    drivers/tty/serial/atmel_serial.h
  
@@@ -13435,7 -13300,7 +13435,7 @@@ MICROCHIP AT91 USART MFD DRIVE
  M:    Radu Pirea <radu_nicolae.pirea@upb.ro>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/mfd/atmel-usart.txt
 +F:    Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
  F:    drivers/mfd/at91-usart.c
  F:    include/dt-bindings/mfd/at91-usart.h
  
@@@ -13443,7 -13308,7 +13443,7 @@@ MICROCHIP AT91 USART SPI DRIVE
  M:    Radu Pirea <radu_nicolae.pirea@upb.ro>
  L:    linux-spi@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/mfd/atmel-usart.txt
 +F:    Documentation/devicetree/bindings/serial/atmel,at91-usart.yaml
  F:    drivers/spi/spi-at91-usart.c
  
  MICROCHIP AUDIO ASOC DRIVERS
@@@ -13545,7 -13410,7 +13545,7 @@@ MICROCHIP MCP3911 ADC DRIVE
  M:    Marcus Folkesson <marcus.folkesson@gmail.com>
  M:    Kent Gustavsson <kent@minoris.se>
  L:    linux-iio@vger.kernel.org
 -S:    Supported
 +S:    Maintained
  F:    Documentation/devicetree/bindings/iio/adc/microchip,mcp3911.yaml
  F:    drivers/iio/adc/mcp3911.c
  
@@@ -13561,14 -13426,6 +13561,14 @@@ S: Supporte
  F:    Documentation/devicetree/bindings/mtd/atmel-nand.txt
  F:    drivers/mtd/nand/raw/atmel/*
  
 +MICROCHIP PCI1XXXX GP DRIVER
 +M:    Kumaravel Thiagarajan <kumaravel.thiagarajan@microchip.com>
 +L:    linux-gpio@vger.kernel.org
 +S:    Supported
 +F:    drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.c
 +F:    drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gp.h
 +F:    drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gpio.c
 +
  MICROCHIP OTPC DRIVER
  M:    Claudiu Beznea <claudiu.beznea@microchip.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -13577,14 -13434,6 +13577,14 @@@ F: Documentation/devicetree/bindings/nv
  F:    drivers/nvmem/microchip-otpc.c
  F:    include/dt-bindings/nvmem/microchip,sama7g5-otpc.h
  
 +MICROCHIP PCI1XXXX I2C DRIVER
 +M:    Tharun Kumar P <tharunkumar.pasumarthi@microchip.com>
 +M:    Kumaravel Thiagarajan <kumaravel.thiagarajan@microchip.com>
 +M:    Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>
 +L:    linux-i2c@vger.kernel.org
 +S:    Maintained
 +F:    drivers/i2c/busses/i2c-mchp-pci1xxxx.c
 +
  MICROCHIP PWM DRIVER
  M:    Claudiu Beznea <claudiu.beznea@microchip.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -13644,7 -13493,6 +13644,7 @@@ M:   UNGLinuxDriver@microchip.co
  L:    linux-mips@vger.kernel.org
  S:    Supported
  F:    Documentation/devicetree/bindings/mips/mscc.txt
 +F:    Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
  F:    Documentation/devicetree/bindings/power/reset/ocelot-reset.txt
  F:    arch/mips/boot/dts/mscc/
  F:    arch/mips/configs/generic/board-ocelot.config
@@@ -13932,7 -13780,7 +13932,7 @@@ MOTION EYE VAIO PICTUREBOOK CAMERA DRIV
  S:    Orphan
  W:    http://popies.net/meye/
  F:    Documentation/userspace-api/media/drivers/meye*
 -F:    drivers/media/pci/meye/
 +F:    drivers/staging/media/deprecated/meye/
  F:    include/uapi/linux/meye.h
  
  MOTORCOMM PHY DRIVER
@@@ -14601,7 -14449,6 +14601,7 @@@ M:   Willy Tarreau <w@1wt.eu
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/nolibc.git
  F:    tools/include/nolibc/
 +F:    tools/testing/selftests/nolibc/
  
  NSDEPS
  M:    Matthias Maennich <maennich@google.com>
@@@ -14684,7 -14531,6 +14684,7 @@@ M:   Daniel Dadap <ddadap@nvidia.com
  L:    platform-driver-x86@vger.kernel.org
  S:    Supported
  F:    drivers/platform/x86/nvidia-wmi-ec-backlight.c
 +F:    include/linux/platform_data/x86/nvidia-wmi-ec-backlight.h
  
  NVM EXPRESS DRIVER
  M:    Keith Busch <kbusch@kernel.org>
@@@ -14700,15 -14546,6 +14700,15 @@@ F: drivers/nvme/common
  F:    include/linux/nvme*
  F:    include/uapi/linux/nvme_ioctl.h
  
 +NVM EXPRESS FABRICS AUTHENTICATION
 +M:    Hannes Reinecke <hare@suse.de>
 +L:    linux-nvme@lists.infradead.org
 +S:    Supported
 +F:    drivers/nvme/host/auth.c
 +F:    drivers/nvme/target/auth.c
 +F:    drivers/nvme/target/fabrics-cmd-auth.c
 +F:    include/linux/nvme-auth.h
 +
  NVM EXPRESS FC TRANSPORT DRIVERS
  M:    James Smart <james.smart@broadcom.com>
  L:    linux-nvme@lists.infradead.org
@@@ -14858,15 -14695,6 +14858,15 @@@ S: Orpha
  F:    Documentation/devicetree/bindings/net/nfc/nxp,nci.yaml
  F:    drivers/nfc/nxp-nci
  
 +NXP i.MX 8MP DW100 V4L2 DRIVER
 +M:    Xavier Roumegue <xavier.roumegue@oss.nxp.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/nxp,dw100.yaml
 +F:    Documentation/userspace-api/media/drivers/dw100.rst
 +F:    drivers/media/platform/nxp/dw100/
 +F:    include/uapi/linux/dw100.h
 +
  NXP i.MX 8QXP/8QM JPEG V4L2 DRIVER
  M:    Mirela Rabulea <mirela.rabulea@nxp.com>
  R:    NXP Linux Team <linux-imx@nxp.com>
@@@ -14918,13 -14746,6 +14918,13 @@@ F: net/dsa/tag_ocelot.
  F:    net/dsa/tag_ocelot_8021q.c
  F:    tools/testing/selftests/drivers/net/ocelot/*
  
 +OCELOT EXTERNAL SWITCH CONTROL
 +M:    Colin Foster <colin.foster@in-advantage.com>
 +S:    Supported
 +F:    Documentation/devicetree/bindings/mfd/mscc,ocelot.yaml
 +F:    drivers/mfd/ocelot*
 +F:    include/linux/mfd/ocelot.h
 +
  OCXL (Open Coherent Accelerator Processor Interface OpenCAPI) DRIVER
  M:    Frederic Barrat <fbarrat@linux.ibm.com>
  M:    Andrew Donnellan <ajd@linux.ibm.com>
@@@ -15119,7 -14940,6 +15119,7 @@@ F:   drivers/regulator/palmas-regulator*.
  F:    drivers/regulator/pbias-regulator.c
  F:    drivers/regulator/tps65217-regulator.c
  F:    drivers/regulator/tps65218-regulator.c
 +F:    drivers/regulator/tps65219-regulator.c
  F:    drivers/regulator/tps65910-regulator.c
  F:    drivers/regulator/twl-regulator.c
  F:    drivers/regulator/twl6030-regulator.c
@@@ -15867,7 -15687,6 +15867,7 @@@ PCI ENDPOINT SUBSYSTE
  M:    Kishon Vijay Abraham I <kishon@ti.com>
  M:    Lorenzo Pieralisi <lpieralisi@kernel.org>
  R:    Krzysztof Wilczyński <kw@linux.com>
 +R:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  L:    linux-pci@vger.kernel.org
  S:    Supported
  Q:    https://patchwork.kernel.org/project/linux-pci/list/
@@@ -15881,8 -15700,8 +15881,8 @@@ F:   drivers/pci/endpoint
  F:    tools/pci/
  
  PCI ENHANCED ERROR HANDLING (EEH) FOR POWERPC
 -M:    Russell Currey <ruscur@russell.cc>
 -M:    Oliver O'Halloran <oohall@gmail.com>
 +M:    Mahesh J Salgaonkar <mahesh@linux.ibm.com>
 +R:    Oliver O'Halloran <oohall@gmail.com>
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Supported
  F:    Documentation/PCI/pci-error-recovery.rst
@@@ -16306,7 -16125,7 +16306,7 @@@ F:   drivers/gpio/gpio-sama5d2-piobu.
  F:    drivers/pinctrl/pinctrl-at91*
  
  PIN CONTROLLER - QUALCOMM
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pinctrl/qcom,*.txt
@@@ -16359,12 -16178,6 +16359,12 @@@ F: Documentation/devicetree/bindings/pi
  F:    drivers/pinctrl/sunplus/
  F:    include/dt-bindings/pinctrl/sppctl*.h
  
 +PINE64 PINEPHONE KEYBOARD DRIVER
 +M:    Samuel Holland <samuel@sholland.org>
 +S:    Supported
 +F:    Documentation/devicetree/bindings/input/pine64,pinephone-keyboard.yaml
 +F:    drivers/input/keyboard/pinephone-keyboard.c
 +
  PKTCDVD DRIVER
  M:    linux-block@vger.kernel.org
  S:    Orphan
@@@ -16725,6 -16538,14 +16725,6 @@@ T:  git git://linuxtv.org/media_tree.gi
  F:    drivers/media/usb/pwc/*
  F:    include/trace/events/pwc.h
  
 -PWM FAN DRIVER
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 -L:    linux-hwmon@vger.kernel.org
 -S:    Supported
 -F:    Documentation/devicetree/bindings/hwmon/pwm-fan.txt
 -F:    Documentation/hwmon/pwm-fan.rst
 -F:    drivers/hwmon/pwm-fan.c
 -
  PWM IR Transmitter
  M:    Sean Young <sean@mess.org>
  L:    linux-media@vger.kernel.org
@@@ -16793,9 -16614,6 +16793,9 @@@ M:   Srinivas Kandagatla <srinivas.kandag
  M:    Banajit Goswami <bgoswami@quicinc.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
 +F:    Documentation/devicetree/bindings/soc/qcom/qcom,apr.yaml
 +F:    Documentation/devicetree/bindings/sound/qcom,*
 +F:    drivers/soc/qcom/apr.c
  F:    include/dt-bindings/sound/qcom,wcd9335.h
  F:    sound/soc/codecs/lpass-rx-macro.*
  F:    sound/soc/codecs/lpass-tx-macro.*
@@@ -17000,7 -16818,7 +17000,7 @@@ F:   Documentation/devicetree/bindings/me
  F:    drivers/media/platform/qcom/camss/
  
  QUALCOMM CLOCK DRIVERS
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  L:    linux-arm-msm@vger.kernel.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git
@@@ -17039,7 -16857,6 +17039,7 @@@ F:   drivers/net/ethernet/qualcomm/emac
  
  QUALCOMM ETHQOS ETHERNET DRIVER
  M:    Vinod Koul <vkoul@kernel.org>
 +R:    Bhupesh Sharma <bhupesh.sharma@linaro.org>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/qcom,ethqos.txt
@@@ -17050,7 -16867,7 +17050,7 @@@ M:   Srinivas Kandagatla <srinivas.kandag
  M:    Amol Maheshwari <amahesh@qti.qualcomm.com>
  L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/misc/qcom,fastrpc.txt
 +F:    Documentation/devicetree/bindings/misc/qcom,fastrpc.yaml
  F:    drivers/misc/fastrpc.c
  F:    include/uapi/misc/fastrpc.h
  
@@@ -17490,7 -17307,7 +17490,7 @@@ S:   Supporte
  F:    fs/reiserfs/
  
  REMOTE PROCESSOR (REMOTEPROC) SUBSYSTEM
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  M:    Mathieu Poirier <mathieu.poirier@linaro.org>
  L:    linux-remoteproc@vger.kernel.org
  S:    Maintained
@@@ -17503,7 -17320,7 +17503,7 @@@ F:   include/linux/remoteproc.
  F:    include/linux/remoteproc/
  
  REMOTE PROCESSOR MESSAGING (RPMSG) SUBSYSTEM
 -M:    Bjorn Andersson <bjorn.andersson@linaro.org>
 +M:    Bjorn Andersson <andersson@kernel.org>
  M:    Mathieu Poirier <mathieu.poirier@linaro.org>
  L:    linux-remoteproc@vger.kernel.org
  S:    Maintained
@@@ -17629,12 -17446,6 +17629,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/mtd/renesas-nandc.yaml
  F:    drivers/mtd/nand/raw/renesas-nand-controller.c
  
 +RENESAS VERSACLOCK 7 CLOCK DRIVER
 +M:    Alex Helms <alexander.helms.jy@renesas.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/clock/renesas,versaclock7.yaml
 +F:    drivers/clk/clk-versaclock7.c
 +
  RESET CONTROLLER FRAMEWORK
  M:    Philipp Zabel <p.zabel@pengutronix.de>
  S:    Maintained
@@@ -17721,25 -17532,13 +17721,25 @@@ M:        Conor Dooley <conor.dooley@microchip
  M:    Daire McNamara <daire.mcnamara@microchip.com>
  L:    linux-riscv@lists.infradead.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/clock/microchip,mpfs.yaml
 +F:    Documentation/devicetree/bindings/gpio/microchip,mpfs-gpio.yaml
 +F:    Documentation/devicetree/bindings/i2c/microchip,corei2c.yaml
 +F:    Documentation/devicetree/bindings/mailbox/microchip,mpfs-mailbox.yaml
 +F:    Documentation/devicetree/bindings/net/can/microchip,mpfs-can.yaml
 +F:    Documentation/devicetree/bindings/pwm/microchip,corepwm.yaml
 +F:    Documentation/devicetree/bindings/soc/microchip/microchip,mpfs-sys-controller.yaml
 +F:    Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml
 +F:    Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
  F:    arch/riscv/boot/dts/microchip/
  F:    drivers/char/hw_random/mpfs-rng.c
  F:    drivers/clk/microchip/clk-mpfs.c
 +F:    drivers/i2c/busses/i2c-microchip-core.c
  F:    drivers/mailbox/mailbox-mpfs.c
  F:    drivers/pci/controller/pcie-microchip-host.c
 +F:    drivers/reset/reset-mpfs.c
  F:    drivers/rtc/rtc-mpfs.c
  F:    drivers/soc/microchip/
 +F:    drivers/spi/spi-microchip-core-qspi.c
  F:    drivers/spi/spi-microchip-core.c
  F:    drivers/usb/musb/mpfs.c
  F:    include/soc/microchip/mpfs.h
@@@ -17936,35 -17735,6 +17936,35 @@@ L: linux-rdma@vger.kernel.or
  S:    Maintained
  F:    drivers/infiniband/ulp/rtrs/
  
 +RUNTIME VERIFICATION (RV)
 +M:    Daniel Bristot de Oliveira <bristot@kernel.org>
 +M:    Steven Rostedt <rostedt@goodmis.org>
 +L:    linux-trace-devel@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/trace/rv/
 +F:    include/linux/rv.h
 +F:    include/rv/
 +F:    kernel/trace/rv/
 +F:    tools/verification/
 +
 +RUST
 +M:    Miguel Ojeda <ojeda@kernel.org>
 +M:    Alex Gaynor <alex.gaynor@gmail.com>
 +M:    Wedson Almeida Filho <wedsonaf@gmail.com>
 +R:    Boqun Feng <boqun.feng@gmail.com>
 +R:    Gary Guo <gary@garyguo.net>
 +R:    Björn Roy Baron <bjorn3_gh@protonmail.com>
 +L:    rust-for-linux@vger.kernel.org
 +S:    Supported
 +W:    https://github.com/Rust-for-Linux/linux
 +B:    https://github.com/Rust-for-Linux/linux/issues
 +T:    git https://github.com/Rust-for-Linux/linux.git rust-next
 +F:    Documentation/rust/
 +F:    rust/
 +F:    samples/rust/
 +F:    scripts/*rust*
 +K:    \b(?i:rust)\b
 +
  RXRPC SOCKETS (AF_RXRPC)
  M:    David Howells <dhowells@redhat.com>
  M:    Marc Dionne <marc.dionne@auristor.com>
@@@ -18136,7 -17906,8 +18136,7 @@@ M:   Hans Verkuil <hverkuil@xs4all.nl
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/common/saa7146/
 -F:    drivers/media/pci/saa7146/
 +F:    drivers/staging/media/deprecated/saa7146/
  F:    include/media/drv-intf/saa7146*
  
  SAFESETID SECURITY MODULE
@@@ -18191,6 -17962,7 +18191,6 @@@ F:   drivers/platform/x86/samsung-laptop.
  
  SAMSUNG MULTIFUNCTION PMIC DEVICE DRIVERS
  M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-kernel@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
  S:    Supported
@@@ -18255,14 -18027,12 +18255,14 @@@ Q:        https://patchwork.linuxtv.org/projec
  F:    drivers/media/platform/samsung/exynos4-is/
  
  SAMSUNG SOC CLOCK DRIVERS
 +M:    Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
  M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
  M:    Tomasz Figa <tomasz.figa@gmail.com>
  M:    Chanwoo Choi <cw00.choi@samsung.com>
  R:    Alim Akhtar <alim.akhtar@samsung.com>
  L:    linux-samsung-soc@vger.kernel.org
  S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/snawrocki/clk.git
  F:    Documentation/devicetree/bindings/clock/samsung,*.yaml
  F:    Documentation/devicetree/bindings/clock/samsung,s3c*
@@@ -18487,7 -18257,7 +18487,7 @@@ F:   drivers/mmc/host/sdhci-brcmstb
  SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) DRIVER
  M:    Adrian Hunter <adrian.hunter@intel.com>
  L:    linux-mmc@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/mmc/host/sdhci*
  
  SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) MICROCHIP DRIVER
@@@ -18510,7 -18280,7 +18510,7 @@@ S:   Maintaine
  F:    drivers/mmc/host/sdhci-spear.c
  
  SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) TI OMAP DRIVER
 -M:    Kishon Vijay Abraham I <kishon@ti.com>
 +M:    Vignesh Raghavendra <vigneshr@ti.com>
  L:    linux-mmc@vger.kernel.org
  S:    Maintained
  F:    drivers/mmc/host/sdhci-omap.c
@@@ -19615,8 -19385,8 +19615,8 @@@ M:   Emil Renner Berthing <kernel@esmil.d
  L:    linux-gpio@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pinctrl/starfive,jh7100-pinctrl.yaml
 -F:    drivers/pinctrl/pinctrl-starfive.c
 -F:    include/dt-bindings/pinctrl/pinctrl-starfive.h
 +F:    drivers/pinctrl/starfive/
 +F:    include/dt-bindings/pinctrl/pinctrl-starfive-jh7100.h
  
  STARFIVE JH7100 RESET CONTROLLER DRIVER
  M:    Emil Renner Berthing <kernel@esmil.dk>
@@@ -19711,11 -19481,6 +19711,11 @@@ L: netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/dlink/sundance.c
  
 +SUN HAPPY MEAL ETHERNET DRIVER
 +M:    Sean Anderson <seanga2@gmail.com>
 +S:    Maintained
 +F:    drivers/net/ethernet/sun/sunhme.*
 +
  SUNPLUS ETHERNET DRIVER
  M:    Wells Lu <wellslutw@gmail.com>
  L:    netdev@vger.kernel.org
@@@ -19730,15 -19495,6 +19730,15 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
  F:    drivers/nvmem/sunplus-ocotp.c
  
 +SUNPLUS USB2 PHY DRIVER
 +M:    Vincent Shih <vincent.sunplus@gmail.com>
 +L:    linux-usb@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/sunplus,sp7021-usb2-phy.yaml
 +F:    drivers/phy/sunplus/Kconfig
 +F:    drivers/phy/sunplus/Makefile
 +F:    drivers/phy/sunplus/phy-sunplus-usb2.c
 +
  SUNPLUS PWM DRIVER
  M:    Hammer Hsieh <hammerh0314@gmail.com>
  S:    Maintained
@@@ -19804,6 -19560,16 +19804,6 @@@ S:  Maintaine
  F:    Documentation/admin-guide/svga.rst
  F:    arch/x86/boot/video*
  
 -SWIOTLB SUBSYSTEM
 -M:    Christoph Hellwig <hch@infradead.org>
 -L:    iommu@lists.linux.dev
 -S:    Supported
 -W:    http://git.infradead.org/users/hch/dma-mapping.git
 -T:    git git://git.infradead.org/users/hch/dma-mapping.git
 -F:    arch/*/kernel/pci-swiotlb.c
 -F:    include/linux/swiotlb.h
 -F:    kernel/dma/swiotlb.c
 -
  SWITCHDEV
  M:    Jiri Pirko <jiri@resnulli.us>
  M:    Ivan Vecera <ivecera@redhat.com>
@@@ -20172,7 -19938,6 +20172,7 @@@ S:   Supporte
  F:    drivers/net/team/
  F:    include/linux/if_team.h
  F:    include/uapi/linux/if_team.h
 +F:    tools/testing/selftests/drivers/net/team/
  
  TECHNOLOGIC SYSTEMS TS-5500 PLATFORM SUPPORT
  M:    "Savoir-faire Linux Inc." <kernel@savoirfairelinux.com>
@@@ -20486,6 -20251,13 +20486,6 @@@ M:  Robert Richter <rric@kernel.org
  S:    Odd Fixes
  F:    drivers/gpio/gpio-thunderx.c
  
 -TI ADS131E0X ADC SERIES DRIVER
 -M:    Tomislav Denis <tomislav.denis@avl.com>
 -L:    linux-iio@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/iio/adc/ti,ads131e08.yaml
 -F:    drivers/iio/adc/ti-ads131e08.c
 -
  TI AM437X VPFE DRIVER
  M:    "Lad, Prabhakar" <prabhakar.csengg@gmail.com>
  L:    linux-media@vger.kernel.org
@@@ -20537,7 -20309,6 +20537,7 @@@ R:   Sekhar Nori <nsekhar@ti.com
  S:    Maintained
  F:    Documentation/devicetree/bindings/clock/ti/davinci/
  F:    drivers/clk/davinci/
 +F:    include/linux/clk/davinci.h
  
  TI DAVINCI SERIES GPIO DRIVER
  M:    Keerthy <j-keerthy@ti.com>
@@@ -20554,18 -20325,8 +20554,18 @@@ W: https://linuxtv.or
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
  F:    drivers/media/platform/ti/davinci/
 +F:    drivers/staging/media/deprecated/vpfe_capture/
  F:    include/media/davinci/
  
 +TI ENHANCED CAPTURE (eCAP) DRIVER
 +M:    Vignesh Raghavendra <vigneshr@ti.com>
 +R:    Julien Panis <jpanis@baylibre.com>
 +L:    linux-iio@vger.kernel.org
 +L:    linux-omap@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/counter/ti,am62-ecap-capture.yaml
 +F:    drivers/counter/ti-ecap-capture.c
 +
  TI ENHANCED QUADRATURE ENCODER PULSE (eQEP) DRIVER
  R:    David Lechner <david@lechnology.com>
  L:    linux-iio@vger.kernel.org
@@@ -20704,7 -20465,7 +20704,7 @@@ S:   Odd fixe
  W:    https://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/tm6000*
 -F:    drivers/media/usb/tm6000/
 +F:    drivers/staging/media/deprecated/tm6000/
  
  TMIO/SDHI MMC DRIVER
  M:    Wolfram Sang <wsa+renesas@sang-engineering.com>
@@@ -20804,10 -20565,9 +20804,10 @@@ F: include/linux/toshiba.
  F:    include/uapi/linux/toshiba.h
  
  TOSHIBA TC358743 DRIVER
 -M:    Mats Randgaard <matrandg@cisco.com>
 +M:    Hans Verkuil <hverkuil-cisco@xs4all.nl>
  L:    linux-media@vger.kernel.org
  S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/tc358743.txt
  F:    drivers/media/i2c/tc358743*
  F:    include/media/i2c/tc358743.h
  
@@@ -20828,29 -20588,24 +20828,29 @@@ Q:        https://patchwork.kernel.org/project
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd.git
  F:    drivers/char/tpm/
  
 +TPS546D24 DRIVER
 +M:    Duke Du <dukedu83@gmail.com>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/hwmon/tps546d24.rst
 +F:    drivers/hwmon/pmbus/tps546d24.c
 +
  TRACING
  M:    Steven Rostedt <rostedt@goodmis.org>
 -M:    Ingo Molnar <mingo@redhat.com>
 +M:    Masami Hiramatsu <mhiramat@kernel.org>
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
 -F:    Documentation/trace/ftrace.rst
 -F:    arch/*/*/*/*ftrace*
 -F:    arch/*/*/*ftrace*
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
 +F:    Documentation/trace/*
  F:    fs/tracefs/
 -F:    include/*/ftrace.h
  F:    include/linux/trace*.h
  F:    include/trace/
  F:    kernel/trace/
 +F:    scripts/tracing/
  F:    tools/testing/selftests/ftrace/
  
  TRACING MMIO ACCESSES (MMIOTRACE)
  M:    Steven Rostedt <rostedt@goodmis.org>
 -M:    Ingo Molnar <mingo@kernel.org>
 +M:    Masami Hiramatsu <mhiramat@kernel.org>
  R:    Karol Herbst <karolherbst@gmail.com>
  R:    Pekka Paalanen <ppaalanen@gmail.com>
  L:    linux-kernel@vger.kernel.org
@@@ -20981,7 -20736,6 +20981,7 @@@ U-BOOT ENVIRONMENT VARIABLE
  M:    Rafał Miłecki <rafal@milecki.pl>
  S:    Maintained
  F:    Documentation/devicetree/bindings/nvmem/u-boot,env.yaml
 +F:    drivers/nvmem/u-boot-env.c
  
  UACCE ACCELERATOR FRAMEWORK
  M:    Zhangfei Gao <zhangfei.gao@linaro.org>
@@@ -21461,7 -21215,7 +21461,7 @@@ S:   Maintaine
  W:    http://royale.zerezo.com/zr364xx/
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/zr364xx*
 -F:    drivers/media/usb/zr364xx/
 +F:    drivers/staging/media/deprecated/zr364xx/
  
  USER-MODE LINUX (UML)
  M:    Richard Weinberger <richard@nod.at>
@@@ -21558,6 -21312,7 +21558,7 @@@ R:   Cornelia Huck <cohuck@redhat.com
  L:    kvm@vger.kernel.org
  S:    Maintained
  T:    git git://github.com/awilliam/linux-vfio.git
+ F:    Documentation/ABI/testing/sysfs-devices-vfio-dev
  F:    Documentation/driver-api/vfio.rst
  F:    drivers/vfio/
  F:    include/linux/vfio.h
@@@ -21789,7 -21544,7 +21790,7 @@@ F:   drivers/gpio/gpio-virtio.
  F:    include/uapi/linux/virtio_gpio.h
  
  VIRTIO GPU DRIVER
 -M:    David Airlie <airlied@linux.ie>
 +M:    David Airlie <airlied@redhat.com>
  M:    Gerd Hoffmann <kraxel@redhat.com>
  R:    Gurchetan Singh <gurchetansingh@chromium.org>
  R:    Chia-I Wu <olvaffe@gmail.com>
@@@ -21929,7 -21684,7 +21930,7 @@@ VMWARE BALLOON DRIVE
  M:    Nadav Amit <namit@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-kernel@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/misc/vmw_balloon.c
  
  VMWARE HYPERVISOR INTERFACE
@@@ -21948,14 -21703,14 +21949,14 @@@ M:        Bryan Tan <bryantan@vmware.com
  M:    Vishnu Dasa <vdasa@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-rdma@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/infiniband/hw/vmw_pvrdma/
  
 -VMware PVSCSI driver
 +VMWARE PVSCSI DRIVER
  M:    Vishal Bhakta <vbhakta@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-scsi@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/scsi/vmw_pvscsi.c
  F:    drivers/scsi/vmw_pvscsi.h
  
@@@ -21968,19 -21723,19 +21969,19 @@@ F:        drivers/ptp/ptp_vmw.
  
  VMWARE VMCI DRIVER
  M:    Bryan Tan <bryantan@vmware.com>
 -M:    Rajesh Jalisatgi <rjalisatgi@vmware.com>
  M:    Vishnu Dasa <vdasa@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-kernel@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/misc/vmw_vmci/
 +F:    include/linux/vmw_vmci*
  
  VMWARE VMMOUSE SUBDRIVER
  M:    Zack Rusin <zackr@vmware.com>
  R:    VMware Graphics Reviewers <linux-graphics-maintainer@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-input@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/input/mouse/vmmouse.c
  F:    drivers/input/mouse/vmmouse.h
  
@@@ -21988,17 -21743,9 +21989,17 @@@ VMWARE VMXNET3 ETHERNET DRIVE
  M:    Ronak Doshi <doshir@vmware.com>
  R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
 -S:    Maintained
 +S:    Supported
  F:    drivers/net/vmxnet3/
  
 +VMWARE VSOCK VMCI TRANSPORT DRIVER
 +M:    Bryan Tan <bryantan@vmware.com>
 +M:    Vishnu Dasa <vdasa@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
 +L:    linux-kernel@vger.kernel.org
 +S:    Supported
 +F:    net/vmw_vsock/vmci_transport*
 +
  VOCORE VOCORE2 BOARD
  M:    Harvey Hunt <harveyhuntnexus@gmail.com>
  L:    linux-mips@vger.kernel.org
@@@ -22044,7 -21791,7 +22045,7 @@@ F:   lib/test_scanf.
  F:    lib/vsprintf.c
  
  VT1211 HARDWARE MONITOR DRIVER
 -M:    Juerg Haefliger <juergh@gmail.com>
 +M:    Juerg Haefliger <juergh@proton.me>
  L:    linux-hwmon@vger.kernel.org
  S:    Maintained
  F:    Documentation/hwmon/vt1211.rst
@@@ -22103,11 -21850,9 +22104,11 @@@ F: drivers/input/tablet/wacom_serial4.
  
  WANGXUN ETHERNET DRIVER
  M:    Jiawen Wu <jiawenwu@trustnetic.com>
 +M:    Mengyuan Lou <mengyuanlou@net-swift.com>
 +W:    https://www.net-swift.com
  L:    netdev@vger.kernel.org
  S:    Maintained
 -F:    Documentation/networking/device_drivers/ethernet/wangxun/txgbe.rst
 +F:    Documentation/networking/device_drivers/ethernet/wangxun/*
  F:    drivers/net/ethernet/wangxun/
  
  WATCHDOG DEVICE DRIVERS
@@@ -22520,10 -22265,8 +22521,10 @@@ M: Stefano Stabellini <sstabellini@kern
  L:    xen-devel@lists.xenproject.org (moderated for non-subscribers)
  L:    iommu@lists.linux.dev
  S:    Supported
 -F:    arch/x86/xen/*swiotlb*
 -F:    drivers/xen/*swiotlb*
 +F:    arch/*/include/asm/xen/swiotlb-xen.h
 +F:    drivers/xen/swiotlb-xen.c
 +F:    include/xen/arm/swiotlb-xen.h
 +F:    include/xen/swiotlb-xen.h
  
  XFS FILESYSTEM
  C:    irc://irc.oftc.net/xfs
@@@ -684,42 -684,41 +684,41 @@@ static bool vfio_ap_mdev_filter_matrix(
                             AP_DOMAINS);
  }
  
- static int vfio_ap_mdev_probe(struct mdev_device *mdev)
+ static int vfio_ap_mdev_init_dev(struct vfio_device *vdev)
  {
-       struct ap_matrix_mdev *matrix_mdev;
-       int ret;
-       if ((atomic_dec_if_positive(&matrix_dev->available_instances) < 0))
-               return -EPERM;
-       matrix_mdev = kzalloc(sizeof(*matrix_mdev), GFP_KERNEL);
-       if (!matrix_mdev) {
-               ret = -ENOMEM;
-               goto err_dec_available;
-       }
-       vfio_init_group_dev(&matrix_mdev->vdev, &mdev->dev,
-                           &vfio_ap_matrix_dev_ops);
+       struct ap_matrix_mdev *matrix_mdev =
+               container_of(vdev, struct ap_matrix_mdev, vdev);
  
-       matrix_mdev->mdev = mdev;
+       matrix_mdev->mdev = to_mdev_device(vdev->dev);
        vfio_ap_matrix_init(&matrix_dev->info, &matrix_mdev->matrix);
        matrix_mdev->pqap_hook = handle_pqap;
        vfio_ap_matrix_init(&matrix_dev->info, &matrix_mdev->shadow_apcb);
        hash_init(matrix_mdev->qtable.queues);
  
+       return 0;
+ }
+ static int vfio_ap_mdev_probe(struct mdev_device *mdev)
+ {
+       struct ap_matrix_mdev *matrix_mdev;
+       int ret;
+       matrix_mdev = vfio_alloc_device(ap_matrix_mdev, vdev, &mdev->dev,
+                                       &vfio_ap_matrix_dev_ops);
+       if (IS_ERR(matrix_mdev))
+               return PTR_ERR(matrix_mdev);
        ret = vfio_register_emulated_iommu_dev(&matrix_mdev->vdev);
        if (ret)
-               goto err_list;
+               goto err_put_vdev;
        dev_set_drvdata(&mdev->dev, matrix_mdev);
        mutex_lock(&matrix_dev->mdevs_lock);
        list_add(&matrix_mdev->node, &matrix_dev->mdev_list);
        mutex_unlock(&matrix_dev->mdevs_lock);
        return 0;
  
- err_list:
-       vfio_uninit_group_dev(&matrix_mdev->vdev);
-       kfree(matrix_mdev);
- err_dec_available:
-       atomic_inc(&matrix_dev->available_instances);
+ err_put_vdev:
+       vfio_put_device(&matrix_mdev->vdev);
        return ret;
  }
  
@@@ -766,6 -765,11 +765,11 @@@ static void vfio_ap_mdev_unlink_fr_queu
        }
  }
  
+ static void vfio_ap_mdev_release_dev(struct vfio_device *vdev)
+ {
+       vfio_free_device(vdev);
+ }
  static void vfio_ap_mdev_remove(struct mdev_device *mdev)
  {
        struct ap_matrix_mdev *matrix_mdev = dev_get_drvdata(&mdev->dev);
        list_del(&matrix_mdev->node);
        mutex_unlock(&matrix_dev->mdevs_lock);
        mutex_unlock(&matrix_dev->guests_lock);
-       vfio_uninit_group_dev(&matrix_mdev->vdev);
-       kfree(matrix_mdev);
-       atomic_inc(&matrix_dev->available_instances);
+       vfio_put_device(&matrix_mdev->vdev);
  }
  
- static ssize_t name_show(struct mdev_type *mtype,
-                        struct mdev_type_attribute *attr, char *buf)
- {
-       return sprintf(buf, "%s\n", VFIO_AP_MDEV_NAME_HWVIRT);
- }
- static MDEV_TYPE_ATTR_RO(name);
- static ssize_t available_instances_show(struct mdev_type *mtype,
-                                       struct mdev_type_attribute *attr,
-                                       char *buf)
- {
-       return sprintf(buf, "%d\n",
-                      atomic_read(&matrix_dev->available_instances));
- }
- static MDEV_TYPE_ATTR_RO(available_instances);
- static ssize_t device_api_show(struct mdev_type *mtype,
-                              struct mdev_type_attribute *attr, char *buf)
- {
-       return sprintf(buf, "%s\n", VFIO_DEVICE_API_AP_STRING);
- }
- static MDEV_TYPE_ATTR_RO(device_api);
- static struct attribute *vfio_ap_mdev_type_attrs[] = {
-       &mdev_type_attr_name.attr,
-       &mdev_type_attr_device_api.attr,
-       &mdev_type_attr_available_instances.attr,
-       NULL,
- };
- static struct attribute_group vfio_ap_mdev_hwvirt_type_group = {
-       .name = VFIO_AP_MDEV_TYPE_HWVIRT,
-       .attrs = vfio_ap_mdev_type_attrs,
- };
- static struct attribute_group *vfio_ap_mdev_type_groups[] = {
-       &vfio_ap_mdev_hwvirt_type_group,
-       NULL,
- };
  #define MDEV_SHARING_ERR "Userspace may not re-assign queue %02lx.%04lx " \
                         "already assigned to %s"
  
@@@ -984,11 -943,6 +943,11 @@@ static ssize_t assign_adapter_store(str
                goto done;
        }
  
 +      if (test_bit_inv(apid, matrix_mdev->matrix.apm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        set_bit_inv(apid, matrix_mdev->matrix.apm);
  
        ret = vfio_ap_mdev_validate_masks(matrix_mdev);
@@@ -1114,11 -1068,6 +1073,11 @@@ static ssize_t unassign_adapter_store(s
                goto done;
        }
  
 +      if (!test_bit_inv(apid, matrix_mdev->matrix.apm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        clear_bit_inv((unsigned long)apid, matrix_mdev->matrix.apm);
        vfio_ap_mdev_hot_unplug_adapter(matrix_mdev, apid);
        ret = count;
@@@ -1193,11 -1142,6 +1152,11 @@@ static ssize_t assign_domain_store(stru
                goto done;
        }
  
 +      if (test_bit_inv(apqi, matrix_mdev->matrix.aqm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        set_bit_inv(apqi, matrix_mdev->matrix.aqm);
  
        ret = vfio_ap_mdev_validate_masks(matrix_mdev);
@@@ -1301,11 -1245,6 +1260,11 @@@ static ssize_t unassign_domain_store(st
                goto done;
        }
  
 +      if (!test_bit_inv(apqi, matrix_mdev->matrix.aqm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        clear_bit_inv((unsigned long)apqi, matrix_mdev->matrix.aqm);
        vfio_ap_mdev_hot_unplug_domain(matrix_mdev, apqi);
        ret = count;
@@@ -1349,11 -1288,6 +1308,11 @@@ static ssize_t assign_control_domain_st
                goto done;
        }
  
 +      if (test_bit_inv(id, matrix_mdev->matrix.adm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        /* Set the bit in the ADM (bitmask) corresponding to the AP control
         * domain number (id). The bits in the mask, from most significant to
         * least significant, correspond to IDs 0 up to the one less than the
@@@ -1403,11 -1337,6 +1362,11 @@@ static ssize_t unassign_control_domain_
                goto done;
        }
  
 +      if (!test_bit_inv(domid, matrix_mdev->matrix.adm)) {
 +              ret = count;
 +              goto done;
 +      }
 +
        clear_bit_inv(domid, matrix_mdev->matrix.adm);
  
        if (test_bit_inv(domid, matrix_mdev->shadow_apcb.adm)) {
@@@ -1824,6 -1753,8 +1783,8 @@@ static const struct attribute_group vfi
  };
  
  static const struct vfio_device_ops vfio_ap_matrix_dev_ops = {
+       .init = vfio_ap_mdev_init_dev,
+       .release = vfio_ap_mdev_release_dev,
        .open_device = vfio_ap_mdev_open_device,
        .close_device = vfio_ap_mdev_close_device,
        .ioctl = vfio_ap_mdev_ioctl,
  };
  
  static struct mdev_driver vfio_ap_matrix_driver = {
+       .device_api = VFIO_DEVICE_API_AP_STRING,
+       .max_instances = MAX_ZDEV_ENTRIES_EXT,
        .driver = {
                .name = "vfio_ap_mdev",
                .owner = THIS_MODULE,
        },
        .probe = vfio_ap_mdev_probe,
        .remove = vfio_ap_mdev_remove,
-       .supported_type_groups = vfio_ap_mdev_type_groups,
  };
  
  int vfio_ap_mdev_register(void)
  {
        int ret;
  
-       atomic_set(&matrix_dev->available_instances, MAX_ZDEV_ENTRIES_EXT);
        ret = mdev_register_driver(&vfio_ap_matrix_driver);
        if (ret)
                return ret;
  
-       ret = mdev_register_device(&matrix_dev->device, &vfio_ap_matrix_driver);
+       matrix_dev->mdev_type.sysfs_name = VFIO_AP_MDEV_TYPE_HWVIRT;
+       matrix_dev->mdev_type.pretty_name = VFIO_AP_MDEV_NAME_HWVIRT;
+       matrix_dev->mdev_types[0] = &matrix_dev->mdev_type;
+       ret = mdev_register_parent(&matrix_dev->parent, &matrix_dev->device,
+                                  &vfio_ap_matrix_driver,
+                                  matrix_dev->mdev_types, 1);
        if (ret)
                goto err_driver;
        return 0;
@@@ -1864,7 -1799,7 +1829,7 @@@ err_driver
  
  void vfio_ap_mdev_unregister(void)
  {
-       mdev_unregister_device(&matrix_dev->device);
+       mdev_unregister_parent(&matrix_dev->parent);
        mdev_unregister_driver(&vfio_ap_matrix_driver);
  }