Merge tag 'tty-5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 28 Mar 2022 20:00:51 +0000 (13:00 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 28 Mar 2022 20:00:51 +0000 (13:00 -0700)
Pull tty/serial driver updates from Greg KH:
 "Here are the big set of tty and serial driver changes for 5.18-rc1.

  Nothing major, some more good cleanups from Jiri and 2 new serial
  drivers. Highlights include:

   - termbits cleanups

   - export symbol cleanups and other core cleanups from Jiri Slaby

   - new sunplus and mvebu uart drivers (amazing that people are still
     creating new uarts...)

   - samsung serial driver cleanups

   - ldisc 29 is now "reserved" for experimental/development line
     disciplines

   - lots of other tiny fixes and cleanups to serial drivers and
     bindings

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

* tag 'tty-5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (104 commits)
  vt_ioctl: fix potential spectre v1 in VT_DISALLOCATE
  serial: 8250: fix XOFF/XON sending when DMA is used
  tty: serial: samsung: Add ARTPEC-8 support
  dt-bindings: serial: samsung: Add ARTPEC-8 UART
  serial: sc16is7xx: Clear RS485 bits in the shutdown
  tty: serial: samsung: simplify getting OF match data
  tty: serial: samsung: constify variables and pointers
  tty: serial: samsung: constify s3c24xx_serial_drv_data members
  tty: serial: samsung: constify UART name
  tty: serial: samsung: constify s3c24xx_serial_drv_data
  tty: serial: samsung: reduce number of casts
  tty: serial: samsung: embed s3c2410_uartcfg in parent structure
  tty: serial: samsung: embed s3c24xx_uart_info in parent structure
  serial: 8250_tegra: mark acpi_device_id as unused with !ACPI
  tty: serial: bcm63xx: use more precise Kconfig symbol
  serial: SERIAL_SUNPLUS should depend on ARCH_SUNPLUS
  tty: serial: jsm: fix two assignments in if conditions
  tty: serial: jsm: remove redundant assignments to variable linestatus
  serial: 8250_mtk: make two read-only arrays static const
  serial: samsung_tty: do not unlock port->lock for uart_write_wakeup()
  ...

1  2 
MAINTAINERS
arch/arm64/boot/dts/marvell/armada-37xx.dtsi
drivers/tty/serial/max3100.c
drivers/tty/serial/sc16is7xx.c

diff --combined MAINTAINERS
@@@ -389,11 -389,11 +389,11 @@@ L:      linux-arm-kernel@lists.infradead.or
  S:    Maintained
  F:    drivers/acpi/arm64
  
 -ACPI I2C MULTI INSTANTIATE DRIVER
 +ACPI SERIAL MULTI INSTANTIATE DRIVER
  M:    Hans de Goede <hdegoede@redhat.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Maintained
 -F:    drivers/platform/x86/i2c-multi-instantiate.c
 +F:    drivers/platform/x86/serial-multi-instantiate.c
  
  ACPI PCC(Platform Communication Channel) MAILBOX DRIVER
  M:    Sudeep Holla <sudeep.holla@arm.com>
@@@ -461,35 -461,35 +461,35 @@@ AD525X ANALOG DEVICES DIGITAL POTENTIOM
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/AD5254
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/misc/ad525x_dpot.c
  
  AD5398 CURRENT REGULATOR DRIVER (AD5398/AD5821)
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/AD5398
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/regulator/ad5398.c
  
  AD714X CAPACITANCE TOUCH SENSOR DRIVER (AD7142/3/7/8/7A)
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/AD7142
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/input/misc/ad714x.c
  
  AD7877 TOUCHSCREEN DRIVER
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/AD7877
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/input/touchscreen/ad7877.c
  
  AD7879 TOUCHSCREEN DRIVER (AD7879/AD7889)
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/AD7879
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/input/touchscreen/ad7879.c
  
  ADDRESS SPACE LAYOUT RANDOMIZATION (ASLR)
@@@ -501,7 -501,7 +501,7 @@@ M: Michael Hennerich <michael.hennerich
  L:    linux-wpan@vger.kernel.org
  S:    Supported
  W:    https://wiki.analog.com/ADF7242
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/devicetree/bindings/net/ieee802154/adf7242.txt
  F:    drivers/net/ieee802154/adf7242.c
  
@@@ -535,7 -535,7 +535,7 @@@ ADP5520 BACKLIGHT DRIVER WITH IO EXPAND
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/ADP5520
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/gpio/gpio-adp5520.c
  F:    drivers/input/keyboard/adp5520-keys.c
  F:    drivers/leds/leds-adp5520.c
@@@ -546,7 -546,7 +546,7 @@@ ADP5588 QWERTY KEYPAD AND IO EXPANDER D
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/ADP5588
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/gpio/gpio-adp5588.c
  F:    drivers/input/keyboard/adp5588-keys.c
  
@@@ -554,7 -554,7 +554,7 @@@ ADP8860 BACKLIGHT DRIVER (ADP8860/ADP88
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/ADP8860
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/video/backlight/adp8860_bl.c
  
  ADT746X FAN DRIVER
@@@ -593,7 -593,7 +593,7 @@@ ADXL34X THREE-AXIS DIGITAL ACCELEROMETE
  M:    Michael Hennerich <michael.hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/ADXL345
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/devicetree/bindings/iio/accel/adi,adxl345.yaml
  F:    drivers/input/misc/adxl34x.c
  
@@@ -607,18 -607,10 +607,18 @@@ F:      drivers/iio/accel/adxl355_core.
  F:    drivers/iio/accel/adxl355_i2c.c
  F:    drivers/iio/accel/adxl355_spi.c
  
 +ADXL367 THREE-AXIS DIGITAL ACCELEROMETER DRIVER
 +M:    Cosmin Tanislav <cosmin.tanislav@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    http://ez.analog.com/community/linux-device-drivers
 +F:    Documentation/devicetree/bindings/iio/accel/adi,adxl367.yaml
 +F:    drivers/iio/accel/adxl367*
 +
  ADXL372 THREE-AXIS DIGITAL ACCELEROMETER DRIVER
  M:    Michael Hennerich <michael.hennerich@analog.com>
  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,adxl372.yaml
  F:    drivers/iio/accel/adxl372.c
  F:    drivers/iio/accel/adxl372_i2c.c
@@@ -997,16 -989,6 +997,16 @@@ L:       platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/amd-pmc.*
  
 +AMD HSMP DRIVER
 +M:    Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
 +R:    Carlos Bilbao <carlos.bilbao@amd.com>
 +L:    platform-driver-x86@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/x86/amd_hsmp.rst
 +F:    arch/x86/include/asm/amd_hsmp.h
 +F:    arch/x86/include/uapi/asm/amd_hsmp.h
 +F:    drivers/platform/x86/amd_hsmp.c
 +
  AMD POWERPLAY AND SWSMU
  M:    Evan Quan <evan.quan@amd.com>
  L:    amd-gfx@lists.freedesktop.org
@@@ -1020,7 -1002,6 +1020,7 @@@ L:      linux-pm@vger.kernel.or
  S:    Supported
  F:    Documentation/admin-guide/pm/amd-pstate.rst
  F:    drivers/cpufreq/amd-pstate*
 +F:    tools/power/x86/amd_pstate_tracer/amd_pstate_trace.py
  
  AMD PTDMA DRIVER
  M:    Sanjay R Mehta <sanju.mehta@amd.com>
@@@ -1050,15 -1031,6 +1050,15 @@@ S:    Maintaine
  F:    Documentation/hid/amd-sfh*
  F:    drivers/hid/amd-sfh-hid/
  
 +AMPHION VPU CODEC V4L2 DRIVER
 +M:    Ming Qian <ming.qian@nxp.com>
 +M:    Shijie Qin <shijie.qin@nxp.com>
 +M:    Zhou Peng <eagle.zhou@nxp.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/amphion,vpu.yaml
 +F:    drivers/media/platform/amphion/
 +
  AMS AS73211 DRIVER
  M:    Christian Eggers <ceggers@arri.de>
  L:    linux-iio@vger.kernel.org
@@@ -1078,7 -1050,7 +1078,7 @@@ ANALOG DEVICES INC AD7192 DRIVE
  M:    Alexandru Tachici <alexandru.tachici@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/adc/adi,ad7192.yaml
  F:    drivers/iio/adc/ad7192.c
  
@@@ -1086,23 -1058,15 +1086,23 @@@ ANALOG DEVICES INC AD7292 DRIVE
  M:    Marcelo Schmitt <marcelo.schmitt1@gmail.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/adc/adi,ad7292.yaml
  F:    drivers/iio/adc/ad7292.c
  
 +ANALOG DEVICES INC AD7293 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/dac/adi,ad7293.yaml
 +F:    drivers/iio/dac/ad7293.c
 +
  ANALOG DEVICES INC AD7768-1 DRIVER
  M:    Michael Hennerich <Michael.Hennerich@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/adc/adi,ad7768-1.yaml
  F:    drivers/iio/adc/ad7768-1.c
  
@@@ -1111,7 -1075,7 +1111,7 @@@ M:      Michael Hennerich <Michael.Hennerich
  M:    Renato Lui Geh <renatogeh@gmail.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/adc/adi,ad7780.yaml
  F:    drivers/iio/adc/ad7780.c
  
@@@ -1130,14 -1094,6 +1130,14 @@@ L:    linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/media/i2c/ad9389b*
  
 +ANALOG DEVICES INC ADA4250 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/amplifiers/adi,ada4250.yaml
 +F:    drivers/iio/amplifiers/ada4250.c
 +
  ANALOG DEVICES INC ADGS1408 DRIVER
  M:    Mircea Caprioru <mircea.caprioru@analog.com>
  S:    Supported
@@@ -1148,7 -1104,7 +1148,7 @@@ ANALOG DEVICES INC ADIN DRIVE
  M:    Michael Hennerich <michael.hennerich@analog.com>
  L:    netdev@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/net/adi,adin.yaml
  F:    drivers/net/phy/adin.c
  
@@@ -1157,22 -1113,20 +1157,22 @@@ M:   Nuno Sa <nuno.sa@analog.com
  L:    linux-iio@vger.kernel.org
  S:    Supported
  F:    drivers/iio/imu/adis.c
 +F:    drivers/iio/imu/adis_buffer.c
 +F:    drivers/iio/imu/adis_trigger.c
  F:    include/linux/iio/imu/adis.h
  
  ANALOG DEVICES INC ADIS16460 DRIVER
  M:    Dragos Bogdan <dragos.bogdan@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/imu/adi,adis16460.yaml
  F:    drivers/iio/imu/adis16460.c
  
  ANALOG DEVICES INC ADIS16475 DRIVER
  M:    Nuno Sa <nuno.sa@analog.com>
  L:    linux-iio@vger.kernel.org
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  S:    Supported
  F:    drivers/iio/imu/adis16475.c
  F:    Documentation/devicetree/bindings/iio/imu/adi,adis16475.yaml
@@@ -1181,54 -1135,22 +1181,54 @@@ ANALOG DEVICES INC ADM1177 DRIVE
  M:    Michael Hennerich <Michael.Hennerich@analog.com>
  L:    linux-hwmon@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/hwmon/adi,adm1177.yaml
  F:    drivers/hwmon/adm1177.c
  
 +ANALOG DEVICES INC ADMV1013 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/frequency/adi,admv1013.yaml
 +F:    drivers/iio/frequency/admv1013.c
 +
 +ANALOG DEVICES INC ADMV8818 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml
 +F:    drivers/iio/filter/admv8818.c
 +
 +ANALOG DEVICES INC ADMV1014 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/frequency/adi,admv1014.yaml
 +F:    drivers/iio/frequency/admv1014.c
 +
  ANALOG DEVICES INC ADP5061 DRIVER
  M:    Michael Hennerich <Michael.Hennerich@analog.com>
  L:    linux-pm@vger.kernel.org
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/power/supply/adp5061.c
  
 +ANALOG DEVICES INC ADRF6780 DRIVER
 +M:    Antoniu Miclaus <antoniu.miclaus@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    https://ez.analog.com/linux-software-drivers
 +F:    Documentation/devicetree/bindings/iio/frequency/adi,adrf6780.yaml
 +F:    drivers/iio/frequency/adrf6780.c
 +
  ANALOG DEVICES INC ADV7180 DRIVER
  M:    Lars-Peter Clausen <lars@metafoo.de>
  L:    linux-media@vger.kernel.org
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/media/i2c/adv7180.c
  F:    Documentation/devicetree/bindings/media/i2c/adv7180.yaml
  
@@@ -1271,7 -1193,7 +1271,7 @@@ M:      Nuno Sá <nuno.sa@analog.com
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
  W:    http://wiki.analog.com/
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    sound/soc/codecs/ad1*
  F:    sound/soc/codecs/ad7*
  F:    sound/soc/codecs/adau*
@@@ -1282,7 -1204,7 +1282,7 @@@ F:      sound/soc/codecs/ssm
  ANALOG DEVICES INC DMA DRIVERS
  M:    Lars-Peter Clausen <lars@metafoo.de>
  S:    Supported
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    drivers/dma/dma-axi-dmac.c
  
  ANALOG DEVICES INC IIO DRIVERS
@@@ -1290,7 -1212,7 +1290,7 @@@ M:      Lars-Peter Clausen <lars@metafoo.de
  M:    Michael Hennerich <Michael.Hennerich@analog.com>
  S:    Supported
  W:    http://wiki.analog.com/
 -W:    http://ez.analog.com/community/linux-device-drivers
 +W:    https://ez.analog.com/linux-software-drivers
  F:    Documentation/ABI/testing/sysfs-bus-iio-frequency-ad9523
  F:    Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350
  F:    Documentation/devicetree/bindings/iio/*/adi,*
@@@ -1307,6 -1229,18 +1307,6 @@@ S:     Supporte
  F:    drivers/clk/analogbits/*
  F:    include/linux/clk/analogbits*
  
 -ANDES ARCHITECTURE
 -M:    Nick Hu <nickhu@andestech.com>
 -M:    Greentime Hu <green.hu@gmail.com>
 -M:    Vincent Chen <deanbo422@gmail.com>
 -S:    Supported
 -T:    git https://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux.git
 -F:    Documentation/devicetree/bindings/interrupt-controller/andestech,ativic32.txt
 -F:    Documentation/devicetree/bindings/nds32/
 -F:    arch/nds32/
 -N:    nds32
 -K:    nds32
 -
  ANDROID CONFIG FRAGMENTS
  M:    Rob Herring <robh@kernel.org>
  S:    Supported
@@@ -1325,6 -1259,7 +1325,6 @@@ L:      linux-kernel@vger.kernel.or
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
  F:    drivers/android/
 -F:    drivers/staging/android/
  
  ANDROID GOLDFISH PIC DRIVER
  M:    Miodrag Dinic <miodrag.dinic@mips.com>
@@@ -1752,9 -1687,9 +1752,9 @@@ S:      Maintaine
  F:    drivers/clk/sunxi/
  
  ARM/Allwinner sunXi SoC support
 -M:    Maxime Ripard <mripard@kernel.org>
  M:    Chen-Yu Tsai <wens@csie.org>
 -R:    Jernej Skrabec <jernej.skrabec@gmail.com>
 +M:    Jernej Skrabec <jernej.skrabec@gmail.com>
 +M:    Samuel Holland <samuel@sholland.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git
@@@ -1834,7 -1769,7 +1834,7 @@@ T:      git https://github.com/AsahiLinux/li
  F:    Documentation/devicetree/bindings/arm/apple.yaml
  F:    Documentation/devicetree/bindings/arm/apple/*
  F:    Documentation/devicetree/bindings/i2c/apple,i2c.yaml
 -F:    Documentation/devicetree/bindings/interrupt-controller/apple,aic.yaml
 +F:    Documentation/devicetree/bindings/interrupt-controller/apple,*
  F:    Documentation/devicetree/bindings/mailbox/apple,mailbox.yaml
  F:    Documentation/devicetree/bindings/pci/apple,pcie.yaml
  F:    Documentation/devicetree/bindings/pinctrl/apple,pinctrl.yaml
@@@ -2184,6 -2119,13 +2184,6 @@@ F:     Documentation/devicetree/bindings/ar
  F:    arch/arm64/boot/dts/intel/keembay-evm.dts
  F:    arch/arm64/boot/dts/intel/keembay-soc.dtsi
  
 -ARM/INTEL RESEARCH IMOTE/STARGATE 2 MACHINE SUPPORT
 -M:    Jonathan Cameron <jic23@cam.ac.uk>
 -L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 -S:    Maintained
 -F:    arch/arm/mach-pxa/stargate2.c
 -F:    drivers/pcmcia/pxa2xx_stargate2.c
 -
  ARM/INTEL XSC3 (MANZANO) ARM CORE
  M:    Lennert Buytenhek <kernel@wantstofly.org>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2312,7 -2254,7 +2312,7 @@@ F:      drivers/phy/mediatek
  ARM/Microchip (AT91) SoC support
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
 -M:    Ludovic Desroches <ludovic.desroches@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@microchip.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  W:    http://www.linux4sam.org
@@@ -2425,7 -2367,6 +2425,7 @@@ L:      openbmc@lists.ozlabs.org (moderated 
  S:    Supported
  F:    Documentation/devicetree/bindings/*/*/*npcm*
  F:    Documentation/devicetree/bindings/*/*npcm*
 +F:    Documentation/devicetree/bindings/arm/npcm/*
  F:    arch/arm/boot/dts/nuvoton-npcm*
  F:    arch/arm/mach-npcm/
  F:    drivers/*/*npcm*
@@@ -2436,11 -2377,9 +2436,11 @@@ ARM/NUVOTON WPCM450 ARCHITECTUR
  M:    Jonathan Neuschäfer <j.neuschaefer@gmx.net>
  L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
  S:    Maintained
 +W:    https://github.com/neuschaefer/wpcm450/wiki
  F:    Documentation/devicetree/bindings/*/*wpcm*
  F:    arch/arm/boot/dts/nuvoton-wpcm450*
  F:    arch/arm/mach-npcm/wpcm450.c
 +F:    drivers/*/*/*wpcm*
  F:    drivers/*/*wpcm*
  
  ARM/NXP S32G ARCHITECTURE
@@@ -2568,7 -2507,7 +2568,7 @@@ S:      Maintaine
  F:    Documentation/devicetree/bindings/arm/rda.yaml
  F:    Documentation/devicetree/bindings/gpio/gpio-rda.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/rda,8810pl-intc.txt
 -F:    Documentation/devicetree/bindings/serial/rda,8810pl-uart.txt
 +F:    Documentation/devicetree/bindings/serial/rda,8810pl-uart.yaml
  F:    Documentation/devicetree/bindings/timer/rda,8810pl-timer.txt
  F:    arch/arm/boot/dts/rda8810pl-*
  F:    drivers/clocksource/timer-rda.c
@@@ -2592,7 -2531,6 +2592,7 @@@ 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:    arch/arm64/boot/dts/renesas/
@@@ -2634,7 -2572,7 +2634,7 @@@ F:      sound/soc/rockchip
  N:    rockchip
  
  ARM/SAMSUNG S3C, S5P AND EXYNOS ARM ARCHITECTURES
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  R:    Alim Akhtar <alim.akhtar@samsung.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-samsung-soc@vger.kernel.org
@@@ -2676,7 -2614,7 +2676,7 @@@ M:      Łukasz Stelmach <l.stelmach@samsung
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-media@vger.kernel.org
  S:    Maintained
 -F:    drivers/media/platform/s5p-g2d/
 +F:    drivers/media/platform/samsung/s5p-g2d/
  
  ARM/SAMSUNG S5P SERIES HDMI CEC SUBSYSTEM SUPPORT
  M:    Marek Szyprowski <m.szyprowski@samsung.com>
@@@ -2693,7 -2631,7 +2693,7 @@@ M:      Sylwester Nawrocki <s.nawrocki@samsu
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-media@vger.kernel.org
  S:    Maintained
 -F:    drivers/media/platform/s5p-jpeg/
 +F:    drivers/media/platform/samsung/s5p-jpeg/
  
  ARM/SAMSUNG S5P SERIES Multi Format Codec (MFC) SUPPORT
  M:    Marek Szyprowski <m.szyprowski@samsung.com>
@@@ -2701,7 -2639,7 +2701,7 @@@ M:      Andrzej Hajda <andrzej.hajda@intel.c
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-media@vger.kernel.org
  S:    Maintained
 -F:    drivers/media/platform/s5p-mfc/
 +F:    drivers/media/platform/samsung/s5p-mfc/
  
  ARM/SHMOBILE ARM ARCHITECTURE
  M:    Geert Uytterhoeven <geert+renesas@glider.be>
@@@ -2709,7 -2647,6 +2709,7 @@@ 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:    arch/arm/boot/dts/emev2*
@@@ -2771,7 -2708,7 +2771,7 @@@ F:      drivers/clocksource/clksrc_st_lpc.
  F:    drivers/cpufreq/sti-cpufreq.c
  F:    drivers/dma/st_fdma*
  F:    drivers/i2c/busses/i2c-st.c
 -F:    drivers/media/platform/sti/c8sectpfe/
 +F:    drivers/media/platform/st/sti/c8sectpfe/
  F:    drivers/media/rc/st_rc.c
  F:    drivers/mmc/host/sdhci-st.c
  F:    drivers/phy/st/phy-miphy28lp.c
@@@ -2802,7 -2739,7 +2802,7 @@@ N:      stm3
  N:    stm
  
  ARM/Synaptics SoC support
 -M:    Jisheng Zhang <Jisheng.Zhang@synaptics.com>
 +M:    Jisheng Zhang <jszhang@kernel.org>
  M:    Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
@@@ -2823,14 -2760,6 +2823,14 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/media/tegra-cec.txt
  F:    drivers/media/cec/platform/tegra/
  
 +ARM/TESLA FSD SoC SUPPORT
 +M:    Alim Akhtar <alim.akhtar@samsung.com>
 +M:    linux-fsd@tesla.com
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +L:    linux-samsung-soc@vger.kernel.org
 +S:    Maintained
 +F:    arch/arm64/boot/dts/tesla*
 +
  ARM/TETON BGA MACHINE SUPPORT
  M:    "Mark F. Brown" <mark.brown314@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -3063,14 -2992,6 +3063,14 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/net/asix,ax88796c.yaml
  F:    drivers/net/ethernet/asix/ax88796c_*
  
 +ASPEED PECI CONTROLLER
 +M:    Iwona Winiarska <iwona.winiarska@intel.com>
 +L:    linux-aspeed@lists.ozlabs.org (moderated for non-subscribers)
 +L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
 +S:    Supported
 +F:    Documentation/devicetree/bindings/peci/peci-aspeed.yaml
 +F:    drivers/peci/controller/peci-aspeed.c
 +
  ASPEED PINCTRL DRIVERS
  M:    Andrew Jeffery <andrew@aj.id.au>
  L:    linux-aspeed@lists.ozlabs.org (moderated for non-subscribers)
@@@ -3103,7 -3024,7 +3103,7 @@@ L:      linux-media@vger.kernel.or
  L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/aspeed-video.txt
 -F:    drivers/media/platform/aspeed-video.c
 +F:    drivers/media/platform/aspeed/
  
  ASUS NOTEBOOKS AND EEEPC ACPI/WMI EXTRAS DRIVERS
  M:    Corentin Chary <corentin.chary@gmail.com>
@@@ -3135,12 -3056,6 +3135,12 @@@ L:    linux-hwmon@vger.kernel.or
  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
 +S:    Maintained
 +F:    drivers/hwmon/asus-ec-sensors.c
 +
  ASUS WIRELESS RADIO CONTROL DRIVER
  M:    João Paulo Rechi Vita <jprvita@gmail.com>
  L:    platform-driver-x86@vger.kernel.org
@@@ -3283,7 -3198,6 +3283,7 @@@ ATOMIC INFRASTRUCTUR
  M:    Will Deacon <will@kernel.org>
  M:    Peter Zijlstra <peterz@infradead.org>
  R:    Boqun Feng <boqun.feng@gmail.com>
 +R:    Mark Rutland <mark.rutland@arm.com>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    arch/*/include/asm/atomic*.h
@@@ -3364,7 -3278,7 +3364,7 @@@ AXI-FAN-CONTROL HARDWARE MONITOR DRIVE
  M:    Nuno Sá <nuno.sa@analog.com>
  L:    linux-hwmon@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/hwmon/adi,axi-fan-control.yaml
  F:    drivers/hwmon/axi-fan-control.c
  
@@@ -3465,7 -3379,7 +3465,7 @@@ L:      linux-media@vger.kernel.or
  S:    Supported
  W:    https://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/platform/sti/bdisp
 +F:    drivers/media/platform/st/sti/bdisp
  
  BECKHOFF CX5020 ETHERCAT MASTER DRIVER
  M:    Dariusz Marcinkiewicz <reksio@newterm.pl>
@@@ -3526,7 -3440,6 +3526,7 @@@ F:      Documentation/ABI/stable/sysfs-bloc
  F:    Documentation/block/
  F:    block/
  F:    drivers/block/
 +F:    include/linux/bio.h
  F:    include/linux/blk*
  F:    kernel/trace/blktrace.c
  F:    lib/sbitmap.c
@@@ -3614,8 -3527,6 +3614,8 @@@ F:      net/sched/act_bpf.
  F:    net/sched/cls_bpf.c
  F:    samples/bpf/
  F:    scripts/bpf_doc.py
 +F:    scripts/pahole-flags.sh
 +F:    scripts/pahole-version.sh
  F:    tools/bpf/
  F:    tools/lib/bpf/
  F:    tools/testing/selftests/bpf/
@@@ -3782,14 -3693,6 +3782,14 @@@ F:    Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/broadcom/bcm4908_enet.*
  F:    drivers/net/ethernet/broadcom/unimac.h
  
 +BROADCOM BCM4908 PINMUX DRIVER
 +M:    Rafał Miłecki <rafal@milecki.pl>
 +M:    bcm-kernel-feedback-list@broadcom.com
 +L:    linux-gpio@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/pinctrl/brcm,bcm4908-pinctrl.yaml
 +F:    drivers/pinctrl/bcm/pinctrl-bcm4908.c
 +
  BROADCOM BCM5301X ARM ARCHITECTURE
  M:    Florian Fainelli <f.fainelli@gmail.com>
  M:    Hauke Mehrtens <hauke@hauke-m.de>
@@@ -3916,6 -3819,9 +3916,6 @@@ BROADCOM BRCM80211 IEEE802.11n WIRELES
  M:    Arend van Spriel <aspriel@gmail.com>
  M:    Franky Lin <franky.lin@broadcom.com>
  M:    Hante Meuleman <hante.meuleman@broadcom.com>
 -M:    Chi-hsien Lin <chi-hsien.lin@infineon.com>
 -M:    Wright Feng <wright.feng@infineon.com>
 -M:    Chung-hsien Hsu <chung-hsien.hsu@infineon.com>
  L:    linux-wireless@vger.kernel.org
  L:    brcm80211-dev-list.pdl@broadcom.com
  L:    SHA-cyfmac-dev-list@infineon.com
@@@ -3999,7 -3905,7 +3999,7 @@@ M:      Scott Branden <sbranden@broadcom.com
  M:    bcm-kernel-feedback-list@broadcom.com
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
 -T:    git git://github.com/broadcom/cygnus-linux.git
 +T:    git git://github.com/broadcom/stblinux.git
  F:    arch/arm64/boot/dts/broadcom/northstar2/*
  F:    arch/arm64/boot/dts/broadcom/stingray/*
  F:    drivers/clk/bcm/clk-ns*
@@@ -4120,7 -4026,6 +4120,7 @@@ L:      linux-mtd@lists.infradead.or
  L:    bcm-kernel-feedback-list@broadcom.com
  S:    Maintained
  F:    drivers/mtd/nand/raw/brcmnand/
 +F:    include/linux/platform_data/brcmnand.h
  
  BROADCOM STB PCIE DRIVER
  M:    Jim Quinlan <jim2101024@gmail.com>
@@@ -4338,7 -4243,7 +4338,7 @@@ L:      linux-media@vger.kernel.or
  S:    Orphan
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/cafe_ccic*
 -F:    drivers/media/platform/marvell-ccic/
 +F:    drivers/media/platform/marvell/
  
  CAIF NETWORK LAYER
  L:    netdev@vger.kernel.org
@@@ -4541,7 -4446,6 +4541,7 @@@ F:      drivers/power/supply/cw2015_battery.
  CEPH COMMON CODE (LIBCEPH)
  M:    Ilya Dryomov <idryomov@gmail.com>
  M:    Jeff Layton <jlayton@kernel.org>
 +M:    Xiubo Li <xiubli@redhat.com>
  L:    ceph-devel@vger.kernel.org
  S:    Supported
  W:    http://ceph.com/
@@@ -4552,7 -4456,6 +4552,7 @@@ F:      net/ceph
  
  CEPH DISTRIBUTED FILE SYSTEM CLIENT (CEPH)
  M:    Jeff Layton <jlayton@kernel.org>
 +M:    Xiubo Li <xiubli@redhat.com>
  M:    Ilya Dryomov <idryomov@gmail.com>
  L:    ceph-devel@vger.kernel.org
  S:    Supported
@@@ -4864,7 -4767,7 +4864,7 @@@ M:      Philipp Zabel <p.zabel@pengutronix.d
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/coda.yaml
 -F:    drivers/media/platform/coda/
 +F:    drivers/media/platform/chips-media/
  
  CODE OF CONDUCT
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@@@ -5048,7 -4951,6 +5048,7 @@@ COUNTER SUBSYSTE
  M:    William Breathitt Gray <vilhelm.gray@gmail.com>
  L:    linux-iio@vger.kernel.org
  S:    Maintained
 +T:    git git@gitlab.com:vilhelmgray/counter.git
  F:    Documentation/ABI/testing/sysfs-bus-counter
  F:    Documentation/driver-api/generic-counter.rst
  F:    drivers/counter/
@@@ -5415,7 -5317,6 +5415,7 @@@ DATA ACCESS MONITO
  M:    SeongJae Park <sj@kernel.org>
  L:    linux-mm@kvack.org
  S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-kernel-mm-damon
  F:    Documentation/admin-guide/mm/damon/
  F:    Documentation/vm/damon/
  F:    include/linux/damon.h
@@@ -5509,7 -5410,6 +5509,7 @@@ F:      drivers/platform/x86/dell/dell-rbtn.
  DELL LAPTOP SMM DRIVER
  M:    Pali Rohár <pali@kernel.org>
  S:    Maintained
 +F:    Documentation/ABI/obsolete/procfs-i8k
  F:    drivers/hwmon/dell-smm-hwmon.c
  F:    include/uapi/linux/i8k.h
  
@@@ -5579,7 -5479,7 +5579,7 @@@ L:      linux-media@vger.kernel.or
  S:    Supported
  W:    https://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/platform/sti/delta
 +F:    drivers/media/platform/st/sti/delta
  
  DELTA AHE-50DC FAN CONTROL MODULE DRIVER
  M:    Zev Weiss <zev@bewilderbeest.net>
@@@ -5594,15 -5494,6 +5594,15 @@@ S:    Maintaine
  F:    Documentation/hwmon/dps920ab.rst
  F:    drivers/hwmon/pmbus/dps920ab.c
  
 +DELTA NETWORKS TN48M CPLD DRIVERS
 +M:    Robert Marko <robert.marko@sartura.hr>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/gpio/delta,tn48m-gpio.yaml
 +F:    Documentation/devicetree/bindings/mfd/delta,tn48m-cpld.yaml
 +F:    Documentation/devicetree/bindings/reset/delta,tn48m-reset.yaml
 +F:    drivers/gpio/gpio-tn48m.c
 +F:    include/dt-bindings/reset/delta,tn48m-reset.h
 +
  DENALI NAND DRIVER
  L:    linux-mtd@lists.infradead.org
  S:    Orphan
@@@ -5700,7 -5591,7 +5700,7 @@@ F:      include/linux/devm-helpers.
  
  DEVICE-MAPPER  (LVM)
  M:    Alasdair Kergon <agk@redhat.com>
 -M:    Mike Snitzer <snitzer@redhat.com>
 +M:    Mike Snitzer <snitzer@kernel.org>
  M:    dm-devel@redhat.com
  L:    dm-devel@redhat.com
  S:    Maintained
@@@ -5848,7 -5739,7 +5848,7 @@@ T:      git git://anongit.freedesktop.org/dr
  F:    Documentation/driver-api/dma-buf.rst
  F:    drivers/dma-buf/
  F:    include/linux/*fence.h
 -F:    include/linux/dma-buf*
 +F:    include/linux/dma-buf.h
  F:    include/linux/dma-resv.h
  K:    \bdma_(?:buf|fence|resv)\b
  
@@@ -6191,8 -6082,7 +6191,8 @@@ L:      dri-devel@lists.freedesktop.or
  T:    git git://anongit.freedesktop.org/drm/drm-misc
  S:    Maintained
  F:    drivers/gpu/drm/panel/panel-lvds.c
 -F:    Documentation/devicetree/bindings/display/panel/lvds.yaml
 +F:    Documentation/devicetree/bindings/display/lvds.yaml
 +F:    Documentation/devicetree/bindings/display/panel/panel-lvds.yaml
  
  DRM DRIVER FOR MANTIX MLAF057WE51 PANELS
  M:    Guido Günther <agx@sigxcpu.org>
@@@ -6221,14 -6111,6 +6221,14 @@@ T:    git git://anongit.freedesktop.org/dr
  F:    Documentation/devicetree/bindings/display/multi-inno,mi0283qt.txt
  F:    drivers/gpu/drm/tiny/mi0283qt.c
  
 +DRM DRIVER FOR MIPI DBI compatible panels
 +M:    Noralf Trønnes <noralf@tronnes.org>
 +S:    Maintained
 +W:    https://github.com/notro/panel-mipi-dbi/wiki
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
 +F:    drivers/gpu/drm/tiny/panel-mipi-dbi.c
 +
  DRM DRIVER FOR MSM ADRENO GPU
  M:    Rob Clark <robdclark@gmail.com>
  M:    Sean Paul <sean@poorly.run>
@@@ -6249,13 -6131,6 +6249,13 @@@ T:    git git://anongit.freedesktop.org/dr
  F:    Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml
  F:    drivers/gpu/drm/panel/panel-novatek-nt35510.c
  
 +DRM DRIVER FOR NOVATEK NT35560 PANELS
 +M:    Linus Walleij <linus.walleij@linaro.org>
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/panel/sony,acx424akp.yaml
 +F:    drivers/gpu/drm/panel/panel-novatek-nt35560.c
 +
  DRM DRIVER FOR NOVATEK NT36672A PANELS
  M:    Sumit Semwal <sumit.semwal@linaro.org>
  S:    Maintained
@@@ -6292,13 -6167,6 +6292,13 @@@ T:    git git://anongit.freedesktop.org/dr
  F:    Documentation/devicetree/bindings/display/repaper.txt
  F:    drivers/gpu/drm/tiny/repaper.c
  
 +DRM DRIVER FOR SOLOMON SSD130X OLED DISPLAYS
 +M:    Javier Martinez Canillas <javierm@redhat.com>
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    Documentation/devicetree/bindings/display/solomon,ssd1307fb.yaml
 +F:    drivers/gpu/drm/solomon/ssd130x*
 +
  DRM DRIVER FOR QEMU'S CIRRUS DEVICE
  M:    Dave Airlie <airlied@redhat.com>
  M:    Gerd Hoffmann <kraxel@redhat.com>
@@@ -6387,6 -6255,12 +6387,6 @@@ T:     git git://anongit.freedesktop.org/dr
  F:    Documentation/devicetree/bindings/display/sitronix,st7735r.yaml
  F:    drivers/gpu/drm/tiny/st7735r.c
  
 -DRM DRIVER FOR SONY ACX424AKP PANELS
 -M:    Linus Walleij <linus.walleij@linaro.org>
 -S:    Maintained
 -T:    git git://anongit.freedesktop.org/drm/drm-misc
 -F:    drivers/gpu/drm/panel/panel-sony-acx424akp.c
 -
  DRM DRIVER FOR ST-ERICSSON MCDE
  M:    Linus Walleij <linus.walleij@linaro.org>
  S:    Maintained
@@@ -6433,8 -6307,8 +6433,8 @@@ T:      git git://anongit.freedesktop.org/dr
  F:    drivers/gpu/drm/vboxvideo/
  
  DRM DRIVER FOR VMWARE VIRTUAL GPU
 -M:    "VMware Graphics" <linux-graphics-maintainer@vmware.com>
  M:    Zack Rusin <zackr@vmware.com>
 +R:    VMware Graphics Reviewers <linux-graphics-maintainer@vmware.com>
  L:    dri-devel@lists.freedesktop.org
  S:    Supported
  T:    git git://anongit.freedesktop.org/drm/drm-misc
@@@ -6528,7 -6402,6 +6528,7 @@@ L:      dri-devel@lists.freedesktop.or
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git
  F:    Documentation/devicetree/bindings/display/exynos/
 +F:    Documentation/devicetree/bindings/display/samsung/
  F:    drivers/gpu/drm/exynos/
  F:    include/uapi/drm/exynos_drm.h
  
@@@ -7352,9 -7225,6 +7352,9 @@@ F:      net/core/of_net.
  EXEC & BINFMT API
  R:    Eric Biederman <ebiederm@xmission.com>
  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:    arch/x86/ia32/ia32_aout.c
  F:    fs/*binfmt_*.c
@@@ -7362,7 -7232,6 +7362,7 @@@ F:      fs/exec.
  F:    include/linux/binfmts.h
  F:    include/linux/elf.h
  F:    include/uapi/linux/binfmts.h
 +F:    include/uapi/linux/elf.h
  F:    tools/testing/selftests/exec/
  N:    asm/elf.h
  N:    binfmt
@@@ -7398,9 -7267,7 +7398,9 @@@ Extended Verification Module (EVM
  M:    Mimi Zohar <zohar@linux.ibm.com>
  L:    linux-integrity@vger.kernel.org
  S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git
  F:    security/integrity/evm/
 +F:    security/integrity/
  
  EXTENSIBLE FIRMWARE INTERFACE (EFI)
  M:    Ard Biesheuvel <ardb@kernel.org>
@@@ -7877,7 -7744,8 +7877,7 @@@ M:      Qiang Zhao <qiang.zhao@nxp.com
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Maintained
  F:    drivers/soc/fsl/qe/
 -F:    include/soc/fsl/*qe*.h
 -F:    include/soc/fsl/*ucc*.h
 +F:    include/soc/fsl/qe/
  
  FREESCALE QUICC ENGINE UCC ETHERNET DRIVER
  M:    Li Yang <leoyang.li@nxp.com>
@@@ -7908,7 -7776,6 +7908,7 @@@ F:      Documentation/devicetree/bindings/mi
  F:    Documentation/devicetree/bindings/soc/fsl/
  F:    drivers/soc/fsl/
  F:    include/linux/fsl/
 +F:    include/soc/fsl/
  
  FREESCALE SOC FS_ENET DRIVER
  M:    Pantelis Antoniou <pantelis.antoniou@gmail.com>
@@@ -7919,10 -7786,10 +7919,10 @@@ F:   drivers/net/ethernet/freescale/fs_en
  F:    include/linux/fs_enet_pd.h
  
  FREESCALE SOC SOUND DRIVERS
 -M:    Nicolin Chen <nicoleotsuka@gmail.com>
 +M:    Shengjiu Wang <shengjiu.wang@gmail.com>
  M:    Xiubo Li <Xiubo.Lee@gmail.com>
  R:    Fabio Estevam <festevam@gmail.com>
 -R:    Shengjiu Wang <shengjiu.wang@gmail.com>
 +R:    Nicolin Chen <nicoleotsuka@gmail.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  L:    linuxppc-dev@lists.ozlabs.org
  S:    Maintained
@@@ -8063,12 -7930,6 +8063,12 @@@ L:    platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/fujitsu-tablet.c
  
 +FUNGIBLE ETHERNET DRIVERS
 +M:    Dimitris Michailidis <dmichail@fungible.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    drivers/net/ethernet/fungible/
 +
  FUSE: FILESYSTEM IN USERSPACE
  M:    Miklos Szeredi <miklos@szeredi.hu>
  L:    linux-fsdevel@vger.kernel.org
@@@ -8782,7 -8643,7 +8782,7 @@@ S:      Maintaine
  F:    drivers/gpio/gpio-hisi.c
  
  HISILICON HIGH PERFORMANCE RSA ENGINE DRIVER (HPRE)
 -M:    Zaibo Xu <xuzaibo@huawei.com>
 +M:    Longfang Liu <liulongfang@huawei.com>
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    Documentation/ABI/testing/debugfs-hisi-hpre
@@@ -8842,9 -8703,9 +8842,9 @@@ L:      linux-crypto@vger.kernel.or
  S:    Maintained
  F:    Documentation/ABI/testing/debugfs-hisi-zip
  F:    drivers/crypto/hisilicon/qm.c
 -F:    drivers/crypto/hisilicon/qm.h
  F:    drivers/crypto/hisilicon/sgl.c
  F:    drivers/crypto/hisilicon/zip/
 +F:    include/linux/hisi_acc_qm.h
  
  HISILICON ROCE DRIVER
  M:    Wenpeng Liang <liangwenpeng@huawei.com>
@@@ -8862,8 -8723,8 +8862,8 @@@ F:      Documentation/devicetree/bindings/sc
  F:    drivers/scsi/hisi_sas/
  
  HISILICON SECURITY ENGINE V2 DRIVER (SEC2)
 -M:    Zaibo Xu <xuzaibo@huawei.com>
  M:    Kai Ye <yekai13@huawei.com>
 +M:    Longfang Liu <liulongfang@huawei.com>
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    Documentation/ABI/testing/debugfs-hisi-sec
@@@ -8894,7 -8755,7 +8894,7 @@@ F:      Documentation/devicetree/bindings/mf
  F:    drivers/mfd/hi6421-spmi-pmic.c
  
  HISILICON TRUE RANDOM NUMBER GENERATOR V2 SUPPORT
 -M:    Zaibo Xu <xuzaibo@huawei.com>
 +M:    Weili Qian <qianweili@huawei.com>
  S:    Maintained
  F:    drivers/crypto/hisilicon/trng/trng.c
  
@@@ -9008,7 -8869,7 +9008,7 @@@ L:      linux-media@vger.kernel.or
  S:    Supported
  W:    https://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/platform/sti/hva
 +F:    drivers/media/platform/st/sti/hva
  
  HWPOISON MEMORY FAILURE HANDLING
  M:    Naoya Horiguchi <naoya.horiguchi@nec.com>
@@@ -9043,12 -8904,6 +9043,12 @@@ L:    linux-media@vger.kernel.or
  S:    Maintained
  F:    drivers/media/i2c/hi846.c
  
 +HYNIX HI847 SENSOR DRIVER
 +M:    Shawn Tu <shawnx.tu@intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/media/i2c/hi847.c
 +
  Hyper-V/Azure CORE AND DRIVERS
  M:    "K. Y. Srinivasan" <kys@microsoft.com>
  M:    Haiyang Zhang <haiyangz@microsoft.com>
@@@ -9623,11 -9478,6 +9623,11 @@@ F:    include/linux/mfd/ingenic-tcu.
  F:    sound/soc/codecs/jz47*
  F:    sound/soc/jz4740/
  
 +INJOINIC IP5xxx POWER BANK IC DRIVER
 +M:    Samuel Holland <samuel@sholland.org>
 +S:    Maintained
 +F:    drivers/power/supply/ip5xxx_power.c
 +
  INOTIFY
  M:    Jan Kara <jack@suse.cz>
  R:    Amir Goldstein <amir73il@gmail.com>
@@@ -9674,7 -9524,6 +9674,7 @@@ L:      linux-integrity@vger.kernel.or
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git
  F:    security/integrity/ima/
 +F:    security/integrity/
  
  INTEL 810/815 FRAMEBUFFER DRIVER
  M:    Antonino Daplas <adaplas@gmail.com>
@@@ -10035,13 -9884,6 +10035,13 @@@ S:  Maintaine
  F:    arch/x86/include/asm/intel_scu_ipc.h
  F:    drivers/platform/x86/intel_scu_*
  
 +INTEL SDSI DRIVER
 +M:    David E. Box <david.e.box@linux.intel.com>
 +S:    Supported
 +F:    drivers/platform/x86/intel/sdsi.c
 +F:    tools/arch/x86/intel_sdsi/
 +F:    tools/testing/selftests/drivers/sdsi/
 +
  INTEL SKYLAKE INT3472 ACPI DEVICE DRIVER
  M:    Daniel Scally <djrscally@gmail.com>
  S:    Maintained
@@@ -10065,7 -9907,6 +10065,7 @@@ F:    drivers/firmware/stratix10-rsu.
  F:    drivers/firmware/stratix10-svc.c
  F:    include/linux/firmware/intel/stratix10-smc.h
  F:    include/linux/firmware/intel/stratix10-svc-client.h
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux.git
  
  INTEL TELEMETRY DRIVER
  M:    Rajneesh Bhardwaj <irenic.rajneesh@gmail.com>
@@@ -10079,7 -9920,7 +10079,7 @@@ INTEL UNCORE FREQUENCY CONTRO
  M:    Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
  L:    platform-driver-x86@vger.kernel.org
  S:    Maintained
 -F:    drivers/platform/x86/intel/uncore-frequency.c
 +F:    drivers/platform/x86/intel/uncore-frequency/
  
  INTEL VENDOR SPECIFIC EXTENDED CAPABILITIES DRIVER
  M:    David E. Box <david.e.box@linux.intel.com>
@@@ -10176,14 -10017,6 +10176,14 @@@ L: linux-iio@vger.kernel.or
  F:    Documentation/devicetree/bindings/counter/interrupt-counter.yaml
  F:    drivers/counter/interrupt-cnt.c
  
 +INTERSIL ISL7998X VIDEO DECODER DRIVER
 +M:    Michael Tretter <m.tretter@pengutronix.de>
 +R:    Pengutronix Kernel Team <kernel@pengutronix.de>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/isil,isl79987.yaml
 +F:    drivers/media/i2c/isl7998x.c
 +
  INVENSENSE ICM-426xx IMU DRIVER
  M:    Jean-Baptiste Maneyrol <jmaneyrol@invensense.com>
  L:    linux-iio@vger.kernel.org
@@@ -10231,13 -10064,6 +10231,13 @@@ F: include/linux/iova.
  F:    include/linux/of_iommu.h
  F:    include/uapi/linux/iommu.h
  
 +IOSYS-MAP HELPERS
 +M:    Thomas Zimmermann <tzimmermann@suse.de>
 +L:    dri-devel@lists.freedesktop.org
 +S:    Maintained
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +F:    include/linux/iosys-map.h
 +
  IO_URING
  M:    Jens Axboe <axboe@kernel.dk>
  R:    Pavel Begunkov <asml.silence@gmail.com>
@@@ -10257,7 -10083,6 +10257,7 @@@ M:   Corey Minyard <minyard@acm.org
  L:    openipmi-developer@lists.sourceforge.net (moderated for non-subscribers)
  S:    Supported
  W:    http://openipmi.sourceforge.net/
 +T:    git https://github.com/cminyard/linux-ipmi.git for-next
  F:    Documentation/driver-api/ipmi.rst
  F:    Documentation/devicetree/bindings/ipmi/
  F:    drivers/char/ipmi/
@@@ -10491,7 -10316,7 +10491,7 @@@ M:   Mikhail Ulyanov <mikhail.ulyanov@cog
  L:    linux-media@vger.kernel.org
  L:    linux-renesas-soc@vger.kernel.org
  S:    Maintained
 -F:    drivers/media/platform/rcar_jpu.c
 +F:    drivers/media/platform/renesas/rcar_jpu.c
  
  JSM Neo PCI based serial card
  L:    linux-serial@vger.kernel.org
@@@ -10630,8 -10455,6 +10630,8 @@@ KERNEL REGRESSION
  M:    Thorsten Leemhuis <linux@leemhuis.info>
  L:    regressions@lists.linux.dev
  S:    Supported
 +F:    Documentation/admin-guide/reporting-regressions.rst
 +F:    Documentation/process/handling-regressions.rst
  
  KERNEL SELFTEST FRAMEWORK
  M:    Shuah Khan <shuah@kernel.org>
@@@ -10739,8 -10562,8 +10739,8 @@@ F:   arch/riscv/kvm
  KERNEL VIRTUAL MACHINE for s390 (KVM/s390)
  M:    Christian Borntraeger <borntraeger@linux.ibm.com>
  M:    Janosch Frank <frankja@linux.ibm.com>
 +M:    Claudio Imbrenda <imbrenda@linux.ibm.com>
  R:    David Hildenbrand <david@redhat.com>
 -R:    Claudio Imbrenda <imbrenda@linux.ibm.com>
  L:    kvm@vger.kernel.org
  S:    Supported
  W:    http://www.ibm.com/developerworks/linux/linux390/
@@@ -10837,14 -10660,6 +10837,14 @@@ F: include/linux/keyctl.
  F:    include/uapi/linux/keyctl.h
  F:    security/keys/
  
 +KEYS/KEYRINGS_INTEGRITY
 +M:    Jarkko Sakkinen <jarkko@kernel.org>
 +M:    Mimi Zohar <zohar@linux.ibm.com>
 +L:    linux-integrity@vger.kernel.org
 +L:    keyrings@vger.kernel.org
 +S:    Supported
 +F:    security/integrity/platform_certs
 +
  KFENCE
  M:    Alexander Potapenko <glider@google.com>
  M:    Marco Elver <elver@google.com>
@@@ -10950,6 -10765,7 +10950,6 @@@ L7 BPF FRAMEWOR
  M:    John Fastabend <john.fastabend@gmail.com>
  M:    Daniel Borkmann <daniel@iogearbox.net>
  M:    Jakub Sitnicki <jakub@cloudflare.com>
 -M:    Lorenz Bauer <lmb@cloudflare.com>
  L:    netdev@vger.kernel.org
  L:    bpf@vger.kernel.org
  S:    Maintained
@@@ -11314,17 -11130,12 +11314,17 @@@ F:        lib/list-test.
  LITEX PLATFORM
  M:    Karol Gugala <kgugala@antmicro.com>
  M:    Mateusz Holenko <mholenko@antmicro.com>
 +M:    Gabriel Somlo <gsomlo@gmail.com>
 +M:    Joel Stanley <joel@jms.id.au>
  S:    Maintained
  F:    Documentation/devicetree/bindings/*/litex,*.yaml
  F:    arch/openrisc/boot/dts/or1klitex.dts
 -F:    drivers/soc/litex/litex_soc_ctrl.c
 -F:    drivers/tty/serial/liteuart.c
  F:    include/linux/litex.h
 +F:    drivers/tty/serial/liteuart.c
 +F:    drivers/soc/litex/*
 +F:    drivers/net/ethernet/litex/*
 +F:    drivers/mmc/host/litex_mmc.c
 +N:    litex
  
  LIVE PATCHING
  M:    Josh Poimboeuf <jpoimboe@redhat.com>
@@@ -11471,20 -11282,11 +11471,20 @@@ S:        Maintaine
  F:    Documentation/devicetree/bindings/iio/dac/lltc,ltc1660.yaml
  F:    drivers/iio/dac/ltc1660.c
  
 +LTC2688 IIO DAC DRIVER
 +M:    Nuno Sá <nuno.sa@analog.com>
 +L:    linux-iio@vger.kernel.org
 +S:    Supported
 +W:    http://ez.analog.com/community/linux-device-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
 +
  LTC2947 HARDWARE MONITOR DRIVER
  M:    Nuno Sá <nuno.sa@analog.com>
  L:    linux-hwmon@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/hwmon/adi,ltc2947.yaml
  F:    drivers/hwmon/ltc2947-core.c
  F:    drivers/hwmon/ltc2947-i2c.c
@@@ -11495,7 -11297,7 +11495,7 @@@ LTC2983 IIO TEMPERATURE 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/devicetree/bindings/iio/temperature/adi,ltc2983.yaml
  F:    drivers/iio/temperature/ltc2983.c
  
@@@ -11510,7 -11312,7 +11510,7 @@@ LTC4306 I2C MULTIPLEXER DRIVE
  M:    Michael Hennerich <michael.hennerich@analog.com>
  L:    linux-i2c@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/i2c/i2c-mux-ltc4306.txt
  F:    drivers/i2c/muxes/i2c-mux-ltc4306.c
  
@@@ -11526,13 -11328,6 +11526,13 @@@ S: Maintaine
  W:    http://linux-test-project.github.io/
  T:    git git://github.com/linux-test-project/ltp.git
  
 +LYNX 28G SERDES PHY DRIVER
 +M:    Ioana Ciornei <ioana.ciornei@nxp.com>
 +L:    netdev@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/phy/fsl,lynx-28g.yaml
 +F:    drivers/phy/freescale/phy-fsl-lynx-28g.c
 +
  LYNX PCS MODULE
  M:    Ioana Ciornei <ioana.ciornei@nxp.com>
  L:    netdev@vger.kernel.org
@@@ -11665,6 -11460,13 +11665,13 @@@ F: Documentation/devicetree/bindings/ph
  F:    drivers/phy/marvell/phy-mvebu-a3700-comphy.c
  F:    drivers/phy/marvell/phy-mvebu-a3700-utmi.c
  
+ MARVELL ARMADA 3700 SERIAL DRIVER
+ M:    Pali Rohár <pali@kernel.org>
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/clock/marvell,armada-3700-uart-clock.yaml
+ F:    Documentation/devicetree/bindings/serial/mvebu-uart.txt
+ F:    drivers/tty/serial/mvebu-uart.c
  MARVELL ARMADA DRM SUPPORT
  M:    Russell King <linux@armlinux.org.uk>
  S:    Maintained
@@@ -11880,7 -11682,7 +11887,7 @@@ F:   drivers/iio/proximity/mb1232.
  
  MAXIM MAX17040 FAMILY FUEL GAUGE DRIVERS
  R:    Iskren Chernev <iskren.chernev@gmail.com>
 -R:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +R:    Krzysztof Kozlowski <krzk@kernel.org>
  R:    Marek Szyprowski <m.szyprowski@samsung.com>
  R:    Matheus Castello <matheus@castello.eng.br>
  L:    linux-pm@vger.kernel.org
@@@ -11890,7 -11692,7 +11897,7 @@@ F:   drivers/power/supply/max17040_batter
  
  MAXIM MAX17042 FAMILY FUEL GAUGE DRIVERS
  R:    Hans de Goede <hdegoede@redhat.com>
 -R:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +R:    Krzysztof Kozlowski <krzk@kernel.org>
  R:    Marek Szyprowski <m.szyprowski@samsung.com>
  R:    Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
  R:    Purism Kernel Team <kernel@puri.sm>
@@@ -11920,18 -11722,11 +11927,18 @@@ F:        drivers/power/supply/max77650-charge
  F:    drivers/regulator/max77650-regulator.c
  F:    include/linux/mfd/max77650.h
  
 +MAXIM MAX77714 PMIC MFD DRIVER
 +M:    Luca Ceresoli <luca@lucaceresoli.net>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/mfd/maxim,max77714.yaml
 +F:    drivers/mfd/max77714.c
 +F:    include/linux/mfd/max77714.h
 +
  MAXIM MAX77802 PMIC REGULATOR DEVICE DRIVER
  M:    Javier Martinez Canillas <javier@dowhile0.org>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/*/*max77802.txt
 +F:    Documentation/devicetree/bindings/*/*max77802.yaml
  F:    drivers/regulator/max77802-regulator.c
  F:    include/dt-bindings/*/*max77802.h
  
@@@ -11942,28 -11737,23 +11949,28 @@@ F:        Documentation/devicetree/bindings/po
  F:    drivers/power/supply/max77976_charger.c
  
  MAXIM MUIC CHARGER DRIVERS FOR EXYNOS BASED BOARDS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-pm@vger.kernel.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/power/supply/maxim,max14577.yaml
 +F:    Documentation/devicetree/bindings/power/supply/maxim,max77693.yaml
  F:    drivers/power/supply/max14577_charger.c
  F:    drivers/power/supply/max77693_charger.c
  
  MAXIM PMIC AND MUIC DRIVERS FOR EXYNOS BASED BOARDS
  M:    Chanwoo Choi <cw00.choi@samsung.com>
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/*/maxim,max14577.yaml
  F:    Documentation/devicetree/bindings/*/maxim,max77686.yaml
 +F:    Documentation/devicetree/bindings/*/maxim,max77693.yaml
 +F:    Documentation/devicetree/bindings/*/maxim,max77843.yaml
  F:    Documentation/devicetree/bindings/clock/maxim,max77686.txt
 -F:    Documentation/devicetree/bindings/mfd/max14577.txt
  F:    Documentation/devicetree/bindings/mfd/max77693.txt
 +F:    drivers/*/*max77843.c
  F:    drivers/*/max14577*.c
  F:    drivers/*/max77686*.c
  F:    drivers/*/max77693*.c
@@@ -12059,7 -11849,7 +12066,7 @@@ M:   Philipp Zabel <p.zabel@pengutronix.d
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/platform/imx-pxp.[ch]
 +F:    drivers/media/platform/nxp/imx-pxp.[ch]
  
  MEDIA DRIVERS FOR ASCOT2E
  M:    Sergey Kozlov <serjk@netup.ru>
@@@ -12124,10 -11914,10 +12131,10 @@@ L:        linux-media@vger.kernel.or
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/imx7.rst
 +F:    Documentation/devicetree/bindings/media/nxp,imx-mipi-csi2.yaml
  F:    Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
 -F:    Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml
 +F:    drivers/media/platform/imx/imx-mipi-csis.c
  F:    drivers/staging/media/imx/imx7-media-csi.c
 -F:    drivers/staging/media/imx/imx7-mipi-csis.c
  
  MEDIA DRIVERS FOR HELENE
  M:    Abylay Ospan <aospan@netup.ru>
@@@ -12182,7 -11972,7 +12189,7 @@@ L:   linux-tegra@vger.kernel.or
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/nvidia,tegra-vde.txt
 -F:    drivers/staging/media/tegra-vde/
 +F:    drivers/media/platform/nvidia/tegra-vde/
  
  MEDIA DRIVERS FOR RENESAS - CEU
  M:    Jacopo Mondi <jacopo@jmondi.org>
@@@ -12191,7 -11981,7 +12198,7 @@@ L:   linux-renesas-soc@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/renesas,ceu.yaml
 -F:    drivers/media/platform/renesas-ceu.c
 +F:    drivers/media/platform/renesas/renesas-ceu.c
  F:    include/media/drv-intf/renesas-ceu.h
  
  MEDIA DRIVERS FOR RENESAS - DRIF
@@@ -12201,7 -11991,7 +12208,7 @@@ L:   linux-renesas-soc@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/renesas,drif.yaml
 -F:    drivers/media/platform/rcar_drif.c
 +F:    drivers/media/platform/renesas/rcar_drif.c
  
  MEDIA DRIVERS FOR RENESAS - FCP
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
@@@ -12210,7 -12000,7 +12217,7 @@@ L:   linux-renesas-soc@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/renesas,fcp.yaml
 -F:    drivers/media/platform/rcar-fcp.c
 +F:    drivers/media/platform/renesas/rcar-fcp.c
  F:    include/media/rcar-fcp.h
  
  MEDIA DRIVERS FOR RENESAS - FDP1
@@@ -12220,7 -12010,7 +12227,7 @@@ L:   linux-renesas-soc@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/renesas,fdp1.yaml
 -F:    drivers/media/platform/rcar_fdp1.c
 +F:    drivers/media/platform/renesas/rcar_fdp1.c
  
  MEDIA DRIVERS FOR RENESAS - VIN
  M:    Niklas Söderlund <niklas.soderlund@ragnatech.se>
@@@ -12231,8 -12021,8 +12238,8 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/renesas,csi2.yaml
  F:    Documentation/devicetree/bindings/media/renesas,isp.yaml
  F:    Documentation/devicetree/bindings/media/renesas,vin.yaml
 -F:    drivers/media/platform/rcar-isp.c
 -F:    drivers/media/platform/rcar-vin/
 +F:    drivers/media/platform/renesas/rcar-isp.c
 +F:    drivers/media/platform/renesas/rcar-vin/
  
  MEDIA DRIVERS FOR RENESAS - VSP1
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
@@@ -12242,7 -12032,7 +12249,7 @@@ L:   linux-renesas-soc@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/renesas,vsp1.yaml
 -F:    drivers/media/platform/vsp1/
 +F:    drivers/media/platform/renesas/vsp1/
  
  MEDIA DRIVERS FOR ST STV0910 DEMODULATOR ICs
  L:    linux-media@vger.kernel.org
@@@ -12264,7 -12054,7 +12271,7 @@@ L:   linux-media@vger.kernel.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/st,stm32-dcmi.yaml
 -F:    drivers/media/platform/stm32/stm32-dcmi.c
 +F:    drivers/media/platform/st/stm32/stm32-dcmi.c
  
  MEDIA INPUT INFRASTRUCTURE (V4L/DVB)
  M:    Mauro Carvalho Chehab <mchehab@kernel.org>
@@@ -12348,7 -12138,7 +12355,7 @@@ M:   Rick Chang <rick.chang@mediatek.com
  M:    Bin Liu <bin.liu@mediatek.com>
  S:    Supported
  F:    Documentation/devicetree/bindings/media/mediatek-jpeg-decoder.txt
 -F:    drivers/media/platform/mtk-jpeg/
 +F:    drivers/media/platform/mediatek/jpeg/
  
  MEDIATEK MDP DRIVER
  M:    Minghsiu Tsai <minghsiu.tsai@mediatek.com>
@@@ -12356,8 -12146,8 +12363,8 @@@ M:   Houlong Wei <houlong.wei@mediatek.co
  M:    Andrew-CT Chen <andrew-ct.chen@mediatek.com>
  S:    Supported
  F:    Documentation/devicetree/bindings/media/mediatek-mdp.txt
 -F:    drivers/media/platform/mtk-mdp/
 -F:    drivers/media/platform/mtk-vpu/
 +F:    drivers/media/platform/mediatek/mdp/
 +F:    drivers/media/platform/mediatek/vpu/
  
  MEDIATEK MEDIA DRIVER
  M:    Tiffany Lin <tiffany.lin@mediatek.com>
@@@ -12365,8 -12155,8 +12372,8 @@@ M:   Andrew-CT Chen <andrew-ct.chen@media
  S:    Supported
  F:    Documentation/devicetree/bindings/media/mediatek-vcodec.txt
  F:    Documentation/devicetree/bindings/media/mediatek-vpu.txt
 -F:    drivers/media/platform/mtk-vcodec/
 -F:    drivers/media/platform/mtk-vpu/
 +F:    drivers/media/platform/mediatek/vcodec/
 +F:    drivers/media/platform/mediatek/vpu/
  
  MEDIATEK MMC/SD/SDIO DRIVER
  M:    Chaotian Jing <chaotian.jing@mediatek.com>
@@@ -12382,7 -12172,6 +12389,7 @@@ R:   Shayne Chen <shayne.chen@mediatek.co
  R:    Sean Wang <sean.wang@mediatek.com>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
 +F:    Documentation/devicetree/bindings/net/wireless/mediatek,mt76.yaml
  F:    drivers/net/wireless/mediatek/mt76/
  
  MEDIATEK MT7601U WIRELESS LAN DRIVER
@@@ -12644,10 -12433,9 +12651,10 @@@ S: Maintaine
  F:    Documentation/core-api/boot-time-mm.rst
  F:    include/linux/memblock.h
  F:    mm/memblock.c
 +F:    tools/testing/memblock/
  
  MEMORY CONTROLLER DRIVERS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl.git
@@@ -12743,7 -12531,7 +12750,7 @@@ L:   linux-amlogic@lists.infradead.or
  S:    Supported
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/amlogic,axg-ge2d.yaml
 -F:    drivers/media/platform/meson/ge2d/
 +F:    drivers/media/platform/amlogic/meson-ge2d/
  
  MESON NAND CONTROLLER DRIVER FOR AMLOGIC SOCS
  M:    Liang Yang <liang.yang@amlogic.com>
@@@ -12825,13 -12613,6 +12832,13 @@@ L: alsa-devel@alsa-project.org (moderat
  S:    Supported
  F:    sound/soc/atmel
  
 +MICROCHIP CSI2DC DRIVER
 +M:    Eugen Hristev <eugen.hristev@microchip.com>
 +L:    linux-media@vger.kernel.org
 +S:    Supported
 +F:    Documentation/devicetree/bindings/media/microchip,csi2dc.yaml
 +F:    drivers/media/platform/atmel/microchip-csi2dc.c
 +
  MICROCHIP ECC DRIVER
  M:    Tudor Ambarus <tudor.ambarus@microchip.com>
  L:    linux-crypto@vger.kernel.org
@@@ -12857,8 -12638,11 +12864,8 @@@ L:  linux-media@vger.kernel.or
  S:    Supported
  F:    Documentation/devicetree/bindings/media/atmel,isc.yaml
  F:    Documentation/devicetree/bindings/media/microchip,xisc.yaml
 -F:    drivers/media/platform/atmel/atmel-isc-base.c
 -F:    drivers/media/platform/atmel/atmel-isc-regs.h
 -F:    drivers/media/platform/atmel/atmel-isc.h
 -F:    drivers/media/platform/atmel/atmel-sama5d2-isc.c
 -F:    drivers/media/platform/atmel/atmel-sama7g5-isc.c
 +F:    drivers/media/platform/atmel/atmel-isc*
 +F:    drivers/media/platform/atmel/atmel-sama*-isc*
  F:    include/linux/atmel-isc-media.h
  
  MICROCHIP ISI DRIVER
@@@ -13599,7 -13383,6 +13606,7 @@@ F:   net/core/drop_monitor.
  NETWORKING DRIVERS
  M:    "David S. Miller" <davem@davemloft.net>
  M:    Jakub Kicinski <kuba@kernel.org>
 +M:    Paolo Abeni <pabeni@redhat.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  Q:    https://patchwork.kernel.org/project/netdevbpf/list/
@@@ -13646,7 -13429,6 +13653,7 @@@ F:   tools/testing/selftests/drivers/net/
  NETWORKING [GENERAL]
  M:    "David S. Miller" <davem@davemloft.net>
  M:    Jakub Kicinski <kuba@kernel.org>
 +M:    Paolo Abeni <pabeni@redhat.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  Q:    https://patchwork.kernel.org/project/netdevbpf/list/
@@@ -13790,7 -13572,7 +13797,7 @@@ F:   include/uapi/linux/nexthop.
  F:    net/ipv4/nexthop.c
  
  NFC SUBSYSTEM
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-nfc@lists.01.org (subscribers-only)
  L:    netdev@vger.kernel.org
  S:    Maintained
@@@ -13924,7 -13706,7 +13931,7 @@@ F:   scripts/nsdep
  NTB AMD DRIVER
  M:    Sanjay R Mehta <sanju.mehta@amd.com>
  M:    Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
 -L:    linux-ntb@googlegroups.com
 +L:    ntb@lists.linux.dev
  S:    Supported
  F:    drivers/ntb/hw/amd/
  
@@@ -13932,7 -13714,7 +13939,7 @@@ NTB DRIVER COR
  M:    Jon Mason <jdmason@kudzu.us>
  M:    Dave Jiang <dave.jiang@intel.com>
  M:    Allen Hubbe <allenbh@gmail.com>
 -L:    linux-ntb@googlegroups.com
 +L:    ntb@lists.linux.dev
  S:    Supported
  W:    https://github.com/jonmason/ntb/wiki
  T:    git git://github.com/jonmason/ntb.git
@@@ -13944,13 -13726,13 +13951,13 @@@ F:        tools/testing/selftests/ntb
  
  NTB IDT DRIVER
  M:    Serge Semin <fancer.lancer@gmail.com>
 -L:    linux-ntb@googlegroups.com
 +L:    ntb@lists.linux.dev
  S:    Supported
  F:    drivers/ntb/hw/idt/
  
  NTB INTEL DRIVER
  M:    Dave Jiang <dave.jiang@intel.com>
 -L:    linux-ntb@googlegroups.com
 +L:    ntb@lists.linux.dev
  S:    Supported
  W:    https://github.com/davejiang/linux/wiki
  T:    git https://github.com/davejiang/linux.git
@@@ -14104,7 -13886,7 +14111,7 @@@ F:   Documentation/devicetree/bindings/re
  F:    drivers/regulator/pf8x00-regulator.c
  
  NXP PTN5150A CC LOGIC AND EXTCON DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/extcon/extcon-ptn5150.yaml
@@@ -14317,7 -14099,7 +14324,7 @@@ M:   Laurent Pinchart <laurent.pinchart@i
  L:    linux-media@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/ti,omap3isp.txt
 -F:    drivers/media/platform/omap3isp/
 +F:    drivers/media/platform/ti/omap3isp/
  F:    drivers/staging/media/omap4iss/
  
  OMAP MMC SUPPORT
@@@ -14425,12 -14207,6 +14432,12 @@@ M: Harald Welte <laforge@gnumonks.org
  S:    Maintained
  F:    drivers/char/pcmcia/cm4040_cs.*
  
 +OMNIVISION OG01A1B SENSOR DRIVER
 +M:    Shawn Tu <shawnx.tu@intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/media/i2c/og01a1b.c
 +
  OMNIVISION OV02A10 SENSOR DRIVER
  M:    Dongchun Zhu <dongchun.zhu@mediatek.com>
  L:    linux-media@vger.kernel.org
@@@ -14439,13 -14215,6 +14446,13 @@@ T: git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/i2c/ovti,ov02a10.yaml
  F:    drivers/media/i2c/ov02a10.c
  
 +OMNIVISION OV08D10 SENSOR DRIVER
 +M:    Jimmy Su <jimmy.su@intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    drivers/media/i2c/ov08d10.c
 +
  OMNIVISION OV13858 SENSOR DRIVER
  M:    Sakari Ailus <sakari.ailus@linux.intel.com>
  L:    linux-media@vger.kernel.org
@@@ -14652,7 -14421,6 +14659,7 @@@ F:   scripts/dtc
  
  OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS
  M:    Rob Herring <robh+dt@kernel.org>
 +M:    Krzysztof Kozlowski <krzk+dt@kernel.org>
  L:    devicetree@vger.kernel.org
  S:    Maintained
  C:    irc://irc.libera.chat/devicetree
@@@ -14842,9 -14610,8 +14849,9 @@@ F:   include/uapi/linux/ppdev.
  
  PARAVIRT_OPS INTERFACE
  M:    Juergen Gross <jgross@suse.com>
 -M:    Deep Shah <sdeep@vmware.com>
 -M:    "VMware, Inc." <pv-drivers@vmware.com>
 +M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
 +R:    Alexey Makhalov <amakhalov@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    virtualization@lists.linux-foundation.org
  L:    x86@kernel.org
  S:    Supported
@@@ -15051,7 -14818,6 +15058,7 @@@ F:   drivers/pci/controller/mobiveil/pcie
  
  PCI DRIVER FOR MVEBU (Marvell Armada 370 and Armada XP SOC support)
  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
@@@ -15359,24 -15125,6 +15366,24 @@@ L: platform-driver-x86@vger.kernel.or
  S:    Maintained
  F:    drivers/platform/x86/peaq-wmi.c
  
 +PECI HARDWARE MONITORING DRIVERS
 +M:    Iwona Winiarska <iwona.winiarska@intel.com>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Supported
 +F:    Documentation/hwmon/peci-cputemp.rst
 +F:    Documentation/hwmon/peci-dimmtemp.rst
 +F:    drivers/hwmon/peci/
 +
 +PECI SUBSYSTEM
 +M:    Iwona Winiarska <iwona.winiarska@intel.com>
 +L:    openbmc@lists.ozlabs.org (moderated for non-subscribers)
 +S:    Supported
 +F:    Documentation/devicetree/bindings/peci/
 +F:    Documentation/peci/
 +F:    drivers/peci/
 +F:    include/linux/peci-cpu.h
 +F:    include/linux/peci.h
 +
  PENSANDO ETHERNET DRIVERS
  M:    Shannon Nelson <snelson@pensando.io>
  M:    drivers@pensando.io
@@@ -15564,7 -15312,7 +15571,7 @@@ F:   drivers/pinctrl/renesas
  
  PIN CONTROLLER - SAMSUNG
  M:    Tomasz Figa <tomasz.figa@gmail.com>
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
  R:    Alim Akhtar <alim.akhtar@samsung.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -15573,7 -15321,7 +15580,7 @@@ S:   Maintaine
  C:    irc://irc.libera.chat/linux-exynos
  Q:    https://patchwork.kernel.org/project/linux-samsung-soc/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/samsung.git
 -F:    Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
 +F:    Documentation/devicetree/bindings/pinctrl/samsung,pinctrl*yaml
  F:    drivers/pinctrl/samsung/
  F:    include/dt-bindings/pinctrl/samsung.h
  
@@@ -15590,16 -15338,6 +15597,16 @@@ M: Lakshmi Sowjanya D <lakshmi.sowjanya
  S:    Supported
  F:    drivers/pinctrl/pinctrl-thunderbay.c
  
 +PIN CONTROLLER - SUNPLUS / TIBBO
 +M:    Dvorkin Dmitry <dvorkin@tibbo.com>
 +M:    Wells Lu <wellslutw@gmail.com>
 +L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 +S:    Maintained
 +W:    https://sunplus.atlassian.net/wiki/spaces/doc/overview
 +F:    Documentation/devicetree/bindings/pinctrl/sunplus,*
 +F:    drivers/pinctrl/sunplus/
 +F:    include/dt-bindings/pinctrl/sppctl*.h
 +
  PKTCDVD DRIVER
  M:    linux-block@vger.kernel.org
  S:    Orphan
@@@ -15802,7 -15540,6 +15809,7 @@@ F:   drivers/net/ppp/pptp.
  
  PRESSURE STALL INFORMATION (PSI)
  M:    Johannes Weiner <hannes@cmpxchg.org>
 +M:    Suren Baghdasaryan <surenb@google.com>
  S:    Maintained
  F:    include/linux/psi*
  F:    kernel/sched/psi.c
@@@ -16040,14 -15777,6 +16047,14 @@@ F: sound/soc/codecs/wcd-clsh-v2.
  F:    sound/soc/codecs/wsa881x.c
  F:    sound/soc/qcom/
  
 +QCOM EMBEDDED USB DEBUGGER (EUD)
 +M:    Souradeep Chowdhury <quic_schowdhu@quicinc.com>
 +L:    linux-arm-msm@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-driver-eud
 +F:    Documentation/devicetree/bindings/soc/qcom/qcom,eud.yaml
 +F:    drivers/usb/misc/qcom_eud.c
 +
  QCOM IPA DRIVER
  M:    Alex Elder <elder@kernel.org>
  L:    netdev@vger.kernel.org
@@@ -16201,8 -15930,8 +16208,8 @@@ M:   Kalle Valo <kvalo@kernel.org
  L:    ath11k@lists.infradead.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
 +F:    Documentation/devicetree/bindings/net/wireless/qcom,ath11k.yaml
  F:    drivers/net/wireless/ath/ath11k/
 -F:    Documentation/devicetree/bindings/net/wireless/qcom,ath11k.txt
  
  QUALCOMM ATHEROS ATH9K WIRELESS DRIVER
  M:    Toke Høiland-Jørgensen <toke@toke.dk>
@@@ -16459,13 -16188,6 +16466,13 @@@ L: linux-mips@vger.kernel.or
  S:    Maintained
  F:    arch/mips/ralink
  
 +RALINK MT7621 MIPS ARCHITECTURE
 +M:    Arınç ÜNAL <arinc.unal@arinc9.com>
 +M:    Sergio Paracuellos <sergio.paracuellos@gmail.com>
 +L:    linux-mips@vger.kernel.org
 +S:    Maintained
 +F:    arch/mips/boot/dts/ralink/mt7621*
 +
  RALINK RT2X00 WIRELESS LAN DRIVER
  M:    Stanislaw Gruszka <stf_xl@wp.pl>
  M:    Helmut Schaa <helmut.schaa@googlemail.com>
@@@ -16492,7 -16214,6 +16499,7 @@@ M:   Jason A. Donenfeld <Jason@zx2c4.com
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/crng/random.git
  S:    Maintained
  F:    drivers/char/random.c
 +F:    drivers/virt/vmgenid.c
  
  RAPIDIO SUBSYSTEM
  M:    Matt Porter <mporter@kernel.crashing.org>
@@@ -16607,8 -16328,6 +16614,8 @@@ F:   tools/testing/selftests/resctrl
  
  READ-COPY UPDATE (RCU)
  M:    "Paul E. McKenney" <paulmck@kernel.org>
 +M:    Frederic Weisbecker <frederic@kernel.org> (kernel/rcu/tree_nocb.h)
 +M:    Neeraj Upadhyay <quic_neeraju@quicinc.com> (kernel/rcu/tasks.h)
  M:    Josh Triplett <josh@joshtriplett.org>
  R:    Steven Rostedt <rostedt@goodmis.org>
  R:    Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
@@@ -16658,8 -16377,9 +16665,8 @@@ REALTEK RTL83xx SMI DSA ROUTER CHIP
  M:    Linus Walleij <linus.walleij@linaro.org>
  M:    Alvin Šipraga <alsi@bang-olufsen.dk>
  S:    Maintained
 -F:    Documentation/devicetree/bindings/net/dsa/realtek-smi.txt
 -F:    drivers/net/dsa/realtek-smi*
 -F:    drivers/net/dsa/rtl83*
 +F:    Documentation/devicetree/bindings/net/dsa/realtek.yaml
 +F:    drivers/net/dsa/realtek/*
  
  REALTEK WIRELESS DRIVER (rtlwifi family)
  M:    Ping-Ke Shih <pkshih@realtek.com>
@@@ -16881,15 -16601,6 +16888,15 @@@ S: Maintaine
  F:    drivers/mtd/nand/raw/r852.c
  F:    drivers/mtd/nand/raw/r852.h
  
 +RISC-V PMU DRIVERS
 +M:    Atish Patra <atishp@atishpatra.org>
 +R:    Anup Patel <anup@brainfault.org>
 +L:    linux-riscv@lists.infradead.org
 +S:    Supported
 +F:    drivers/perf/riscv_pmu.c
 +F:    drivers/perf/riscv_pmu_legacy.c
 +F:    drivers/perf/riscv_pmu_sbi.c
 +
  RISC-V ARCHITECTURE
  M:    Paul Walmsley <paul.walmsley@sifive.com>
  M:    Palmer Dabbelt <palmer@dabbelt.com>
@@@ -16904,10 -16615,8 +16911,10 @@@ K: risc
  
  RISC-V/MICROCHIP POLARFIRE SOC SUPPORT
  M:    Lewis Hanly <lewis.hanly@microchip.com>
 +M:    Conor Dooley <conor.dooley@microchip.com>
  L:    linux-riscv@lists.infradead.org
  S:    Supported
 +F:    arch/riscv/boot/dts/microchip/
  F:    drivers/mailbox/mailbox-mpfs.c
  F:    drivers/soc/microchip/
  F:    include/soc/microchip/mpfs.h
@@@ -16935,7 -16644,8 +16942,7 @@@ F:   Documentation/devicetree/bindings/so
  F:    sound/soc/rockchip/rockchip_i2s_tdm.*
  
  ROCKCHIP ISP V1 DRIVER
 -M:    Helen Koike <helen.koike@collabora.com>
 -M:    Dafna Hirschfeld <dafna.hirschfeld@collabora.com>
 +M:    Dafna Hirschfeld <dafna@fastmail.com>
  L:    linux-media@vger.kernel.org
  L:    linux-rockchip@lists.infradead.org
  S:    Maintained
@@@ -16992,7 -16702,7 +16999,7 @@@ M:   Marek Vasut <marek.vasut+renesas@gma
  L:    linux-kernel@vger.kernel.org
  L:    linux-renesas-soc@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/mfd/bd9571mwv.txt
 +F:    Documentation/devicetree/bindings/mfd/rohm,bd9571mwv.yaml
  F:    drivers/gpio/gpio-bd9571mwv.c
  F:    drivers/mfd/bd9571mwv.c
  F:    drivers/regulator/bd9571mwv-regulator.c
@@@ -17204,7 -16914,9 +17211,7 @@@ L:   linux-s390@vger.kernel.or
  S:    Supported
  W:    http://www.ibm.com/developerworks/linux/linux390/
  F:    Documentation/s390/vfio-ap.rst
 -F:    drivers/s390/crypto/vfio_ap_drv.c
 -F:    drivers/s390/crypto/vfio_ap_ops.c
 -F:    drivers/s390/crypto/vfio_ap_private.h
 +F:    drivers/s390/crypto/vfio_ap*
  
  S390 VFIO-CCW DRIVER
  M:    Eric Farman <farman@linux.ibm.com>
@@@ -17242,7 -16954,7 +17249,7 @@@ W:   http://www.ibm.com/developerworks/li
  F:    drivers/s390/scsi/zfcp_*
  
  S3C ADC BATTERY DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-samsung-soc@vger.kernel.org
  S:    Odd Fixes
  F:    drivers/power/supply/s3c_adc_battery.c
@@@ -17287,7 -16999,7 +17294,7 @@@ F:   Documentation/admin-guide/LSM/SafeSe
  F:    security/safesetid/
  
  SAMSUNG AUDIO (ASoC) DRIVERS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
@@@ -17295,7 -17007,7 +17302,7 @@@ F:   Documentation/devicetree/bindings/so
  F:    sound/soc/samsung/
  
  SAMSUNG EXYNOS PSEUDO RANDOM NUMBER GENERATOR (RNG) DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-crypto@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
  S:    Maintained
@@@ -17330,7 -17042,7 +17337,7 @@@ S:   Maintaine
  F:    drivers/platform/x86/samsung-laptop.c
  
  SAMSUNG MULTIFUNCTION PMIC DEVICE DRIVERS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
  L:    linux-kernel@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
@@@ -17352,11 -17064,11 +17359,11 @@@ M:        Sylwester Nawrocki <sylvester.nawroc
  L:    linux-media@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
  S:    Maintained
 -F:    drivers/media/platform/s3c-camif/
 +F:    drivers/media/platform/samsung/s3c-camif/
  F:    include/media/drv-intf/s3c_camif.h
  
  SAMSUNG S3FWRN5 NFC DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Krzysztof Opasiak <k.opasiak@samsung.com>
  L:    linux-nfc@lists.01.org (subscribers-only)
  S:    Maintained
@@@ -17378,7 -17090,7 +17385,7 @@@ S:   Supporte
  F:    drivers/media/i2c/s5k5baf.c
  
  SAMSUNG S5P Security SubSystem (SSS) DRIVER
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Vladimir Zapolskiy <vz@mleia.com>
  L:    linux-crypto@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
@@@ -17392,7 -17104,7 +17399,7 @@@ M:   Sylwester Nawrocki <s.nawrocki@samsu
  L:    linux-media@vger.kernel.org
  S:    Supported
  Q:    https://patchwork.linuxtv.org/project/linux-media/list/
 -F:    drivers/media/platform/exynos4-is/
 +F:    drivers/media/platform/samsung/exynos4-is/
  
  SAMSUNG SOC CLOCK DRIVERS
  M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
@@@ -17413,12 -17125,12 +17420,12 @@@ F:        include/linux/clk/samsung.
  F:    include/linux/platform_data/clk-s3c2410.h
  
  SAMSUNG SPI DRIVERS
 -M:    Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  M:    Andi Shyti <andi@etezian.org>
  L:    linux-spi@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
  S:    Maintained
 -F:    Documentation/devicetree/bindings/spi/spi-samsung.txt
 +F:    Documentation/devicetree/bindings/spi/samsung,spi*.yaml
  F:    drivers/spi/spi-s3c*
  F:    include/linux/platform_data/spi-s3c64xx.h
  F:    include/linux/spi/s3c24xx-fiq.h
@@@ -17430,19 -17142,18 +17437,19 @@@ S:        Supporte
  F:    drivers/net/ethernet/samsung/sxgbe/
  
  SAMSUNG THERMAL DRIVER
 -M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 +M:    Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
 +M:    Krzysztof Kozlowski <krzk@kernel.org>
  L:    linux-pm@vger.kernel.org
  L:    linux-samsung-soc@vger.kernel.org
 -S:    Supported
 -T:    git https://github.com/lmajewski/linux-samsung-thermal.git
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/thermal/samsung,exynos-thermal.yaml
  F:    drivers/thermal/samsung/
  
  SAMSUNG USB2 PHY DRIVER
  M:    Sylwester Nawrocki <s.nawrocki@samsung.com>
  L:    linux-kernel@vger.kernel.org
  S:    Supported
 -F:    Documentation/devicetree/bindings/phy/samsung-phy.txt
 +F:    Documentation/devicetree/bindings/phy/samsung,usb2-phy.yaml
  F:    Documentation/driver-api/phy/samsung-usb2.rst
  F:    drivers/phy/samsung/phy-exynos4210-usb2.c
  F:    drivers/phy/samsung/phy-exynos4x12-usb2.c
@@@ -17827,7 -17538,7 +17834,7 @@@ F:   include/media/i2c/rj54n1cb0c.
  SH_VOU V4L2 OUTPUT DRIVER
  L:    linux-media@vger.kernel.org
  S:    Orphan
 -F:    drivers/media/platform/sh_vou.c
 +F:    drivers/media/platform/renesas/sh_vou.c
  F:    include/media/drv-intf/sh_vou.h
  
  SI2157 MEDIA DRIVER
@@@ -17946,7 -17657,6 +17953,7 @@@ F:   drivers/platform/x86/touchscreen_dmi
  SILICON LABS WIRELESS DRIVERS (for WFxxx series)
  M:    Jérôme Pouiller <jerome.pouiller@silabs.com>
  S:    Supported
 +F:    Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
  F:    drivers/staging/wfx/
  
  SILICON MOTION SM712 FRAME BUFFER DRIVER
@@@ -18600,8 -18310,7 +18607,8 @@@ F:   Documentation/devicetree/bindings/ii
  F:    drivers/iio/imu/st_lsm6dsx/
  
  ST MIPID02 CSI-2 TO PARALLEL BRIDGE DRIVER
 -M:    Mickael Guene <mickael.guene@st.com>
 +M:    Benjamin Mugnier <benjamin.mugnier@foss.st.com>
 +M:    Sylvain Petinot <sylvain.petinot@foss.st.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
@@@ -18833,12 -18542,6 +18840,12 @@@ L: netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/ethernet/dlink/sundance.c
  
 +SUNPLUS OCOTP DRIVER
 +M:    Vincent Shih <vincent.sunplus@gmail.com>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/nvmem/sunplus,sp7021-ocotp.yaml
 +F:    drivers/nvmem/sunplus-ocotp.c
 +
  SUNPLUS RTC DRIVER
  M:    Vincent Shih <vincent.sunplus@gmail.com>
  L:    linux-rtc@vger.kernel.org
@@@ -18846,13 -18549,12 +18853,19 @@@ S:        Maintaine
  F:    Documentation/devicetree/bindings/rtc/sunplus,sp7021-rtc.yaml
  F:    drivers/rtc/rtc-sunplus.c
  
 +SUNPLUS SPI CONTROLLER INTERFACE DRIVER
 +M:    Li-hao Kuo <lhjeff911@gmail.com>
 +L:    linux-spi@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/spi/spi-sunplus-sp7021.yaml
 +F:    drivers/spi/spi-sunplus-sp7021.c
 +
+ SUNPLUS UART DRIVER
+ M:    Hammer Hsieh <hammerh0314@gmail.com>
+ S:    Maintained
+ F:    Documentation/devicetree/bindings/serial/sunplus,sp7021-uart.yaml
+ F:    drivers/tty/serial/sunplus-uart.c
  SUPERH
  M:    Yoshinori Sato <ysato@users.sourceforge.jp>
  M:    Rich Felker <dalias@libc.org>
@@@ -19022,7 -18724,6 +19035,7 @@@ SYNOPSYS DESIGNWARE I2C DRIVE
  M:    Jarkko Nikula <jarkko.nikula@linux.intel.com>
  R:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  R:    Mika Westerberg <mika.westerberg@linux.intel.com>
 +R:    Jan Dabros <jsd@semihalf.com>
  L:    linux-i2c@vger.kernel.org
  S:    Maintained
  F:    drivers/i2c/busses/i2c-designware-*
@@@ -19405,7 -19106,6 +19418,7 @@@ TEXAS INSTRUMENTS ASoC DRIVER
  M:    Peter Ujfalusi <peter.ujfalusi@gmail.com>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml
  F:    sound/soc/ti/
  
  TEXAS INSTRUMENTS' DAC7612 DAC DRIVER
@@@ -19586,7 -19286,7 +19599,7 @@@ S:   Maintaine
  W:    https://linuxtv.org
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
 -F:    drivers/media/platform/am437x/
 +F:    drivers/media/platform/ti/am437x/
  
  TI BANDGAP AND THERMAL DRIVER
  M:    Eduardo Valentin <edubezval@gmail.com>
@@@ -19645,7 -19345,7 +19658,7 @@@ S:   Maintaine
  W:    https://linuxtv.org
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  T:    git git://linuxtv.org/mhadli/v4l-dvb-davinci_devices.git
 -F:    drivers/media/platform/davinci/
 +F:    drivers/media/platform/ti/davinci/
  F:    include/media/davinci/
  
  TI ENHANCED QUADRATURE ENCODER PULSE (eQEP) DRIVER
@@@ -19731,8 -19431,7 +19744,8 @@@ W:   http://linuxtv.org
  Q:    http://patchwork.linuxtv.org/project/linux-media/list/
  F:    Documentation/devicetree/bindings/media/ti,cal.yaml
  F:    Documentation/devicetree/bindings/media/ti,vpe.yaml
 -F:    drivers/media/platform/ti-vpe/
 +F:    drivers/media/platform/ti/cal/
 +F:    drivers/media/platform/ti/vpe/
  
  TI WILINK WIRELESS DRIVERS
  L:    linux-wireless@vger.kernel.org
@@@ -19803,15 -19502,6 +19816,15 @@@ S: Maintaine
  F:    Documentation/hwmon/tmp401.rst
  F:    drivers/hwmon/tmp401.c
  
 +TMP464 HARDWARE MONITOR DRIVER
 +M:    Agathe Porte <agathe.porte@nokia.com>
 +M:    Guenter Roeck <linux@roeck-us.net>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/hwmon/ti,tmp464.yaml
 +F:    Documentation/hwmon/tmp464.rst
 +F:    drivers/hwmon/tmp464.c
 +
  TMP513 HARDWARE MONITOR DRIVER
  M:    Eric Tremblay <etremblay@distech-controls.com>
  L:    linux-hwmon@vger.kernel.org
@@@ -20051,11 -19741,6 +20064,11 @@@ W: http://linuxtv.or
  T:    git git://linuxtv.org/media_tree.git
  F:    drivers/media/pci/tw686x/
  
 +U-BOOT ENVIRONMENT VARIABLES
 +M:    Rafał Miłecki <rafal@milecki.pl>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/nvmem/u-boot,env.yaml
 +
  UACCE ACCELERATOR FRAMEWORK
  M:    Zhangfei Gao <zhangfei.gao@linaro.org>
  M:    Zhou Wang <wangzhou1@hisilicon.com>
@@@ -20158,7 -19843,6 +20171,7 @@@ R:   Alim Akhtar <alim.akhtar@samsung.com
  R:    Avri Altman <avri.altman@wdc.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
 +F:    Documentation/devicetree/bindings/ufs/
  F:    Documentation/scsi/ufs.rst
  F:    drivers/scsi/ufs/
  
@@@ -20633,13 -20317,6 +20646,13 @@@ L: kvm@vger.kernel.or
  S:    Maintained
  F:    drivers/vfio/fsl-mc/
  
 +VFIO HISILICON PCI DRIVER
 +M:    Longfang Liu <liulongfang@huawei.com>
 +M:    Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
 +L:    kvm@vger.kernel.org
 +S:    Maintained
 +F:    drivers/vfio/pci/hisilicon/
 +
  VFIO MEDIATED DEVICE DRIVERS
  M:    Kirti Wankhede <kwankhede@nvidia.com>
  L:    kvm@vger.kernel.org
@@@ -20649,28 -20326,12 +20662,28 @@@ F:        drivers/vfio/mdev
  F:    include/linux/mdev.h
  F:    samples/vfio-mdev/
  
 +VFIO PCI DEVICE SPECIFIC DRIVERS
 +R:    Jason Gunthorpe <jgg@nvidia.com>
 +R:    Yishai Hadas <yishaih@nvidia.com>
 +R:    Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
 +R:    Kevin Tian <kevin.tian@intel.com>
 +L:    kvm@vger.kernel.org
 +S:    Maintained
 +P:    Documentation/driver-api/vfio-pci-device-specific-driver-acceptance.rst
 +F:    drivers/vfio/pci/*/
 +
  VFIO PLATFORM DRIVER
  M:    Eric Auger <eric.auger@redhat.com>
  L:    kvm@vger.kernel.org
  S:    Maintained
  F:    drivers/vfio/platform/
  
 +VFIO MLX5 PCI DRIVER
 +M:    Yishai Hadas <yishaih@nvidia.com>
 +L:    kvm@vger.kernel.org
 +S:    Maintained
 +F:    drivers/vfio/pci/mlx5/
 +
  VGA_SWITCHEROO
  R:    Lukas Wunner <lukas@wunner.de>
  S:    Maintained
@@@ -20734,8 -20395,8 +20747,8 @@@ F:   drivers/media/common/videobuf2/
  F:    include/media/videobuf2-*
  
  VIMC VIRTUAL MEDIA CONTROLLER DRIVER
 -M:    Helen Koike <helen.koike@collabora.com>
 -R:    Shuah Khan <skhan@linuxfoundation.org>
 +M:    Shuah Khan <skhan@linuxfoundation.org>
 +R:    Kieran Bingham <kieran.bingham@ideasonboard.com>
  L:    linux-media@vger.kernel.org
  S:    Maintained
  W:    https://linuxtv.org
@@@ -20990,33 -20651,30 +21003,33 @@@ F:        tools/testing/vsock
  
  VMWARE BALLOON DRIVER
  M:    Nadav Amit <namit@vmware.com>
 -M:    "VMware, Inc." <pv-drivers@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-kernel@vger.kernel.org
  S:    Maintained
  F:    drivers/misc/vmw_balloon.c
  
  VMWARE HYPERVISOR INTERFACE
 -M:    Deep Shah <sdeep@vmware.com>
 -M:    "VMware, Inc." <pv-drivers@vmware.com>
 +M:    Srivatsa S. Bhat (VMware) <srivatsa@csail.mit.edu>
 +M:    Alexey Makhalov <amakhalov@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    virtualization@lists.linux-foundation.org
 +L:    x86@kernel.org
  S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/vmware
  F:    arch/x86/include/asm/vmware.h
  F:    arch/x86/kernel/cpu/vmware.c
  
  VMWARE PVRDMA DRIVER
  M:    Bryan Tan <bryantan@vmware.com>
  M:    Vishnu Dasa <vdasa@vmware.com>
 -M:    VMware PV-Drivers <pv-drivers@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-rdma@vger.kernel.org
  S:    Maintained
  F:    drivers/infiniband/hw/vmw_pvrdma/
  
  VMware PVSCSI driver
  M:    Vishal Bhakta <vbhakta@vmware.com>
 -M:    VMware PV-Drivers <pv-drivers@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    linux-scsi@vger.kernel.org
  S:    Maintained
  F:    drivers/scsi/vmw_pvscsi.c
@@@ -21024,24 -20682,22 +21037,24 @@@ F:        drivers/scsi/vmw_pvscsi.
  
  VMWARE VIRTUAL PTP CLOCK DRIVER
  M:    Vivek Thampi <vithampi@vmware.com>
 -M:    "VMware, Inc." <pv-drivers@vmware.com>
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    drivers/ptp/ptp_vmw.c
  
  VMWARE VMCI DRIVER
 -M:    Jorgen Hansen <jhansen@vmware.com>
 +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
 -L:    pv-drivers@vmware.com (private)
  S:    Maintained
  F:    drivers/misc/vmw_vmci/
  
  VMWARE VMMOUSE SUBDRIVER
 -M:    "VMware Graphics" <linux-graphics-maintainer@vmware.com>
 -M:    "VMware, Inc." <pv-drivers@vmware.com>
 +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
  F:    drivers/input/mouse/vmmouse.c
@@@ -21049,7 -20705,7 +21062,7 @@@ F:   drivers/input/mouse/vmmouse.
  
  VMWARE VMXNET3 ETHERNET DRIVER
  M:    Ronak Doshi <doshir@vmware.com>
 -M:    pv-drivers@vmware.com
 +R:    VMware PV-Drivers Reviewers <pv-drivers@vmware.com>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/vmxnet3/
@@@ -21425,7 -21081,7 +21438,7 @@@ L:   linux-media@vger.kernel.or
  S:    Maintained
  W:    https://linuxtv.org
  T:    git git://linuxtv.org/media_tree.git
 -F:    drivers/media/tuners/tuner-xc2028.*
 +F:    drivers/media/tuners/xc2028.*
  
  XDP (eXpress Data Path)
  M:    Alexei Starovoitov <ast@kernel.org>
@@@ -21645,11 -21301,6 +21658,11 @@@ T: git https://github.com/Xilinx/linux-
  F:    Documentation/devicetree/bindings/phy/xlnx,zynqmp-psgtr.yaml
  F:    drivers/phy/xilinx/phy-zynqmp.c
  
 +XILINX ZYNQMP SHA3 DRIVER
 +M:    Harsha <harsha.harsha@xilinx.com>
 +S:    Maintained
 +F:    drivers/crypto/xilinx/zynqmp-sha.c
 +
  XILINX EVENT MANAGEMENT DRIVER
  M:    Abhyuday Godhasara <abhyuday.godhasara@xilinx.com>
  S:    Maintained
@@@ -21667,6 -21318,7 +21680,6 @@@ M:   George Cherian <gcherian@marvell.com
  L:    linux-i2c@vger.kernel.org
  S:    Supported
  W:    http://www.marvell.com
 -F:    Documentation/devicetree/bindings/i2c/i2c-xlp9xx.txt
  F:    drivers/i2c/busses/i2c-xlp9xx.c
  
  XRA1403 GPIO EXPANDER
@@@ -21829,6 -21481,7 +21842,6 @@@ THE RES
  M:    Linus Torvalds <torvalds@linux-foundation.org>
  L:    linux-kernel@vger.kernel.org
  S:    Buried alive in reporters
 -Q:    http://patchwork.kernel.org/project/LKML/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
  F:    *
  F:    */
                                reg = <0x11500 0x40>;
                        };
  
+                       uartclk: clock-controller@12010 {
+                               compatible = "marvell,armada-3700-uart-clock";
+                               reg = <0x12010 0x4>, <0x12210 0x4>;
+                               clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>,
+                                        <&tbg 3>, <&xtalclk>;
+                               clock-names = "TBG-A-P", "TBG-B-P", "TBG-A-S",
+                                             "TBG-B-S", "xtal";
+                               #clock-cells = <1>;
+                       };
                        uart0: serial@12000 {
                                compatible = "marvell,armada-3700-uart";
                                reg = <0x12000 0x18>;
-                               clocks = <&xtalclk>;
+                               clocks = <&uartclk 0>;
                                interrupts =
                                <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
                                <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
                        uart1: serial@12200 {
                                compatible = "marvell,armada-3700-uart-ext";
                                reg = <0x12200 0x30>;
-                               clocks = <&xtalclk>;
+                               clocks = <&uartclk 1>;
                                interrupts =
                                <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
                                <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>;
                        bus-range = <0x00 0xff>;
                        interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
                        #interrupt-cells = <1>;
 +                      clocks = <&sb_periph_clk 13>;
                        msi-parent = <&pcie0>;
                        msi-controller;
                        /*
                         * (totaling 127 MiB) for MEM.
                         */
                        ranges = <0x82000000 0 0xe8000000   0 0xe8000000   0 0x07f00000   /* Port 0 MEM */
 -                                0x81000000 0 0xefff0000   0 0xefff0000   0 0x00010000>; /* Port 0 IO */
 +                                0x81000000 0 0x00000000   0 0xefff0000   0 0x00010000>; /* Port 0 IO */
                        interrupt-map-mask = <0 0 0 7>;
                        interrupt-map = <0 0 0 1 &pcie_intc 0>,
                                        <0 0 0 2 &pcie_intc 1>,
@@@ -554,7 -554,6 +554,6 @@@ static void max3100_shutdown(struct uar
                del_timer_sync(&s->timer);
  
        if (s->workqueue) {
-               flush_workqueue(s->workqueue);
                destroy_workqueue(s->workqueue);
                s->workqueue = NULL;
        }
@@@ -805,7 -804,7 +804,7 @@@ static int max3100_probe(struct spi_dev
        return 0;
  }
  
 -static int max3100_remove(struct spi_device *spi)
 +static void max3100_remove(struct spi_device *spi)
  {
        struct max3100_port *s = spi_get_drvdata(spi);
        int i;
        for (i = 0; i < MAX_MAX3100; i++)
                if (max3100s[i]) {
                        mutex_unlock(&max3100s_lock);
 -                      return 0;
 +                      return;
                }
        pr_debug("removing max3100 driver\n");
        uart_unregister_driver(&max3100_uart_driver);
  
        mutex_unlock(&max3100s_lock);
 -      return 0;
  }
  
  #ifdef CONFIG_PM_SLEEP
                                                  *       XON1, XON2, XOFF1 and
                                                  *       XOFF2
                                                  */
+ #define SC16IS7XX_EFR_FLOWCTRL_BITS   (SC16IS7XX_EFR_AUTORTS_BIT | \
+                                       SC16IS7XX_EFR_AUTOCTS_BIT | \
+                                       SC16IS7XX_EFR_XOFF2_DETECT_BIT | \
+                                       SC16IS7XX_EFR_SWFLOW3_BIT | \
+                                       SC16IS7XX_EFR_SWFLOW2_BIT | \
+                                       SC16IS7XX_EFR_SWFLOW1_BIT | \
+                                       SC16IS7XX_EFR_SWFLOW0_BIT)
  
  /* Misc definitions */
  #define SC16IS7XX_FIFO_SIZE           (64)
@@@ -298,6 -306,7 +306,7 @@@ struct sc16is7xx_devtype 
        char    name[10];
        int     nr_gpio;
        int     nr_uart;
+       int     has_mctrl;
  };
  
  #define SC16IS7XX_RECONF_MD           (1 << 0)
  
  struct sc16is7xx_one_config {
        unsigned int                    flags;
-       u8                              ier_clear;
+       u8                              ier_mask;
+       u8                              ier_val;
  };
  
  struct sc16is7xx_one {
        u8                              line;
        struct kthread_work             tx_work;
        struct kthread_work             reg_work;
+       struct kthread_delayed_work     ms_work;
        struct sc16is7xx_one_config     config;
        bool                            irda_mode;
+       unsigned int                    old_mctrl;
  };
  
  struct sc16is7xx_port {
@@@ -340,6 -352,9 +352,9 @@@ static struct uart_driver sc16is7xx_uar
        .nr             = SC16IS7XX_MAX_DEVS,
  };
  
+ static void sc16is7xx_ier_set(struct uart_port *port, u8 bit);
+ static void sc16is7xx_stop_tx(struct uart_port *port);
  #define to_sc16is7xx_port(p,e)        ((container_of((p), struct sc16is7xx_port, e)))
  #define to_sc16is7xx_one(p,e) ((container_of((p), struct sc16is7xx_one, e)))
  
@@@ -432,30 -447,35 +447,35 @@@ static const struct sc16is7xx_devtype s
        .name           = "SC16IS74X",
        .nr_gpio        = 0,
        .nr_uart        = 1,
+       .has_mctrl      = 0,
  };
  
  static const struct sc16is7xx_devtype sc16is750_devtype = {
        .name           = "SC16IS750",
-       .nr_gpio        = 8,
+       .nr_gpio        = 4,
        .nr_uart        = 1,
+       .has_mctrl      = 1,
  };
  
  static const struct sc16is7xx_devtype sc16is752_devtype = {
        .name           = "SC16IS752",
-       .nr_gpio        = 8,
+       .nr_gpio        = 0,
        .nr_uart        = 2,
+       .has_mctrl      = 1,
  };
  
  static const struct sc16is7xx_devtype sc16is760_devtype = {
        .name           = "SC16IS760",
-       .nr_gpio        = 8,
+       .nr_gpio        = 4,
        .nr_uart        = 1,
+       .has_mctrl      = 1,
  };
  
  static const struct sc16is7xx_devtype sc16is762_devtype = {
        .name           = "SC16IS762",
-       .nr_gpio        = 8,
+       .nr_gpio        = 0,
        .nr_uart        = 2,
+       .has_mctrl      = 1,
  };
  
  static bool sc16is7xx_regmap_volatile(struct device *dev, unsigned int reg)
@@@ -523,8 -543,10 +543,10 @@@ static int sc16is7xx_set_baud(struct ua
  
        /* Enable enhanced features */
        regcache_cache_bypass(s->regmap, true);
-       sc16is7xx_port_write(port, SC16IS7XX_EFR_REG,
-                            SC16IS7XX_EFR_ENABLE_BIT);
+       sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
+                             SC16IS7XX_EFR_ENABLE_BIT,
+                             SC16IS7XX_EFR_ENABLE_BIT);
        regcache_cache_bypass(s->regmap, false);
  
        /* Put LCR back to the normal mode */
@@@ -635,6 -657,7 +657,7 @@@ static void sc16is7xx_handle_tx(struct 
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
        struct circ_buf *xmit = &port->state->xmit;
        unsigned int txlen, to_send, i;
+       unsigned long flags;
  
        if (unlikely(port->x_char)) {
                sc16is7xx_port_write(port, SC16IS7XX_THR_REG, port->x_char);
                return;
        }
  
-       if (uart_circ_empty(xmit) || uart_tx_stopped(port))
+       if (uart_circ_empty(xmit) || uart_tx_stopped(port)) {
+               spin_lock_irqsave(&port->lock, flags);
+               sc16is7xx_stop_tx(port);
+               spin_unlock_irqrestore(&port->lock, flags);
                return;
+       }
  
        /* Get length of data pending in circular buffer */
        to_send = uart_circ_chars_pending(xmit);
                sc16is7xx_fifo_write(port, to_send);
        }
  
+       spin_lock_irqsave(&port->lock, flags);
        if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
                uart_write_wakeup(port);
+       if (uart_circ_empty(xmit))
+               sc16is7xx_stop_tx(port);
+       spin_unlock_irqrestore(&port->lock, flags);
+ }
+ static unsigned int sc16is7xx_get_hwmctrl(struct uart_port *port)
+ {
+       u8 msr = sc16is7xx_port_read(port, SC16IS7XX_MSR_REG);
+       unsigned int mctrl = 0;
+       mctrl |= (msr & SC16IS7XX_MSR_CTS_BIT) ? TIOCM_CTS : 0;
+       mctrl |= (msr & SC16IS7XX_MSR_DSR_BIT) ? TIOCM_DSR : 0;
+       mctrl |= (msr & SC16IS7XX_MSR_CD_BIT)  ? TIOCM_CAR : 0;
+       mctrl |= (msr & SC16IS7XX_MSR_RI_BIT)  ? TIOCM_RNG : 0;
+       return mctrl;
+ }
+ static void sc16is7xx_update_mlines(struct sc16is7xx_one *one)
+ {
+       struct uart_port *port = &one->port;
+       struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       unsigned long flags;
+       unsigned int status, changed;
+       lockdep_assert_held_once(&s->efr_lock);
+       status = sc16is7xx_get_hwmctrl(port);
+       changed = status ^ one->old_mctrl;
+       if (changed == 0)
+               return;
+       one->old_mctrl = status;
+       spin_lock_irqsave(&port->lock, flags);
+       if ((changed & TIOCM_RNG) && (status & TIOCM_RNG))
+               port->icount.rng++;
+       if (changed & TIOCM_DSR)
+               port->icount.dsr++;
+       if (changed & TIOCM_CAR)
+               uart_handle_dcd_change(port, status & TIOCM_CAR);
+       if (changed & TIOCM_CTS)
+               uart_handle_cts_change(port, status & TIOCM_CTS);
+       wake_up_interruptible(&port->state->port.delta_msr_wait);
+       spin_unlock_irqrestore(&port->lock, flags);
  }
  
  static bool sc16is7xx_port_irq(struct sc16is7xx_port *s, int portno)
  
        do {
                unsigned int iir, rxlen;
+               struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
  
                iir = sc16is7xx_port_read(port, SC16IS7XX_IIR_REG);
                if (iir & SC16IS7XX_IIR_NO_INT_BIT)
                        if (rxlen)
                                sc16is7xx_handle_rx(port, rxlen, iir);
                        break;
+               /* CTSRTS interrupt comes only when CTS goes inactive */
+               case SC16IS7XX_IIR_CTSRTS_SRC:
+               case SC16IS7XX_IIR_MSI_SRC:
+                       sc16is7xx_update_mlines(one);
+                       break;
                case SC16IS7XX_IIR_THRI_SRC:
                        sc16is7xx_handle_tx(port);
                        break;
@@@ -735,6 -816,7 +816,7 @@@ static void sc16is7xx_tx_proc(struct kt
  {
        struct uart_port *port = &(to_sc16is7xx_one(ws, tx_work)->port);
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       unsigned long flags;
  
        if ((port->rs485.flags & SER_RS485_ENABLED) &&
            (port->rs485.delay_rts_before_send > 0))
        mutex_lock(&s->efr_lock);
        sc16is7xx_handle_tx(port);
        mutex_unlock(&s->efr_lock);
+       spin_lock_irqsave(&port->lock, flags);
+       sc16is7xx_ier_set(port, SC16IS7XX_IER_THRI_BIT);
+       spin_unlock_irqrestore(&port->lock, flags);
  }
  
  static void sc16is7xx_reconf_rs485(struct uart_port *port)
@@@ -777,22 -863,27 +863,27 @@@ static void sc16is7xx_reg_proc(struct k
        spin_unlock_irqrestore(&one->port.lock, irqflags);
  
        if (config.flags & SC16IS7XX_RECONF_MD) {
+               u8 mcr = 0;
+               /* Device ignores RTS setting when hardware flow is enabled */
+               if (one->port.mctrl & TIOCM_RTS)
+                       mcr |= SC16IS7XX_MCR_RTS_BIT;
+               if (one->port.mctrl & TIOCM_DTR)
+                       mcr |= SC16IS7XX_MCR_DTR_BIT;
+               if (one->port.mctrl & TIOCM_LOOP)
+                       mcr |= SC16IS7XX_MCR_LOOP_BIT;
                sc16is7xx_port_update(&one->port, SC16IS7XX_MCR_REG,
+                                     SC16IS7XX_MCR_RTS_BIT |
+                                     SC16IS7XX_MCR_DTR_BIT |
                                      SC16IS7XX_MCR_LOOP_BIT,
-                                     (one->port.mctrl & TIOCM_LOOP) ?
-                                     SC16IS7XX_MCR_LOOP_BIT : 0);
-               sc16is7xx_port_update(&one->port, SC16IS7XX_MCR_REG,
-                                     SC16IS7XX_MCR_RTS_BIT,
-                                     (one->port.mctrl & TIOCM_RTS) ?
-                                     SC16IS7XX_MCR_RTS_BIT : 0);
-               sc16is7xx_port_update(&one->port, SC16IS7XX_MCR_REG,
-                                     SC16IS7XX_MCR_DTR_BIT,
-                                     (one->port.mctrl & TIOCM_DTR) ?
-                                     SC16IS7XX_MCR_DTR_BIT : 0);
+                                     mcr);
        }
        if (config.flags & SC16IS7XX_RECONF_IER)
                sc16is7xx_port_update(&one->port, SC16IS7XX_IER_REG,
-                                     config.ier_clear, 0);
+                                     config.ier_mask, config.ier_val);
  
        if (config.flags & SC16IS7XX_RECONF_RS485)
                sc16is7xx_reconf_rs485(&one->port);
@@@ -803,8 -894,24 +894,24 @@@ static void sc16is7xx_ier_clear(struct 
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
        struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
  
+       lockdep_assert_held_once(&port->lock);
+       one->config.flags |= SC16IS7XX_RECONF_IER;
+       one->config.ier_mask |= bit;
+       one->config.ier_val &= ~bit;
+       kthread_queue_work(&s->kworker, &one->reg_work);
+ }
+ static void sc16is7xx_ier_set(struct uart_port *port, u8 bit)
+ {
+       struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
+       lockdep_assert_held_once(&port->lock);
        one->config.flags |= SC16IS7XX_RECONF_IER;
-       one->config.ier_clear |= bit;
+       one->config.ier_mask |= bit;
+       one->config.ier_val |= bit;
        kthread_queue_work(&s->kworker, &one->reg_work);
  }
  
@@@ -818,6 -925,30 +925,30 @@@ static void sc16is7xx_stop_rx(struct ua
        sc16is7xx_ier_clear(port, SC16IS7XX_IER_RDI_BIT);
  }
  
+ static void sc16is7xx_ms_proc(struct kthread_work *ws)
+ {
+       struct sc16is7xx_one *one = to_sc16is7xx_one(ws, ms_work.work);
+       struct sc16is7xx_port *s = dev_get_drvdata(one->port.dev);
+       if (one->port.state) {
+               mutex_lock(&s->efr_lock);
+               sc16is7xx_update_mlines(one);
+               mutex_unlock(&s->efr_lock);
+               kthread_queue_delayed_work(&s->kworker, &one->ms_work, HZ);
+       }
+ }
+ static void sc16is7xx_enable_ms(struct uart_port *port)
+ {
+       struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
+       struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       lockdep_assert_held_once(&port->lock);
+       kthread_queue_delayed_work(&s->kworker, &one->ms_work, 0);
+ }
  static void sc16is7xx_start_tx(struct uart_port *port)
  {
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
        kthread_queue_work(&s->kworker, &one->tx_work);
  }
  
+ static void sc16is7xx_throttle(struct uart_port *port)
+ {
+       unsigned long flags;
+       /*
+        * Hardware flow control is enabled and thus the device ignores RTS
+        * value set in MCR register. Stop reading data from RX FIFO so the
+        * AutoRTS feature will de-activate RTS output.
+        */
+       spin_lock_irqsave(&port->lock, flags);
+       sc16is7xx_ier_clear(port, SC16IS7XX_IER_RDI_BIT);
+       spin_unlock_irqrestore(&port->lock, flags);
+ }
+ static void sc16is7xx_unthrottle(struct uart_port *port)
+ {
+       unsigned long flags;
+       spin_lock_irqsave(&port->lock, flags);
+       sc16is7xx_ier_set(port, SC16IS7XX_IER_RDI_BIT);
+       spin_unlock_irqrestore(&port->lock, flags);
+ }
  static unsigned int sc16is7xx_tx_empty(struct uart_port *port)
  {
        unsigned int lsr;
  
  static unsigned int sc16is7xx_get_mctrl(struct uart_port *port)
  {
-       /* DCD and DSR are not wired and CTS/RTS is handled automatically
-        * so just indicate DSR and CAR asserted
-        */
-       return TIOCM_DSR | TIOCM_CAR;
+       struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
+       /* Called with port lock taken so we can only return cached value */
+       return one->old_mctrl;
  }
  
  static void sc16is7xx_set_mctrl(struct uart_port *port, unsigned int mctrl)
@@@ -864,8 -1018,12 +1018,12 @@@ static void sc16is7xx_set_termios(struc
                                  struct ktermios *old)
  {
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
        unsigned int lcr, flow = 0;
        int baud;
+       unsigned long flags;
+       kthread_cancel_delayed_work_sync(&one->ms_work);
  
        /* Mask termios capabilities we don't support */
        termios->c_cflag &= ~CMSPAR;
        regcache_cache_bypass(s->regmap, true);
        sc16is7xx_port_write(port, SC16IS7XX_XON1_REG, termios->c_cc[VSTART]);
        sc16is7xx_port_write(port, SC16IS7XX_XOFF1_REG, termios->c_cc[VSTOP]);
-       if (termios->c_cflag & CRTSCTS)
+       port->status &= ~(UPSTAT_AUTOCTS | UPSTAT_AUTORTS);
+       if (termios->c_cflag & CRTSCTS) {
                flow |= SC16IS7XX_EFR_AUTOCTS_BIT |
                        SC16IS7XX_EFR_AUTORTS_BIT;
+               port->status |= UPSTAT_AUTOCTS | UPSTAT_AUTORTS;
+       }
        if (termios->c_iflag & IXON)
                flow |= SC16IS7XX_EFR_SWFLOW3_BIT;
        if (termios->c_iflag & IXOFF)
                flow |= SC16IS7XX_EFR_SWFLOW1_BIT;
  
-       sc16is7xx_port_write(port, SC16IS7XX_EFR_REG, flow);
+       sc16is7xx_port_update(port,
+                             SC16IS7XX_EFR_REG,
+                             SC16IS7XX_EFR_FLOWCTRL_BITS,
+                             flow);
        regcache_cache_bypass(s->regmap, false);
  
        /* Update LCR register */
        /* Setup baudrate generator */
        baud = sc16is7xx_set_baud(port, baud);
  
+       spin_lock_irqsave(&port->lock, flags);
        /* Update timeout according to new baud rate */
        uart_update_timeout(port, termios->c_cflag, baud);
+       if (UART_ENABLE_MS(port, termios->c_cflag))
+               sc16is7xx_enable_ms(port);
+       spin_unlock_irqrestore(&port->lock, flags);
  }
  
  static int sc16is7xx_config_rs485(struct uart_port *port,
@@@ -993,6 -1165,7 +1165,7 @@@ static int sc16is7xx_startup(struct uar
        struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
        unsigned int val;
+       unsigned long flags;
  
        sc16is7xx_power(port, 1);
  
        regcache_cache_bypass(s->regmap, true);
  
        /* Enable write access to enhanced features and internal clock div */
-       sc16is7xx_port_write(port, SC16IS7XX_EFR_REG,
-                            SC16IS7XX_EFR_ENABLE_BIT);
+       sc16is7xx_port_update(port, SC16IS7XX_EFR_REG,
+                             SC16IS7XX_EFR_ENABLE_BIT,
+                             SC16IS7XX_EFR_ENABLE_BIT);
  
        /* Enable TCR/TLR */
        sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
                              SC16IS7XX_EFCR_TXDISABLE_BIT,
                              0);
  
-       /* Enable RX, TX interrupts */
-       val = SC16IS7XX_IER_RDI_BIT | SC16IS7XX_IER_THRI_BIT;
+       /* Enable RX, CTS change and modem lines interrupts */
+       val = SC16IS7XX_IER_RDI_BIT | SC16IS7XX_IER_CTSI_BIT |
+             SC16IS7XX_IER_MSI_BIT;
        sc16is7xx_port_write(port, SC16IS7XX_IER_REG, val);
  
+       /* Enable modem status polling */
+       spin_lock_irqsave(&port->lock, flags);
+       sc16is7xx_enable_ms(port);
+       spin_unlock_irqrestore(&port->lock, flags);
        return 0;
  }
  
  static void sc16is7xx_shutdown(struct uart_port *port)
  {
        struct sc16is7xx_port *s = dev_get_drvdata(port->dev);
+       struct sc16is7xx_one *one = to_sc16is7xx_one(port, port);
+       kthread_cancel_delayed_work_sync(&one->ms_work);
  
        /* Disable all interrupts */
        sc16is7xx_port_write(port, SC16IS7XX_IER_REG, 0);
-       /* Disable TX/RX */
+       /* Disable TX/RX, clear auto RS485 and RTS invert */
        sc16is7xx_port_update(port, SC16IS7XX_EFCR_REG,
                              SC16IS7XX_EFCR_RXDISABLE_BIT |
-                             SC16IS7XX_EFCR_TXDISABLE_BIT,
+                             SC16IS7XX_EFCR_TXDISABLE_BIT |
+                             SC16IS7XX_EFCR_AUTO_RS485_BIT |
+                             SC16IS7XX_EFCR_RTS_INVERT_BIT,
                              SC16IS7XX_EFCR_RXDISABLE_BIT |
                              SC16IS7XX_EFCR_TXDISABLE_BIT);
  
@@@ -1114,7 -1299,10 +1299,10 @@@ static const struct uart_ops sc16is7xx_
        .get_mctrl      = sc16is7xx_get_mctrl,
        .stop_tx        = sc16is7xx_stop_tx,
        .start_tx       = sc16is7xx_start_tx,
+       .throttle       = sc16is7xx_throttle,
+       .unthrottle     = sc16is7xx_unthrottle,
        .stop_rx        = sc16is7xx_stop_rx,
+       .enable_ms      = sc16is7xx_enable_ms,
        .break_ctl      = sc16is7xx_break_ctl,
        .startup        = sc16is7xx_startup,
        .shutdown       = sc16is7xx_shutdown,
@@@ -1281,7 -1469,9 +1469,9 @@@ static int sc16is7xx_probe(struct devic
                s->p[i].port.uartclk    = freq;
                s->p[i].port.rs485_config = sc16is7xx_config_rs485;
                s->p[i].port.ops        = &sc16is7xx_ops;
+               s->p[i].old_mctrl       = 0;
                s->p[i].port.line       = sc16is7xx_alloc_line();
                if (s->p[i].port.line >= SC16IS7XX_MAX_DEVS) {
                        ret = -ENOMEM;
                        goto out_ports;
                sc16is7xx_port_write(&s->p[i].port, SC16IS7XX_EFCR_REG,
                                     SC16IS7XX_EFCR_RXDISABLE_BIT |
                                     SC16IS7XX_EFCR_TXDISABLE_BIT);
+               /* Use GPIO lines as modem status registers */
+               if (devtype->has_mctrl)
+                       sc16is7xx_port_write(&s->p[i].port,
+                                            SC16IS7XX_IOCONTROL_REG,
+                                            SC16IS7XX_IOCONTROL_MODEM_BIT);
                /* Initialize kthread work structs */
                kthread_init_work(&s->p[i].tx_work, sc16is7xx_tx_proc);
                kthread_init_work(&s->p[i].reg_work, sc16is7xx_reg_proc);
+               kthread_init_delayed_work(&s->p[i].ms_work, sc16is7xx_ms_proc);
                /* Register port */
                uart_add_one_port(&sc16is7xx_uart, &s->p[i].port);
  
@@@ -1379,6 -1577,7 +1577,7 @@@ static void sc16is7xx_remove(struct dev
  #endif
  
        for (i = 0; i < s->devtype->nr_uart; i++) {
+               kthread_cancel_delayed_work_sync(&s->p[i].ms_work);
                uart_remove_one_port(&sc16is7xx_uart, &s->p[i].port);
                clear_bit(s->p[i].port.line, &sc16is7xx_lines);
                sc16is7xx_power(&s->p[i].port, 0);
@@@ -1443,9 -1642,11 +1642,9 @@@ static int sc16is7xx_spi_probe(struct s
        return sc16is7xx_probe(&spi->dev, devtype, regmap, spi->irq);
  }
  
 -static int sc16is7xx_spi_remove(struct spi_device *spi)
 +static void sc16is7xx_spi_remove(struct spi_device *spi)
  {
        sc16is7xx_remove(&spi->dev);
 -
 -      return 0;
  }
  
  static const struct spi_device_id sc16is7xx_spi_id_table[] = {