]> Git Repo - linux.git/commitdiff
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
authorLinus Torvalds <[email protected]>
Wed, 18 Sep 2019 19:11:14 +0000 (12:11 -0700)
committerLinus Torvalds <[email protected]>
Wed, 18 Sep 2019 19:11:14 +0000 (12:11 -0700)
Pull crypto updates from Herbert Xu:
 "API:
   - Add the ability to abort a skcipher walk.

  Algorithms:
   - Fix XTS to actually do the stealing.
   - Add library helpers for AES and DES for single-block users.
   - Add library helpers for SHA256.
   - Add new DES key verification helper.
   - Add surrounding bits for ESSIV generator.
   - Add accelerations for aegis128.
   - Add test vectors for lzo-rle.

  Drivers:
   - Add i.MX8MQ support to caam.
   - Add gcm/ccm/cfb/ofb aes support in inside-secure.
   - Add ofb/cfb aes support in media-tek.
   - Add HiSilicon ZIP accelerator support.

  Others:
   - Fix potential race condition in padata.
   - Use unbound workqueues in padata"

* 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (311 commits)
  crypto: caam - Cast to long first before pointer conversion
  crypto: ccree - enable CTS support in AES-XTS
  crypto: inside-secure - Probe transform record cache RAM sizes
  crypto: inside-secure - Base RD fetchcount on actual RD FIFO size
  crypto: inside-secure - Base CD fetchcount on actual CD FIFO size
  crypto: inside-secure - Enable extended algorithms on newer HW
  crypto: inside-secure: Corrected configuration of EIP96_TOKEN_CTRL
  crypto: inside-secure - Add EIP97/EIP197 and endianness detection
  padata: remove cpu_index from the parallel_queue
  padata: unbind parallel jobs from specific CPUs
  padata: use separate workqueues for parallel and serial work
  padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible
  crypto: pcrypt - remove padata cpumask notifier
  padata: make padata_do_parallel find alternate callback CPU
  workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs
  workqueue: unconfine alloc/apply/free_workqueue_attrs()
  padata: allocate workqueue internally
  arm64: dts: imx8mq: Add CAAM node
  random: Use wait_event_freezable() in add_hwgenerator_randomness()
  crypto: ux500 - Fix COMPILE_TEST warnings
  ...

1  2 
MAINTAINERS
arch/arm64/boot/dts/freescale/imx8mq.dtsi
arch/s390/crypto/aes_s390.c
arch/x86/purgatory/Makefile
arch/x86/purgatory/purgatory.c
drivers/char/random.c
drivers/crypto/Kconfig
drivers/crypto/ccp/ccp-dev.c
drivers/crypto/ccp/ccp-ops.c
include/net/net_namespace.h

diff --combined MAINTAINERS
index 6e1b0ac2441b6ad471340737032c8a1efe9f8c28,99e41aba12abc8a79fe9deffa21365f9f953cf0d..05033aa17f29488b15b209da6dd79d348e3d3721
@@@ -183,7 -183,7 +183,7 @@@ M: Realtek linux nic maintainers <nic_s
  M:    Heiner Kallweit <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/net/ethernet/realtek/r8169.c
 +F:    drivers/net/ethernet/realtek/r8169*
  
  8250/16?50 (AND CLONE UARTS) SERIAL DRIVER
  M:    Greg Kroah-Hartman <[email protected]>
@@@ -517,6 -517,14 +517,6 @@@ W:        http://ez.analog.com/community/linux
  S:    Supported
  F:    drivers/video/backlight/adp8860_bl.c
  
 -ADS1015 HARDWARE MONITOR DRIVER
 -M:    Dirk Eibach <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/hwmon/ads1015.rst
 -F:    drivers/hwmon/ads1015.c
 -F:    include/linux/platform_data/ads1015.h
 -
  ADT746X FAN DRIVER
  M:    Colin Leroy <[email protected]>
  S:    Maintained
@@@ -658,7 -666,7 +658,7 @@@ ALI1563 I2C DRIVE
  M:    Rudolf Marek <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/busses/i2c-ali1563
 +F:    Documentation/i2c/busses/i2c-ali1563.rst
  F:    drivers/i2c/busses/i2c-ali1563.c
  
  ALLEGRO DVT VIDEO IP CORE DRIVER
@@@ -668,13 -676,6 +668,13 @@@ L:       [email protected]
  S:    Maintained
  F:    drivers/staging/media/allegro-dvt/
  
 +ALLWINNER CPUFREQ DRIVER
 +M:    Yangtao Li <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/opp/sun50i-nvmem-cpufreq.txt
 +F:    drivers/cpufreq/sun50i-cpufreq-nvmem.c
 +
  ALLWINNER SECURITY SYSTEM
  M:    Corentin Labbe <[email protected]>
  L:    [email protected]
@@@ -682,7 -683,7 +682,7 @@@ S: Maintaine
  F:    drivers/crypto/sunxi-ss/
  
  ALLWINNER VPU DRIVER
 -M:    Maxime Ripard <m[email protected]>
 +M:    Maxime Ripard <m[email protected]>
  M:    Paul Kocialkowski <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -898,16 -899,15 +898,16 @@@ L:      [email protected]
  W:    http://ez.analog.com/community/linux-device-drivers
  S:    Supported
  F:    drivers/iio/adc/ad7124.c
 -F:    Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
 +F:    Documentation/devicetree/bindings/iio/adc/adi,ad7124.yaml
  
  ANALOG DEVICES INC AD7606 DRIVER
  M:    Stefan Popa <[email protected]>
 +M:    Beniamin Bia <[email protected]>
  L:    [email protected]
  W:    http://ez.analog.com/community/linux-device-drivers
  S:    Supported
  F:    drivers/iio/adc/ad7606.c
 -F:    Documentation/devicetree/bindings/iio/adc/adi,ad7606.txt
 +F:    Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
  
  ANALOG DEVICES INC AD7768-1 DRIVER
  M:    Stefan Popa <[email protected]>
@@@ -945,14 -945,6 +945,14 @@@ L:       [email protected]
  F:    include/linux/iio/imu/adis.h
  F:    drivers/iio/imu/adis.c
  
 +ANALOG DEVICES INC ADIS16460 DRIVER
 +M:    Dragos Bogdan <[email protected]>
 +S:    Supported
 +L:    [email protected]
 +W:    http://ez.analog.com/community/linux-device-drivers
 +F:    drivers/iio/imu/adis16460.c
 +F:    Documentation/devicetree/bindings/iio/imu/adi,adis16460.yaml
 +
  ANALOG DEVICES INC ADP5061 DRIVER
  M:    Stefan Popa <[email protected]>
  L:    [email protected]
@@@ -1202,7 -1194,7 +1202,7 @@@ F:      include/uapi/linux/if_arcnet.
  
  ARM ARCHITECTED TIMER DRIVER
  M:    Mark Rutland <[email protected]>
 -M:    Marc Zyngier <ma[email protected]>
 +M:    Marc Zyngier <ma[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/include/asm/arch_timer.h
@@@ -1358,7 -1350,8 +1358,7 @@@ M:      Will Deacon <[email protected]
  R:    Robin Murphy <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 -F:    drivers/iommu/arm-smmu.c
 -F:    drivers/iommu/arm-smmu-v3.c
 +F:    drivers/iommu/arm-smmu*
  F:    drivers/iommu/io-pgtable-arm.c
  F:    drivers/iommu/io-pgtable-arm-v7s.c
  
@@@ -1415,7 -1408,7 +1415,7 @@@ S:      Maintaine
  F:    drivers/clk/sunxi/
  
  ARM/Allwinner sunXi SoC support
 -M:    Maxime Ripard <m[email protected]>
 +M:    Maxime Ripard <m[email protected]>
  M:    Chen-Yu Tsai <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
@@@ -1428,14 -1421,6 +1428,14 @@@ F:    drivers/pinctrl/sunxi
  F:    drivers/soc/sunxi/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git
  
 +Allwinner A10 CSI driver
 +M:    Maxime Ripard <[email protected]>
 +L:    [email protected]
 +T:    git git://linuxtv.org/media_tree.git
 +F:    drivers/media/platform/sunxi/sun4i-csi/
 +F:    Documentation/devicetree/bindings/media/allwinner,sun4i-a10-csi.yaml
 +S:    Maintained
 +
  ARM/Amlogic Meson SoC CLOCK FRAMEWORK
  M:    Neil Armstrong <[email protected]>
  M:    Jerome Brunet <[email protected]>
@@@ -1486,7 -1471,6 +1486,7 @@@ F:      arch/arm/mach-artpe
  F:    arch/arm/boot/dts/artpec6*
  F:    drivers/clk/axis
  F:    drivers/crypto/axis
 +F:    drivers/mmc/host/usdhi6rol0.c
  F:    drivers/pinctrl/pinctrl-artpec*
  F:    Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt
  
@@@ -1598,8 -1582,8 +1598,8 @@@ R:      Suzuki K Poulose <suzuki.poulose@arm
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    drivers/hwtracing/coresight/*
 -F:    Documentation/trace/coresight.txt
 -F:    Documentation/trace/coresight-cpu-debug.txt
 +F:    Documentation/trace/coresight.rst
 +F:    Documentation/trace/coresight-cpu-debug.rst
  F:    Documentation/devicetree/bindings/arm/coresight.txt
  F:    Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt
  F:    Documentation/ABI/testing/sysfs-bus-coresight-devices-*
@@@ -1642,21 -1626,6 +1642,21 @@@ F:    drivers/clocksource/timer-atlas7.
  N:    [^a-z]sirf
  X:    drivers/gnss
  
 +ARM/CZ.NIC TURRIS MOX SUPPORT
 +M:    Marek Behun <[email protected]>
 +W:    http://mox.turris.cz
 +S:    Maintained
 +F:    Documentation/ABI/testing/debugfs-moxtet
 +F:    Documentation/ABI/testing/sysfs-bus-moxtet-devices
 +F:    Documentation/ABI/testing/sysfs-firmware-turris-mox-rwtm
 +F:    Documentation/devicetree/bindings/bus/moxtet.txt
 +F:    Documentation/devicetree/bindings/firmware/cznic,turris-mox-rwtm.txt
 +F:    Documentation/devicetree/bindings/gpio/gpio-moxtet.txt
 +F:    include/linux/moxtet.h
 +F:    drivers/bus/moxtet.c
 +F:    drivers/firmware/turris-mox-rwtm.c
 +F:    drivers/gpio/gpio-moxtet.c
 +
  ARM/EBSA110 MACHINE SUPPORT
  M:    Russell King <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    arch/arm/mach-pxa/colibri-pxa270-income.c
  
 -ARM/INTEL IOP13XX ARM ARCHITECTURE
 -M:    Lennert Buytenhek <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Maintained
 -
  ARM/INTEL IOP32X ARM ARCHITECTURE
  M:    Lennert Buytenhek <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  
 -ARM/INTEL IOP33X ARM ARCHITECTURE
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Orphan
 -
  ARM/INTEL IQ81342EX MACHINE SUPPORT
  M:    Lennert Buytenhek <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -1943,6 -1921,12 +1943,6 @@@ S:     Maintaine
  F:    drivers/phy/mediatek/
  F:    Documentation/devicetree/bindings/phy/phy-mtk-*
  
 -ARM/MICREL KS8695 ARCHITECTURE
 -M:    Greg Ungerer <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -F:    arch/arm/mach-ks8695/
 -S:    Odd Fixes
 -
  ARM/Microchip (AT91) SoC support
  M:    Nicolas Ferre <[email protected]>
  M:    Alexandre Belloni <[email protected]>
@@@ -1984,7 -1968,6 +1984,7 @@@ F:      Documentation/devicetree/bindings/i2
  F:    arch/arm/mach-nomadik/
  F:    arch/arm/mach-u300/
  F:    arch/arm/mach-ux500/
 +F:    drivers/soc/ux500/
  F:    arch/arm/boot/dts/ste-*
  F:    drivers/clk/clk-nomadik.c
  F:    drivers/clk/clk-u300.c
@@@ -2028,6 -2011,22 +2028,6 @@@ F:     drivers/*/*npcm
  F:    Documentation/devicetree/bindings/*/*npcm*
  F:    Documentation/devicetree/bindings/*/*/*npcm*
  
 -ARM/NUVOTON W90X900 ARM ARCHITECTURE
 -M:    Wan ZongShun <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -W:    http://www.mcuos.com
 -S:    Maintained
 -F:    arch/arm/mach-w90x900/
 -F:    drivers/input/keyboard/w90p910_keypad.c
 -F:    drivers/input/touchscreen/w90p910_ts.c
 -F:    drivers/watchdog/nuc900_wdt.c
 -F:    drivers/net/ethernet/nuvoton/w90p910_ether.c
 -F:    drivers/mtd/nand/raw/nuc900_nand.c
 -F:    drivers/rtc/rtc-nuc900.c
 -F:    drivers/spi/spi-nuc900.c
 -F:    drivers/usb/host/ehci-w90x900.c
 -F:    drivers/video/fbdev/nuc900fb.c
 -
  ARM/OPENMOKO NEO FREERUNNER (GTA02) MACHINE SUPPORT
  L:    [email protected] (subscribers-only)
  W:    http://wiki.openmoko.org/wiki/Neo_FreeRunner
@@@ -2156,12 -2155,10 +2156,12 @@@ F:   Documentation/devicetree/bindings/ar
  
  ARM/RENESAS ARM64 ARCHITECTURE
  M:    Simon Horman <[email protected]>
 +M:    Geert Uytterhoeven <[email protected]>
  M:    Magnus Damm <[email protected]>
  L:    [email protected]
  Q:    http://patchwork.kernel.org/project/linux-renesas-soc/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git next
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel.git next
  S:    Supported
  F:    arch/arm64/boot/dts/renesas/
  F:    Documentation/devicetree/bindings/arm/renesas.yaml
@@@ -2220,9 -2217,8 +2220,9 @@@ F:      drivers/*/*s3c24
  F:    drivers/*/*/*s3c24*
  F:    drivers/*/*s3c64xx*
  F:    drivers/*/*s5pv210*
 -F:    drivers/memory/samsung/*
 -F:    drivers/soc/samsung/*
 +F:    drivers/memory/samsung/
 +F:    drivers/soc/samsung/
 +F:    include/linux/soc/samsung/
  F:    Documentation/arm/samsung/
  F:    Documentation/devicetree/bindings/arm/samsung/
  F:    Documentation/devicetree/bindings/sram/samsung-sram.txt
@@@ -2273,12 -2269,10 +2273,12 @@@ F:   drivers/media/platform/s5p-mfc
  
  ARM/SHMOBILE ARM ARCHITECTURE
  M:    Simon Horman <[email protected]>
 +M:    Geert Uytterhoeven <[email protected]>
  M:    Magnus Damm <[email protected]>
  L:    [email protected]
  Q:    http://patchwork.kernel.org/project/linux-renesas-soc/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git next
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel.git next
  S:    Supported
  F:    arch/arm/boot/dts/emev2*
  F:    arch/arm/boot/dts/gr-peach*
@@@ -3579,7 -3573,7 +3579,7 @@@ F:      Documentation/filesystems/caching/ca
  F:    fs/cachefiles/
  
  CADENCE MIPI-CSI2 BRIDGES
 -M:    Maxime Ripard <m[email protected]>
 +M:    Maxime Ripard <m[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/media/cdns,*.txt
@@@ -3806,9 -3800,14 +3806,9 @@@ F:     scripts/sign-file.
  F:    scripts/extract-cert.c
  
  CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
 -L:    [email protected]
 -S:    Orphan
 -F:    Documentation/usb/wusb-design-overview.rst
 -F:    Documentation/usb/wusb-cbaf
 -F:    drivers/usb/host/hwa-hc.c
 -F:    drivers/usb/host/whci/
 -F:    drivers/usb/wusbcore/
 -F:    include/linux/usb/wusb*
 +L:    [email protected]
 +S:    Obsolete
 +F:    drivers/staging/wusbcore/
  
  CFAG12864B LCD DRIVER
  M:    Miguel Ojeda Sandonis <[email protected]>
@@@ -4100,7 -4099,7 +4100,7 @@@ L:      [email protected] (mod
  W:    http://linux-cifs.samba.org/
  T:    git git://git.samba.org/sfrench/cifs-2.6.git
  S:    Supported
 -F:    Documentation/filesystems/cifs/
 +F:    Documentation/admin-guide/cifs/
  F:    fs/cifs/
  
  COMPACTPCI HOTPLUG CORE
@@@ -4191,7 -4190,7 +4191,7 @@@ M:      Jens Axboe <[email protected]
  L:    [email protected]
  L:    [email protected]
  T:    git git://git.kernel.dk/linux-block
 -F:    Documentation/cgroup-v1/blkio-controller.rst
 +F:    Documentation/admin-guide/cgroup-v1/blkio-controller.rst
  F:    block/blk-cgroup.c
  F:    include/linux/blk-cgroup.h
  F:    block/blk-throttle.c
@@@ -4287,14 -4286,6 +4287,14 @@@ S:    Supporte
  F:    drivers/cpuidle/cpuidle-exynos.c
  F:    arch/arm/mach-exynos/pm.c
  
 +CPUIDLE DRIVER - ARM PSCI
 +M:    Lorenzo Pieralisi <[email protected]>
 +M:    Sudeep Holla <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/cpuidle/cpuidle-psci.c
 +
  CPU IDLE TIME MANAGEMENT FRAMEWORK
  M:    "Rafael J. Wysocki" <[email protected]>
  M:    Daniel Lezcano <[email protected]>
@@@ -4478,7 -4469,7 +4478,7 @@@ F:      arch/powerpc/platforms/powernv/pci-c
  F:    drivers/misc/cxl/
  F:    include/misc/cxl*
  F:    include/uapi/misc/cxl.h
 -F:    Documentation/powerpc/cxl.txt
 +F:    Documentation/powerpc/cxl.rst
  F:    Documentation/ABI/testing/sysfs-class-cxl
  
  CXLFLASH (IBM Coherent Accelerator Processor Interface CAPI Flash) SCSI DRIVER
@@@ -4489,7 -4480,7 +4489,7 @@@ L:      [email protected]
  S:    Supported
  F:    drivers/scsi/cxlflash/
  F:    include/uapi/scsi/cxlflash_ioctl.h
 -F:    Documentation/powerpc/cxlflash.txt
 +F:    Documentation/powerpc/cxlflash.rst
  
  CYBERPRO FB DRIVER
  M:    Russell King <[email protected]>
@@@ -4956,9 -4947,7 +4956,9 @@@ M:      Jonathan Corbet <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/
 +F:    scripts/documentation-file-ref-check
  F:    scripts/kernel-doc
 +F:    scripts/sphinx-pre-install
  X:    Documentation/ABI/
  X:    Documentation/firmware-guide/acpi/
  X:    Documentation/devicetree/
  S:    Maintained
  F:    Documentation/translations/it_IT
  
 +DOCUMENTATION SCRIPTS
 +M:    Mauro Carvalho Chehab <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    scripts/documentation-file-ref-check
 +F:    scripts/sphinx-pre-install
 +F:    Documentation/sphinx/parse-headers.pl
 +
  DONGWOON DW9714 LENS VOICE COIL DRIVER
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
@@@ -5310,7 -5291,7 +5310,7 @@@ F:      include/linux/vga
  
  DRM DRIVERS AND MISC GPU PATCHES
  M:    Maarten Lankhorst <[email protected]>
 -M:    Maxime Ripard <m[email protected]>
 +M:    Maxime Ripard <m[email protected]>
  M:    Sean Paul <[email protected]>
  W:    https://01.org/linuxgraphics/gfx-docs/maintainer-tools/drm-misc.html
  S:    Maintained
@@@ -5323,7 -5304,7 +5323,7 @@@ F:      include/uapi/drm/drm
  F:    include/linux/vga*
  
  DRM DRIVERS FOR ALLWINNER A10
 -M:    Maxime Ripard  <[email protected]>
 +M:    Maxime Ripard <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    drivers/gpu/drm/sun4i/
@@@ -5776,11 -5757,6 +5776,11 @@@ S:    Supporte
  F:    drivers/edac/aspeed_edac.c
  F:    Documentation/devicetree/bindings/edac/aspeed-sdram-edac.txt
  
 +EDAC-BLUEFIELD
 +M:    Shravan Kumar Ramani <[email protected]>
 +S:    Supported
 +F:    drivers/edac/bluefield_edac.c
 +
  EDAC-CALXEDA
  M:    Robert Richter <[email protected]>
  L:    [email protected]
@@@ -5805,11 -5781,10 +5805,11 @@@ F:   drivers/edac/thunderx_edac
  EDAC-CORE
  M:    Borislav Petkov <[email protected]>
  M:    Mauro Carvalho Chehab <[email protected]>
 +M:    Tony Luck <[email protected]>
  R:    James Morse <[email protected]>
 +R:    Robert Richter <[email protected]>
  L:    [email protected]
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp.git for-next
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac.git linux_next
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras.git edac-for-next
  S:    Supported
  F:    Documentation/admin-guide/ras.rst
  F:    Documentation/driver-api/edac.rst
@@@ -6059,13 -6034,6 +6059,13 @@@ T:    git git://git.kernel.org/pub/scm/lin
  F:    drivers/video/fbdev/s1d13xxxfb.c
  F:    include/video/s1d13xxxfb.h
  
 +EROFS FILE SYSTEM
 +M:    Gao Xiang <[email protected]>
 +M:    Chao Yu <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    fs/erofs/
 +
  ERRSEQ ERROR TRACKING INFRASTRUCTURE
  M:    Jeff Layton <[email protected]>
  S:    Maintained
@@@ -6093,7 -6061,7 +6093,7 @@@ M:      Florian Fainelli <[email protected]
  M:    Heiner Kallweit <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/ABI/testing/sysfs-bus-mdio
 +F:    Documentation/ABI/testing/sysfs-class-net-phydev
  F:    Documentation/devicetree/bindings/net/ethernet-phy.yaml
  F:    Documentation/devicetree/bindings/net/mdio*
  F:    Documentation/networking/phy.rst
@@@ -6110,11 -6078,6 +6110,11 @@@ F:    include/trace/events/mdio.
  F:    include/uapi/linux/mdio.h
  F:    include/uapi/linux/mii.h
  
 +EXFAT FILE SYSTEM
 +M:    Valdis Kletnieks <[email protected]>
 +S:    Maintained
 +F:    drivers/staging/exfat/
 +
  EXT2 FILE SYSTEM
  M:    Jan Kara <[email protected]>
  L:    [email protected]
@@@ -6301,14 -6264,12 +6301,14 @@@ S:   Maintaine
  F:    drivers/hwmon/f75375s.c
  F:    include/linux/f75375s.h
  
 -FIREWIRE AUDIO DRIVERS
 +FIREWIRE AUDIO DRIVERS and IEC 61883-1/6 PACKET STREAMING ENGINE
  M:    Clemens Ladisch <[email protected]>
 +M:    Takashi Sakamoto <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
  S:    Maintained
  F:    sound/firewire/
 +F:    include/uapi/sound/firewire.h
  
  FIREWIRE MEDIA DRIVERS (firedtv)
  M:    Stefan Richter <[email protected]>
@@@ -6356,21 -6317,29 +6356,21 @@@ FLEXTIMER FTM-QUADDEC DRIVE
  M:    Patrick Havelange <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/ABI/testing/sysfs-bus-counter-ftm-quadddec
 +F:    Documentation/ABI/testing/sysfs-bus-counter-ftm-quaddec
  F:    Documentation/devicetree/bindings/counter/ftm-quaddec.txt
  F:    drivers/counter/ftm-quaddec.c
  
  FLOPPY DRIVER
 -S:    Orphan
 +M:    Denis Efremov <[email protected]>
 +S:    Odd Fixes
  L:    [email protected]
  F:    drivers/block/floppy.c
  
 -FMC SUBSYSTEM
 -M:    Alessandro Rubini <[email protected]>
 -W:    http://www.ohwr.org/projects/fmc-bus
 -S:    Supported
 -F:    drivers/fmc/
 -F:    include/linux/fmc*.h
 -F:    include/linux/ipmi-fru.h
 -K:    fmc_d.*register
 -
  FPGA MANAGER FRAMEWORK
  M:    Moritz Fischer <[email protected]>
  L:    [email protected]
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/atull/linux-fpga.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mdf/linux-fpga.git
  Q:    http://patchwork.kernel.org/project/linux-fpga/list/
  F:    Documentation/fpga/
  F:    Documentation/driver-api/fpga/
@@@ -6403,7 -6372,7 +6403,7 @@@ FRAMEBUFFER LAYE
  M:    Bartlomiej Zolnierkiewicz <[email protected]>
  L:    [email protected]
  L:    [email protected]
 -T:    git git://github.com/bzolnier/linux.git
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
  Q:    http://patchwork.kernel.org/project/linux-fbdev/list/
  S:    Maintained
  F:    Documentation/fb/
@@@ -6465,17 -6434,8 +6465,17 @@@ M:    Frank Li <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/perf/fsl_imx8_ddr_perf.c
 +F:    Documentation/admin-guide/perf/imx-ddr.rst
  F:    Documentation/devicetree/bindings/perf/fsl-imx-ddr.txt
  
 +FREESCALE IMX I2C DRIVER
 +M:    Oleksij Rempel <[email protected]>
 +R:    Pengutronix Kernel Team <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/i2c/busses/i2c-imx.c
 +F:    Documentation/devicetree/bindings/i2c/i2c-imx.txt
 +
  FREESCALE IMX LPI2C DRIVER
  M:    Dong Aisheng <[email protected]>
  L:    [email protected]
@@@ -6759,13 -6719,6 +6759,13 @@@ W:    https://linuxtv.or
  S:    Maintained
  F:    drivers/media/radio/radio-gemtek*
  
 +GENERIC ARCHITECTURE TOPOLOGY
 +M:    Sudeep Holla <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/base/arch_topology.c
 +F:    include/linux/arch_topology.h
 +
  GENERIC GPIO I2C DRIVER
  M:    Wolfram Sang <[email protected]>
  S:    Supported
@@@ -6778,7 -6731,7 +6778,7 @@@ L:      [email protected]
  S:    Supported
  F:    drivers/i2c/muxes/i2c-mux-gpio.c
  F:    include/linux/platform_data/i2c-mux-gpio.h
 -F:    Documentation/i2c/muxes/i2c-mux-gpio
 +F:    Documentation/i2c/muxes/i2c-mux-gpio.rst
  
  GENERIC HDLC (WAN) DRIVERS
  M:    Krzysztof Halasa <[email protected]>
@@@ -6869,6 -6822,13 +6869,6 @@@ F:     Documentation/filesystems/gfs2*.tx
  F:    fs/gfs2/
  F:    include/uapi/linux/gfs2_ondisk.h
  
 -GIGASET ISDN DRIVERS
 -M:    Paul Bolle <[email protected]>
 -L:    [email protected]
 -W:    http://gigaset307x.sourceforge.net/
 -S:    Odd Fixes
 -F:    drivers/staging/isdn/gigaset/
 -
  GNSS SUBSYSTEM
  M:    Johan Hovold <[email protected]>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/johan/gnss.git
@@@ -6896,7 -6856,7 +6896,7 @@@ R:      Sagi Shahar <[email protected]
  R:    Jon Olson <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    Documentation/networking/device_drivers/google/gve.txt
 +F:    Documentation/networking/device_drivers/google/gve.rst
  F:    drivers/net/ethernet/google
  
  GPD POCKET FAN DRIVER
@@@ -7022,9 -6982,6 +7022,9 @@@ M:      Alex Elder <[email protected]
  M:    Greg Kroah-Hartman <[email protected]>
  S:    Maintained
  F:    drivers/staging/greybus/
 +F:    drivers/greybus/
 +F:    include/linux/greybus.h
 +F:    include/linux/greybus/
  L:    [email protected] (moderated for non-subscribers)
  
  GREYBUS UART PROTOCOLS DRIVERS
@@@ -7350,6 -7307,17 +7350,17 @@@ S:    Supporte
  F:    drivers/scsi/hisi_sas/
  F:    Documentation/devicetree/bindings/scsi/hisilicon-sas.txt
  
+ HISILICON QM AND ZIP Controller DRIVER
+ M:    Zhou Wang <[email protected]>
+ L:    [email protected]
+ S:    Maintained
+ F:    drivers/crypto/hisilicon/qm.c
+ F:    drivers/crypto/hisilicon/qm.h
+ F:    drivers/crypto/hisilicon/sgl.c
+ F:    drivers/crypto/hisilicon/sgl.h
+ F:    drivers/crypto/hisilicon/zip/
+ F:    Documentation/ABI/testing/debugfs-hisi-zip
  HMM - Heterogeneous Memory Management
  M:    Jérôme Glisse <[email protected]>
  L:    [email protected]
@@@ -7497,7 -7465,7 +7508,7 @@@ F:      drivers/net/hyperv
  F:    drivers/scsi/storvsc_drv.c
  F:    drivers/uio/uio_hv_generic.c
  F:    drivers/video/fbdev/hyperv_fb.c
 -F:    drivers/iommu/hyperv_iommu.c
 +F:    drivers/iommu/hyperv-iommu.c
  F:    net/vmw_vsock/hyperv_transport.c
  F:    include/clocksource/hyperv_timer.h
  F:    include/linux/hyperv.h
@@@ -7530,14 -7498,14 +7541,14 @@@ I2C CONTROLLER DRIVER FOR NVIDIA GP
  M:    Ajay Gupta <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/busses/i2c-nvidia-gpu
 +F:    Documentation/i2c/busses/i2c-nvidia-gpu.rst
  F:    drivers/i2c/busses/i2c-nvidia-gpu.c
  
  I2C MUXES
  M:    Peter Rosin <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/i2c-topology
 +F:    Documentation/i2c/i2c-topology.rst
  F:    Documentation/i2c/muxes/
  F:    Documentation/devicetree/bindings/i2c/i2c-mux*
  F:    Documentation/devicetree/bindings/i2c/i2c-arb*
@@@ -7550,15 -7518,15 +7561,15 @@@ I2C MV64XXX MARVELL AND ALLWINNER DRIVE
  M:    Gregory CLEMENT <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
 +F:    Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml
  F:    drivers/i2c/busses/i2c-mv64xxx.c
  
  I2C OVER PARALLEL PORT
  M:    Jean Delvare <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/busses/i2c-parport
 -F:    Documentation/i2c/busses/i2c-parport-light
 +F:    Documentation/i2c/busses/i2c-parport.rst
 +F:    Documentation/i2c/busses/i2c-parport-light.rst
  F:    drivers/i2c/busses/i2c-parport.c
  F:    drivers/i2c/busses/i2c-parport-light.c
  
@@@ -7592,7 -7560,7 +7603,7 @@@ I2C-TAOS-EVM DRIVE
  M:    Jean Delvare <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/busses/i2c-taos-evm
 +F:    Documentation/i2c/busses/i2c-taos-evm.rst
  F:    drivers/i2c/busses/i2c-taos-evm.c
  
  I2C-TINY-USB DRIVER
@@@ -7606,19 -7574,19 +7617,19 @@@ I2C/SMBUS CONTROLLER DRIVERS FOR P
  M:    Jean Delvare <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/i2c/busses/i2c-ali1535
 -F:    Documentation/i2c/busses/i2c-ali1563
 -F:    Documentation/i2c/busses/i2c-ali15x3
 -F:    Documentation/i2c/busses/i2c-amd756
 -F:    Documentation/i2c/busses/i2c-amd8111
 -F:    Documentation/i2c/busses/i2c-i801
 -F:    Documentation/i2c/busses/i2c-nforce2
 -F:    Documentation/i2c/busses/i2c-piix4
 -F:    Documentation/i2c/busses/i2c-sis5595
 -F:    Documentation/i2c/busses/i2c-sis630
 -F:    Documentation/i2c/busses/i2c-sis96x
 -F:    Documentation/i2c/busses/i2c-via
 -F:    Documentation/i2c/busses/i2c-viapro
 +F:    Documentation/i2c/busses/i2c-ali1535.rst
 +F:    Documentation/i2c/busses/i2c-ali1563.rst
 +F:    Documentation/i2c/busses/i2c-ali15x3.rst
 +F:    Documentation/i2c/busses/i2c-amd756.rst
 +F:    Documentation/i2c/busses/i2c-amd8111.rst
 +F:    Documentation/i2c/busses/i2c-i801.rst
 +F:    Documentation/i2c/busses/i2c-nforce2.rst
 +F:    Documentation/i2c/busses/i2c-piix4.rst
 +F:    Documentation/i2c/busses/i2c-sis5595.rst
 +F:    Documentation/i2c/busses/i2c-sis630.rst
 +F:    Documentation/i2c/busses/i2c-sis96x.rst
 +F:    Documentation/i2c/busses/i2c-via.rst
 +F:    Documentation/i2c/busses/i2c-viapro.rst
  F:    drivers/i2c/busses/i2c-ali1535.c
  F:    drivers/i2c/busses/i2c-ali1563.c
  F:    drivers/i2c/busses/i2c-ali15x3.c
@@@ -7647,7 -7615,7 +7658,7 @@@ M:      Seth Heasley <[email protected]
  M:    Neil Horman <[email protected]>
  L:    [email protected]
  F:    drivers/i2c/busses/i2c-ismt.c
 -F:    Documentation/i2c/busses/i2c-ismt
 +F:    Documentation/i2c/busses/i2c-ismt.rst
  
  I2C/SMBUS STUB DRIVER
  M:    Jean Delvare <[email protected]>
@@@ -7703,7 -7671,7 +7714,7 @@@ F:      drivers/crypto/nx/nx-aes
  F:    drivers/crypto/nx/nx-sha*
  F:    drivers/crypto/nx/nx.*
  F:    drivers/crypto/nx/nx_csbcpb.h
- F:    drivers/crypto/nx/nx_debugfs.h
+ F:    drivers/crypto/nx/nx_debugfs.c
  
  IBM Power Linux RAID adapter
  M:    Brian King <[email protected]>
@@@ -8087,7 -8055,6 +8098,7 @@@ S:      Maintaine
  F:    drivers/video/fbdev/i810/
  
  INTEL ASoC DRIVERS
 +M:    Cezary Rojewski <[email protected]>
  M:    Pierre-Louis Bossart <[email protected]>
  M:    Liam Girdwood <[email protected]>
  M:    Jie Yang <[email protected]>
@@@ -8109,13 -8076,6 +8120,13 @@@ T:    git git://git.code.sf.net/p/intel-sa
  S:    Supported
  F:    drivers/scsi/isci/
  
 +INTEL CPU family model numbers
 +M:    Tony Luck <[email protected]>
 +M:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    arch/x86/include/asm/intel-family.h
 +
  INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets)
  M:    Jani Nikula <[email protected]>
  M:    Joonas Lahtinen <[email protected]>
@@@ -8360,17 -8320,6 +8371,17 @@@ F:    drivers/platform/x86/intel_speed_sel
  F:    tools/power/x86/intel-speed-select/
  F:    include/uapi/linux/isst_if.h
  
 +INTEL STRATIX10 FIRMWARE DRIVERS
 +M:    Richard Gong <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/firmware/stratix10-rsu.c
 +F:    drivers/firmware/stratix10-svc.c
 +F:    include/linux/firmware/intel/stratix10-smc.h
 +F:    include/linux/firmware/intel/stratix10-svc-client.h
 +F:    Documentation/ABI/testing/sysfs-devices-platform-stratix10-rsu
 +F:    Documentation/devicetree/bindings/firmware/intel,stratix10-svc.txt
 +
  INTEL TELEMETRY DRIVER
  M:    Rajneesh Bhardwaj <[email protected]>
  M:    "David E. Box" <[email protected]>
@@@ -8408,7 -8357,7 +8419,7 @@@ M:      [email protected]
  L:    [email protected] (subscribers-only)
  S:    Supported
  W:    http://linuxwimax.org
 -F:    Documentation/wimax/README.i2400m
 +F:    Documentation/admin-guide/wimax/i2400m.rst
  F:    drivers/net/wimax/i2400m/
  F:    include/uapi/linux/wimax/i2400m.h
  
@@@ -8422,7 -8371,6 +8433,7 @@@ M:      Alexander Shishkin <alexander.shishk
  S:    Supported
  F:    Documentation/trace/intel_th.rst
  F:    drivers/hwtracing/intel_th/
 +F:    include/linux/intel_th.h
  
  INTEL(R) TRUSTED EXECUTION TECHNOLOGY (TXT)
  M:    Ning Sun <[email protected]>
@@@ -8434,6 -8382,12 +8445,6 @@@ F:     Documentation/x86/intel_txt.rs
  F:    include/linux/tboot.h
  F:    arch/x86/kernel/tboot.c
  
 -INTEL-MID GPIO DRIVER
 -M:    David Cohen <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    drivers/gpio/gpio-intel-mid.c
 -
  INTERCONNECT API
  M:    Georgi Djakov <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/net/ethernet/sgi/ioc3-eth.c
  
 -IOC3 SERIAL DRIVER
 -M:    Pat Gefre <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    drivers/tty/serial/ioc3_serial.c
 -
  IOMAP FILESYSTEM LIBRARY
  M:    Christoph Hellwig <[email protected]>
  M:    Darrick J. Wong <[email protected]>
@@@ -8467,6 -8427,7 +8478,6 @@@ L:      [email protected]
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git
  S:    Supported
 -F:    fs/iomap.c
  F:    fs/iomap/
  F:    include/linux/iomap.h
  
@@@ -8491,6 -8452,11 +8502,6 @@@ S:     Maintaine
  F:    fs/io_uring.c
  F:    include/uapi/linux/io_uring.h
  
 -IP MASQUERADING
 -M:    Juanjo Ciarlante <[email protected]>
 -S:    Maintained
 -F:    net/ipv4/netfilter/ipt_MASQUERADE.c
 -
  IPMI SUBSYSTEM
  M:    Corey Minyard <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -8535,7 -8501,7 +8546,7 @@@ S:      Obsolet
  F:    include/uapi/linux/ipx.h
  
  IRQ DOMAINS (IRQ NUMBER MAPPING LIBRARY)
 -M:    Marc Zyngier <ma[email protected]>
 +M:    Marc Zyngier <ma[email protected]>
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
  F:    Documentation/IRQ-domain.txt
@@@ -8553,7 -8519,7 +8564,7 @@@ F:      kernel/irq
  IRQCHIP DRIVERS
  M:    Thomas Gleixner <[email protected]>
  M:    Jason Cooper <[email protected]>
 -M:    Marc Zyngier <ma[email protected]>
 +M:    Marc Zyngier <ma[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
@@@ -8694,7 -8660,7 +8705,7 @@@ L:      [email protected]
  W:    http://jfs.sourceforge.net/
  T:    git git://github.com/kleikamp/linux-shaggy.git
  S:    Maintained
 -F:    Documentation/filesystems/jfs.txt
 +F:    Documentation/admin-guide/jfs.rst
  F:    fs/jfs/
  
  JME NETWORK DRIVER
@@@ -8853,7 -8819,7 +8864,7 @@@ L:      [email protected]
  W:    http://www.linux-kvm.org
  T:    git git://git.kernel.org/pub/scm/virt/kvm/kvm.git
  S:    Supported
 -F:    Documentation/virtual/kvm/
 +F:    Documentation/virt/kvm/
  F:    include/trace/events/kvm.h
  F:    include/uapi/asm-generic/kvm*
  F:    include/uapi/linux/kvm*
@@@ -8864,11 -8830,19 +8875,11 @@@ F:   virt/kvm/
  F:    tools/kvm/
  F:    tools/testing/selftests/kvm/
  
 -KERNEL VIRTUAL MACHINE FOR AMD-V (KVM/amd)
 -M:    Joerg Roedel <[email protected]>
 -L:    [email protected]
 -W:    http://www.linux-kvm.org/
 -S:    Maintained
 -F:    arch/x86/include/asm/svm.h
 -F:    arch/x86/kvm/svm.c
 -
  KERNEL VIRTUAL MACHINE FOR ARM/ARM64 (KVM/arm, KVM/arm64)
 -M:    Marc Zyngier <ma[email protected]>
 +M:    Marc Zyngier <ma[email protected]>
  R:    James Morse <[email protected]>
 -R:    Julien Thierry <julien.thierry@arm.com>
 -R:    Suzuki K Pouloze <[email protected]>
 +R:    Julien Thierry <julien.thierry.kdev@gmail.com>
 +R:    Suzuki K Poulose <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git
@@@ -8906,7 -8880,7 +8917,7 @@@ M:      Christian Borntraeger <borntraeger@d
  M:    Janosch Frank <[email protected]>
  R:    David Hildenbrand <[email protected]>
  R:    Cornelia Huck <[email protected]>
 -L:    linux-s390@vger.kernel.org
 +L:    kvm@vger.kernel.org
  W:    http://www.ibm.com/developerworks/linux/linux390/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux.git
  S:    Supported
@@@ -8921,11 -8895,6 +8932,11 @@@ F:    tools/testing/selftests/kvm/*/s390x
  KERNEL VIRTUAL MACHINE FOR X86 (KVM/x86)
  M:    Paolo Bonzini <[email protected]>
  M:    Radim Krčmář <[email protected]>
 +R:    Sean Christopherson <[email protected]>
 +R:    Vitaly Kuznetsov <[email protected]>
 +R:    Wanpeng Li <[email protected]>
 +R:    Jim Mattson <[email protected]>
 +R:    Joerg Roedel <[email protected]>
  L:    [email protected]
  W:    http://www.linux-kvm.org
  T:    git git://git.kernel.org/pub/scm/virt/kvm/kvm.git
@@@ -8933,12 -8902,8 +8944,12 @@@ S:    Supporte
  F:    arch/x86/kvm/
  F:    arch/x86/kvm/*/
  F:    arch/x86/include/uapi/asm/kvm*
 +F:    arch/x86/include/uapi/asm/vmx.h
 +F:    arch/x86/include/uapi/asm/svm.h
  F:    arch/x86/include/asm/kvm*
  F:    arch/x86/include/asm/pvclock-abi.h
 +F:    arch/x86/include/asm/svm.h
 +F:    arch/x86/include/asm/vmx.h
  F:    arch/x86/kernel/kvm.c
  F:    arch/x86/kernel/kvmclock.c
  
@@@ -8970,7 -8935,7 +8981,7 @@@ F:      security/keys/encrypted-keys
  
  KEYS-TRUSTED
  M:    James Bottomley <[email protected]>
 -M:      Jarkko Sakkinen <[email protected]>
 +M:    Jarkko Sakkinen <[email protected]>
  M:    Mimi Zohar <[email protected]>
  L:    [email protected]
  L:    [email protected]
@@@ -9037,7 -9002,7 +9048,7 @@@ F:      kernel/kprobes.
  KS0108 LCD CONTROLLER DRIVER
  M:    Miguel Ojeda Sandonis <[email protected]>
  S:    Maintained
 -F:    Documentation/auxdisplay/ks0108
 +F:    Documentation/admin-guide/auxdisplay/ks0108.rst
  F:    drivers/auxdisplay/ks0108.c
  F:    include/linux/ks0108.h
  
@@@ -9266,18 -9231,6 +9277,18 @@@ F:    include/linux/nd.
  F:    include/linux/libnvdimm.h
  F:    include/uapi/linux/ndctl.h
  
 +LICENSES and SPDX stuff
 +M:    Thomas Gleixner <[email protected]>
 +M:    Greg Kroah-Hartman <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/spdx.git
 +F:    COPYING
 +F:    Documentation/process/license-rules.rst
 +F:    LICENSES/
 +F:    scripts/spdxcheck-test.sh
 +F:    scripts/spdxcheck.py
 +
  LIGHTNVM PLATFORM SUPPORT
  M:    Matias Bjorling <[email protected]>
  W:    http://github/OpenChannelSSD
@@@ -9384,7 -9337,7 +9395,7 @@@ F:      drivers/misc/lkdtm/
  
  LINUX KERNEL MEMORY CONSISTENCY MODEL (LKMM)
  M:    Alan Stern <[email protected]>
 -M:    Andrea Parri <andrea.parri@amarulasolutions.com>
 +M:    Andrea Parri <parri.andrea@gmail.com>
  M:    Will Deacon <[email protected]>
  M:    Peter Zijlstra <[email protected]>
  M:    Boqun Feng <[email protected]>
@@@ -9392,7 -9345,7 +9403,7 @@@ M:      Nicholas Piggin <[email protected]
  M:    David Howells <[email protected]>
  M:    Jade Alglave <[email protected]>
  M:    Luc Maranget <[email protected]>
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  R:    Akira Yokosawa <[email protected]>
  R:    Daniel Lustig <[email protected]>
  L:    [email protected]
@@@ -9626,7 -9579,7 +9637,7 @@@ F:      Documentation/networking/mac80211-in
  F:    include/net/mac80211.h
  F:    net/mac80211/
  F:    drivers/net/wireless/mac80211_hwsim.[ch]
 -F:    Documentation/networking/mac80211_hwsim/README
 +F:    Documentation/networking/mac80211_hwsim/mac80211_hwsim.rst
  
  MAILBOX API
  M:    Jassi Brar <[email protected]>
  L:    [email protected]
  T:    git git://linuxtv.org/media_tree.git
  S:    Supported
 -F:    Documentation/devicetree/bindings/media/renesas,rcar-csi2.txt
 -F:    Documentation/devicetree/bindings/media/rcar_vin.txt
 +F:    Documentation/devicetree/bindings/media/renesas,csi2.txt
 +F:    Documentation/devicetree/bindings/media/renesas,vin.txt
  F:    drivers/media/platform/rcar-vin/
  
  MEDIA DRIVERS FOR RENESAS - VSP1
  S:    Supported
  F:    drivers/i2c/busses/i2c-mlxcpld.c
  F:    drivers/i2c/muxes/i2c-mux-mlxcpld.c
 -F:    Documentation/i2c/busses/i2c-mlxcpld
 +F:    Documentation/i2c/busses/i2c-mlxcpld.rst
  
  MELLANOX MLXCPLD LED DRIVER
  M:    Vadim Pasternak <[email protected]>
@@@ -10421,7 -10374,7 +10432,7 @@@ F:   drivers/platform/x86/mlx-platform.
  
  MEMBARRIER SUPPORT
  M:    Mathieu Desnoyers <[email protected]>
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  L:    [email protected]
  S:    Supported
  F:    kernel/sched/membarrier.c
@@@ -10673,6 -10626,12 +10684,6 @@@ M:  Nicolas Ferre <nicolas.ferre@microch
  S:    Supported
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
  
 -MICROCHIP SAMA5D2-COMPATIBLE PIOBU GPIO
 -M:    Andrei Stefanescu <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -L:    [email protected]
 -F:    drivers/gpio/gpio-sama5d2-piobu.c
 -
  MICROCHIP SPI DRIVER
  M:    Nicolas Ferre <[email protected]>
  S:    Supported
@@@ -10685,6 -10644,13 +10696,6 @@@ S:  Supporte
  F:    drivers/misc/atmel-ssc.c
  F:    include/linux/atmel-ssc.h
  
 -MICROCHIP TIMER COUNTER (TC) AND CLOCKSOURCE DRIVERS
 -M:    Nicolas Ferre <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Supported
 -F:    drivers/misc/atmel_tclib.c
 -F:    drivers/clocksource/tcb_clksrc.c
 -
  MICROCHIP USBA UDC DRIVER
  M:    Cristian Birsan <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -11117,7 -11083,7 +11128,7 @@@ NET_FAILOVER MODUL
  M:    Sridhar Samudrala <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    driver/net/net_failover.c
 +F:    drivers/net/net_failover.c
  F:    include/net/net_failover.h
  F:    Documentation/networking/net_failover.rst
  
  S:    Maintained
  W:    https://fedorahosted.org/dropwatch/
  F:    net/core/drop_monitor.c
 +F:    include/uapi/linux/net_dropmon.h
  
  NETWORKING DRIVERS
  M:    "David S. Miller" <[email protected]>
@@@ -11328,7 -11293,6 +11339,7 @@@ M:   Aviad Yehezkel <[email protected]
  M:    Dave Watson <[email protected]>
  M:    John Fastabend <[email protected]>
  M:    Daniel Borkmann <[email protected]>
 +M:    Jakub Kicinski <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    net/tls/*
@@@ -11892,21 -11856,6 +11903,21 @@@ T: git git://linuxtv.org/media_tree.gi
  S:    Maintained
  F:    drivers/media/i2c/ov5647.c
  
 +OMNIVISION OV5670 SENSOR DRIVER
 +M:    Chiranjeevi Rapolu <[email protected]>
 +M:    Hyungwoo Yang <[email protected]>
 +L:    [email protected]
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/ov5670.c
 +
 +OMNIVISION OV5675 SENSOR DRIVER
 +M:    Shawn Tu <[email protected]>
 +L:    [email protected]
 +T:    git git://linuxtv.org/media_tree.git
 +S:    Maintained
 +F:    drivers/media/i2c/ov5675.c
 +
  OMNIVISION OV5695 SENSOR DRIVER
  M:    Shunqian Zheng <[email protected]>
  L:    [email protected]
@@@ -12028,7 -11977,7 +12039,7 @@@ M:   Andrew Lunn <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/i2c/i2c-ocores.txt
 -F:    Documentation/i2c/busses/i2c-ocores
 +F:    Documentation/i2c/busses/i2c-ocores.rst
  F:    drivers/i2c/busses/i2c-ocores.c
  F:    include/linux/platform_data/i2c-ocores.h
  
  S:    Supported
  F:    lib/packing.c
  F:    include/linux/packing.h
 -F:    Documentation/packing.txt
 +F:    Documentation/core-api/packing.rst
  
  PADATA PARALLEL EXECUTION MECHANISM
  M:    Steffen Klassert <[email protected]>
@@@ -12199,7 -12148,7 +12210,7 @@@ M:   Thomas Hellstrom <thellstrom@vmware.
  M:    "VMware, Inc." <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    Documentation/virtual/paravirt_ops.txt
 +F:    Documentation/virt/paravirt_ops.rst
  F:    arch/*/kernel/paravirt*
  F:    arch/*/include/asm/paravirt*.h
  F:    include/linux/hypervisor.h
@@@ -12456,7 -12405,7 +12467,7 @@@ F:   Documentation/PCI/pci-error-recovery
  F:    drivers/pci/pcie/aer.c
  F:    drivers/pci/pcie/dpc.c
  F:    drivers/pci/pcie/err.c
 -F:    Documentation/powerpc/eeh-pci-error-recovery.txt
 +F:    Documentation/powerpc/eeh-pci-error-recovery.rst
  F:    arch/powerpc/kernel/eeh*.c
  F:    arch/powerpc/platforms/*/eeh*.c
  F:    arch/powerpc/include/*/eeh*.h
@@@ -12652,7 -12601,6 +12663,7 @@@ PERFORMANCE EVENTS SUBSYSTE
  M:    Peter Zijlstra <[email protected]>
  M:    Ingo Molnar <[email protected]>
  M:    Arnaldo Carvalho de Melo <[email protected]>
 +R:    Mark Rutland <[email protected]>
  R:    Alexander Shishkin <[email protected]>
  R:    Jiri Olsa <[email protected]>
  R:    Namhyung Kim <[email protected]>
  L:    [email protected]
  S:    Supported
  F:    drivers/pinctrl/pinctrl-at91*
 +F:    drivers/gpio/gpio-sama5d2-piobu.c
  
  PIN CONTROLLER - FREESCALE
  M:    Dong Aisheng <[email protected]>
@@@ -12839,12 -12786,6 +12850,12 @@@ F: drivers/i2c/busses/i2c-puv3.
  F:    drivers/video/fbdev/fb-puv3.c
  F:    drivers/rtc/rtc-puv3.c
  
 +PLANTOWER PMS7003 AIR POLLUTION SENSOR DRIVER
 +M:    Tomasz Duszynski <[email protected]>
 +S:    Maintained
 +F:    drivers/iio/chemical/pms7003.c
 +F:    Documentation/devicetree/bindings/iio/chemical/plantower,pms7003.yaml
 +
  PMBUS HARDWARE MONITORING DRIVERS
  M:    Guenter Roeck <[email protected]>
  L:    [email protected]
@@@ -13355,8 -13296,8 +13366,8 @@@ QUALCOMM CPUFREQ DRIVER MSM8996/APQ809
  M:    Ilia Lin <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/opp/kryo-cpufreq.txt
 -F:    drivers/cpufreq/qcom-cpufreq-kryo.c
 +F:    Documentation/devicetree/bindings/opp/qcom-nvmem-cpufreq.txt
 +F:    drivers/cpufreq/qcom-cpufreq-nvmem.c
  
  QUALCOMM EMAC GIGABIT ETHERNET DRIVER
  M:    Timur Tabi <[email protected]>
@@@ -13546,7 -13487,7 +13557,7 @@@ S:   Orpha
  F:    drivers/net/wireless/ray*
  
  RCUTORTURE TEST FRAMEWORK
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  M:    Josh Triplett <[email protected]>
  R:    Steven Rostedt <[email protected]>
  R:    Mathieu Desnoyers <[email protected]>
@@@ -13593,7 -13534,7 +13604,7 @@@ F:   arch/x86/include/asm/resctrl_sched.
  F:    Documentation/x86/resctrl*
  
  READ-COPY UPDATE (RCU)
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  M:    Josh Triplett <[email protected]>
  R:    Steven Rostedt <[email protected]>
  R:    Mathieu Desnoyers <[email protected]>
@@@ -13751,7 -13692,7 +13762,7 @@@ F:   include/linux/reset-controller.
  RESTARTABLE SEQUENCES SUPPORT
  M:    Mathieu Desnoyers <[email protected]>
  M:    Peter Zijlstra <[email protected]>
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  M:    Boqun Feng <[email protected]>
  L:    [email protected]
  S:    Supported
@@@ -13795,7 -13736,6 +13806,7 @@@ F:   drivers/mtd/nand/raw/r852.
  F:    drivers/mtd/nand/raw/r852.h
  
  RISC-V ARCHITECTURE
 +M:    Paul Walmsley <[email protected]>
  M:    Palmer Dabbelt <[email protected]>
  M:    Albert Ou <[email protected]>
  L:    [email protected]
@@@ -13814,8 -13754,7 +13825,8 @@@ F:   include/linux/hid-roccat
  F:    Documentation/ABI/*/sysfs-driver-hid-roccat*
  
  ROCKCHIP RASTER 2D GRAPHIC ACCELERATION UNIT DRIVER
 -M:    Jacob chen <[email protected]>
 +M:    Jacob Chen <[email protected]>
 +M:    Ezequiel Garcia <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/media/platform/rockchip/rga/
@@@ -13825,7 -13764,7 +13836,7 @@@ HANTRO VPU CODEC DRIVE
  M:    Ezequiel Garcia <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/staging/media/platform/hantro/
 +F:    drivers/staging/media/hantro/
  F:    Documentation/devicetree/bindings/media/rockchip-vpu.txt
  
  ROCKER DRIVER
@@@ -14019,6 -13958,7 +14030,6 @@@ F:   drivers/pci/hotplug/s390_pci_hpc.
  
  S390 VFIO-CCW DRIVER
  M:    Cornelia Huck <[email protected]>
 -M:    Farhan Ali <[email protected]>
  M:    Eric Farman <[email protected]>
  R:    Halil Pasic <[email protected]>
  L:    [email protected]
@@@ -14087,12 -14027,6 +14098,12 @@@ F: drivers/media/common/saa7146
  F:    drivers/media/pci/saa7146/
  F:    include/media/drv-intf/saa7146*
  
 +SAFESETID SECURITY MODULE
 +M:     Micah Morton <[email protected]>
 +S:     Supported
 +F:     security/safesetid/
 +F:     Documentation/admin-guide/LSM/SafeSetID.rst
 +
  SAMSUNG AUDIO (ASoC) DRIVERS
  M:    Krzysztof Kozlowski <[email protected]>
  M:    Sangbeom Kim <[email protected]>
@@@ -14183,8 -14117,6 +14194,8 @@@ M:   Kamil Konieczny <k.konieczny@partner
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 +F:    Documentation/devicetree/bindings/crypto/samsung-slimsss.txt
 +F:    Documentation/devicetree/bindings/crypto/samsung-sss.txt
  F:    drivers/crypto/s5p-sss.c
  
  SAMSUNG S5P/EXYNOS4 SOC SERIES CAMERA SUBSYSTEM DRIVERS
@@@ -14205,8 -14137,6 +14216,8 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    drivers/clk/samsung/
  F:    include/dt-bindings/clock/exynos*.h
  F:    Documentation/devicetree/bindings/clock/exynos*.txt
 +F:    Documentation/devicetree/bindings/clock/samsung,s3c*
 +F:    Documentation/devicetree/bindings/clock/samsung,s5p*
  
  SAMSUNG SPI DRIVERS
  M:    Kukjin Kim <[email protected]>
@@@ -14257,12 -14187,6 +14268,12 @@@ F: drivers/watchdog/sc1200wdt.
  SCHEDULER
  M:    Ingo Molnar <[email protected]>
  M:    Peter Zijlstra <[email protected]>
 +M:    Juri Lelli <[email protected]> (SCHED_DEADLINE)
 +M:    Vincent Guittot <[email protected]> (SCHED_NORMAL)
 +R:    Dietmar Eggemann <[email protected]> (SCHED_NORMAL)
 +R:    Steven Rostedt <[email protected]> (SCHED_FIFO/SCHED_RR)
 +R:    Ben Segall <[email protected]> (CONFIG_CFS_BANDWIDTH)
 +R:    Mel Gorman <[email protected]> (CONFIG_NUMA_BALANCING)
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched/core
  S:    Maintained
@@@ -14357,7 -14281,7 +14368,7 @@@ F:   net/sctp
  SCx200 CPU SUPPORT
  M:    Jim Cromie <[email protected]>
  S:    Odd Fixes
 -F:    Documentation/i2c/busses/scx200_acb
 +F:    Documentation/i2c/busses/scx200_acb.rst
  F:    arch/x86/platform/scx200/
  F:    drivers/watchdog/scx200_wdt.c
  F:    drivers/i2c/busses/scx200*
@@@ -14543,7 -14467,6 +14554,7 @@@ F:   drivers/net/phy/phylink.
  F:    drivers/net/phy/sfp*
  F:    include/linux/phylink.h
  F:    include/linux/sfp.h
 +K:    phylink
  
  SGI GRU DRIVER
  M:    Dimitri Sivanich <[email protected]>
@@@ -14798,7 -14721,7 +14809,7 @@@ F:   mm/sl?b
  
  SLEEPABLE READ-COPY UPDATE (SRCU)
  M:    Lai Jiangshan <[email protected]>
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  M:    Josh Triplett <[email protected]>
  R:    Steven Rostedt <[email protected]>
  R:    Mathieu Desnoyers <[email protected]>
@@@ -14949,9 -14872,9 +14960,9 @@@ F:   include/linux/arm_sdei.
  F:    include/uapi/linux/arm_sdei.h
  
  SOFTWARE RAID (Multiple Disks) SUPPORT
 -M:    Shaohua Li <shli@kernel.org>
 +M:    Song Liu <song@kernel.org>
  L:    [email protected]
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shli/md.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/song/md.git
  S:    Supported
  F:    drivers/md/Makefile
  F:    drivers/md/Kconfig
@@@ -15282,6 -15205,13 +15293,6 @@@ M:  H Hartley Sweeten <hsweeten@visionen
  S:    Odd Fixes
  F:    drivers/staging/comedi/
  
 -STAGING - EROFS FILE SYSTEM
 -M:    Gao Xiang <[email protected]>
 -M:    Chao Yu <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    drivers/staging/erofs/
 -
  STAGING - FIELDBUS SUBSYSTEM
  M:    Sven Van Asbroeck <[email protected]>
  S:    Maintained
@@@ -15569,7 -15499,7 +15580,7 @@@ F:   Documentation/devicetree/bindings/gp
  SYNOPSYS DESIGNWARE AXI DMAC DRIVER
  M:    Eugeniy Paltsev <[email protected]>
  S:    Maintained
 -F:    drivers/dma/dwi-axi-dmac/
 +F:    drivers/dma/dw-axi-dmac/
  F:    Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.txt
  
  SYNOPSYS DESIGNWARE DMAC DRIVER
@@@ -15626,7 -15556,6 +15637,7 @@@ F:   drivers/clk/clk-sc[mp]i.
  F:    drivers/cpufreq/sc[mp]i-cpufreq.c
  F:    drivers/firmware/arm_scpi.c
  F:    drivers/firmware/arm_scmi/
 +F:    drivers/reset/reset-scmi.c
  F:    include/linux/sc[mp]i_protocol.h
  
  SYSTEM RESET/SHUTDOWN DRIVERS
@@@ -15935,7 -15864,6 +15946,7 @@@ F:   drivers/firmware/ti_sci
  F:    include/linux/soc/ti/ti_sci_protocol.h
  F:    Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
  F:    drivers/soc/ti/ti_sci_pm_domains.c
 +F:    include/dt-bindings/soc/ti,sci_pm_domain.h
  F:    Documentation/devicetree/bindings/reset/ti,sci-reset.txt
  F:    Documentation/devicetree/bindings/clock/ti,sci-clk.txt
  F:    drivers/clk/keystone/sci-clk.c
@@@ -15989,7 -15917,7 +16000,7 @@@ M:   Viresh Kumar <[email protected]
  M:    Javi Merino <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    Documentation/thermal/cpu-cooling-api.rst
 +F:    Documentation/driver-api/thermal/cpu-cooling-api.rst
  F:    drivers/thermal/cpu_cooling.c
  F:    include/linux/cpu_cooling.h
  
@@@ -16161,7 -16089,7 +16172,7 @@@ S:   Maintaine
  F:    drivers/net/ethernet/ti/netcp*
  
  TI PCM3060 ASoC CODEC DRIVER
 -M:    Kirill Marinushkin <kmarinushkin@birdec.tech>
 +M:    Kirill Marinushkin <kmarinushkin@birdec.com>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  F:    Documentation/devicetree/bindings/sound/pcm3060.txt
@@@ -16290,7 -16218,7 +16301,7 @@@ F:   drivers/platform/x86/topstar-laptop.
  
  TORTURE-TEST MODULES
  M:    Davidlohr Bueso <[email protected]>
 -M:    "Paul E. McKenney" <paulmck@linux.ibm.com>
 +M:    "Paul E. McKenney" <paulmck@kernel.org>
  M:    Josh Triplett <[email protected]>
  L:    [email protected]
  S:    Supported
@@@ -16512,7 -16440,7 +16523,7 @@@ F:   drivers/hid/hid-udraw-ps3.
  UFS FILESYSTEM
  M:    Evgeniy Dushistov <[email protected]>
  S:    Maintained
 -F:    Documentation/filesystems/ufs.txt
 +F:    Documentation/admin-guide/ufs.rst
  F:    fs/ufs/
  
  UHID USERSPACE HID IO DRIVER:
@@@ -16530,9 -16458,11 +16541,9 @@@ F:  drivers/usb/common/ulpi.
  F:    include/linux/ulpi/
  
  ULTRA-WIDEBAND (UWB) SUBSYSTEM:
 -L:    [email protected]
 -S:    Orphan
 -F:    drivers/uwb/
 -F:    include/linux/uwb.h
 -F:    include/linux/uwb/
 +L:    [email protected]
 +S:    Obsolete
 +F:    drivers/staging/uwb/
  
  UNICODE SUBSYSTEM:
  M:    Gabriel Krisman Bertazi <[email protected]>
@@@ -16935,7 -16865,7 +16946,7 @@@ W:   http://user-mode-linux.sourceforge.n
  Q:    https://patchwork.ozlabs.org/project/linux-um/list/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml.git
  S:    Maintained
 -F:    Documentation/virtual/uml/
 +F:    Documentation/virt/uml/
  F:    arch/um/
  F:    arch/x86/um/
  F:    fs/hostfs/
@@@ -17204,7 -17134,7 +17215,7 @@@ F:   drivers/virtio/virtio_input.
  F:    include/uapi/linux/virtio_input.h
  
  VIRTIO IOMMU DRIVER
 -M:    Jean-Philippe Brucker <jean-philippe[email protected]>
 +M:    Jean-Philippe Brucker <jean-philippe@linaro.org>
  L:    [email protected]
  S:    Maintained
  F:    drivers/iommu/virtio-iommu.c
@@@ -17253,6 -17183,7 +17264,6 @@@ F:   drivers/vme
  F:    include/linux/vme*
  
  VMWARE BALLOON DRIVER
 -M:    Julien Freche <[email protected]>
  M:    Nadav Amit <[email protected]>
  M:    "VMware, Inc." <[email protected]>
  L:    [email protected]
@@@ -17265,7 -17196,6 +17276,7 @@@ M:   "VMware, Inc." <[email protected]
  L:    [email protected]
  S:    Supported
  F:    arch/x86/kernel/cpu/vmware.c
 +F:    arch/x86/include/asm/vmware.h
  
  VMWARE PVRDMA DRIVER
  M:    Adit Ranadive <[email protected]>
@@@ -17315,7 -17245,6 +17326,7 @@@ F:   Documentation/power/regulator
  F:    drivers/regulator/
  F:    include/dt-bindings/regulator/
  F:    include/linux/regulator/
 +K:    regulator_get_optional
  
  VRF
  M:    David Ahern <[email protected]>
  L:    [email protected] (subscribers-only)
  S:    Supported
  W:    http://linuxwimax.org
 -F:    Documentation/wimax/README.wimax
 +F:    Documentation/admin-guide/wimax/wimax.rst
  F:    include/linux/wimax/debug.h
  F:    include/net/wimax.h
  F:    include/uapi/linux/wimax.h
@@@ -17584,7 -17513,7 +17595,7 @@@ M:   Darren Hart <[email protected]
  M:    Andy Shevchenko <[email protected]>
  L:    [email protected]
  T:    git git://git.infradead.org/linux-platform-drivers-x86.git
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/platform/x86/
  F:    drivers/platform/olpc/
  
@@@ -17637,6 -17566,7 +17648,6 @@@ M:   Jakub Kicinski <jakub.kicinski@netro
  M:    Jesper Dangaard Brouer <[email protected]>
  M:    John Fastabend <[email protected]>
  L:    [email protected]
 -L:    [email protected]
  L:    [email protected]
  S:    Supported
  F:    net/core/xdp.c
@@@ -17752,7 -17682,8 +17763,7 @@@ F:   include/uapi/linux/dqblk_xfs.
  F:    include/uapi/linux/fsmap.h
  
  XILINX AXI ETHERNET DRIVER
 -M:    Anirudha Sarangi <[email protected]>
 -M:    John Linn <[email protected]>
 +M:    Radhey Shyam Pandey <[email protected]>
  S:    Maintained
  F:    drivers/net/ethernet/xilinx/xilinx_axienet*
  
@@@ -17772,17 -17703,6 +17783,17 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/platform/xilinx/
  F:    include/uapi/linux/xilinx-v4l2-controls.h
  
 +XILINX SD-FEC IP CORES
 +M:    Derek Kiernan <[email protected]>
 +M:    Dragan Cvetic <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/misc/xlnx,sd-fec.txt
 +F:    Documentation/misc-devices/xilinx_sdfec.rst
 +F:    drivers/misc/xilinx_sdfec.c
 +F:    drivers/misc/Kconfig
 +F:    drivers/misc/Makefile
 +F:    include/uapi/misc/xilinx_sdfec.h
 +
  XILLYBUS DRIVER
  M:    Eli Billauer <[email protected]>
  L:    [email protected]
@@@ -17892,6 -17812,14 +17903,6 @@@ S:  Maintaine
  F:    mm/zpool.c
  F:    include/linux/zpool.h
  
 -ZR36067 VIDEO FOR LINUX DRIVER
 -L:    [email protected]
 -L:    [email protected]
 -W:    http://mjpeg.sourceforge.net/driver-zoran/
 -T:    hg https://linuxtv.org/hg/v4l-dvb
 -S:    Odd Fixes
 -F:    drivers/staging/media/zoran/
 -
  ZRAM COMPRESSED RAM BLOCK DEVICE DRVIER
  M:    Minchan Kim <[email protected]>
  M:    Nitin Gupta <[email protected]>
index 3f3594d9485cec30c34730255595c76812621f3f,752d5a61878cbfa61f6e1fada7ba2bb44e6a86fb..04115ca6bfb528c40a7f7cf207c57d2377c1a1ba
                        /* Industrial only */
                        opp-supported-hw = <0xf>, <0x4>;
                        clock-latency-ns = <150000>;
 +                      opp-suspend;
                };
  
                opp-1000000000 {
                        /* Consumer only */
                        opp-supported-hw = <0xe>, <0x3>;
                        clock-latency-ns = <150000>;
 +                      opp-suspend;
                };
  
                opp-1300000000 {
                        opp-hz = /bits/ 64 <1300000000>;
                        opp-microvolt = <1000000>;
 -                      opp-supported-hw = <0xc>, <0x7>;
 +                      opp-supported-hw = <0xc>, <0x4>;
                        clock-latency-ns = <150000>;
 +                      opp-suspend;
                };
  
                opp-1500000000 {
                        opp-hz = /bits/ 64 <1500000000>;
                        opp-microvolt = <1000000>;
 -                      /* Consumer only but rely on speed grading */
 -                      opp-supported-hw = <0x8>, <0x7>;
 +                      opp-supported-hw = <0x8>, <0x3>;
                        clock-latency-ns = <150000>;
 +                      opp-suspend;
                };
        };
  
                                #gpio-cells = <2>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
 +                              gpio-ranges = <&iomuxc 0 10 30>;
                        };
  
                        gpio2: gpio@30210000 {
                                #gpio-cells = <2>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
 +                              gpio-ranges = <&iomuxc 0 40 21>;
                        };
  
                        gpio3: gpio@30220000 {
                                #gpio-cells = <2>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
 +                              gpio-ranges = <&iomuxc 0 61 26>;
                        };
  
                        gpio4: gpio@30230000 {
                                #gpio-cells = <2>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
 +                              gpio-ranges = <&iomuxc 0 87 32>;
                        };
  
                        gpio5: gpio@30240000 {
                                #gpio-cells = <2>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
 +                              gpio-ranges = <&iomuxc 0 119 30>;
                        };
  
                        tmu: tmu@30260000 {
                                compatible = "fsl,imx8mq-tmu";
                                reg = <0x30260000 0x10000>;
                                interrupt = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
 +                              clocks = <&clk IMX8MQ_CLK_TMU_ROOT>;
                                little-endian;
                                fsl,tmu-range = <0xb0000 0xa0026 0x80048 0x70061>;
                                fsl,tmu-calibration = <0x00000000 0x00000023
                        };
  
                        iomuxc_gpr: syscon@30340000 {
 -                              compatible = "fsl,imx8mq-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr", "syscon";
 +                              compatible = "fsl,imx8mq-iomuxc-gpr", "fsl,imx6q-iomuxc-gpr",
 +                                           "syscon", "simple-mfd";
                                reg = <0x30340000 0x10000>;
 +
 +                              mux: mux-controller {
 +                                      compatible = "mmio-mux";
 +                                      #mux-control-cells = <1>;
 +                                      mux-reg-masks = <0x34 0x00000004>; /* MIPI_MUX_SEL */
 +                              };
                        };
  
                        ocotp: ocotp-ctrl@30350000 {
                                #pwm-cells = <2>;
                                status = "disabled";
                        };
 +
 +                      system_counter: timer@306a0000 {
 +                              compatible = "nxp,sysctr-timer";
 +                              reg = <0x306a0000 0x20000>;
 +                              interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
 +                              clocks = <&osc_25m>;
 +                              clock-names = "per";
 +                      };
                };
  
                bus@30800000 { /* AIPS3 */
  
                        sai2: sai@308b0000 {
                                #sound-dai-cells = <0>;
 -                              compatible = "fsl,imx8mq-sai",
 -                                           "fsl,imx6sx-sai";
 +                              compatible = "fsl,imx8mq-sai";
                                reg = <0x308b0000 0x10000>;
                                interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
                                clocks = <&clk IMX8MQ_CLK_SAI2_IPG>,
                                status = "disabled";
                        };
  
+                       crypto: crypto@30900000 {
+                               compatible = "fsl,sec-v4.0";
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+                               reg = <0x30900000 0x40000>;
+                               ranges = <0 0x30900000 0x40000>;
+                               interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
+                               clocks = <&clk IMX8MQ_CLK_AHB>,
+                                        <&clk IMX8MQ_CLK_IPG_ROOT>;
+                               clock-names = "aclk", "ipg";
+                               sec_jr0: jr@1000 {
+                                       compatible = "fsl,sec-v4.0-job-ring";
+                                       reg = <0x1000 0x1000>;
+                                       interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
+                               };
+                               sec_jr1: jr@2000 {
+                                       compatible = "fsl,sec-v4.0-job-ring";
+                                       reg = <0x2000 0x1000>;
+                                       interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
+                               };
+                               sec_jr2: jr@3000 {
+                                       compatible = "fsl,sec-v4.0-job-ring";
+                                       reg = <0x3000 0x1000>;
+                                       interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
+                               };
+                       };
 +                      dphy: dphy@30a00300 {
 +                              compatible = "fsl,imx8mq-mipi-dphy";
 +                              reg = <0x30a00300 0x100>;
 +                              clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
 +                              clock-names = "phy_ref";
 +                              assigned-clocks = <&clk IMX8MQ_CLK_DSI_PHY_REF>;
 +                              assigned-clock-parents = <&clk IMX8MQ_VIDEO_PLL1_OUT>;
 +                              assigned-clock-rates = <24000000>;
 +                              #phy-cells = <0>;
 +                              power-domains = <&pgc_mipi>;
 +                              status = "disabled";
 +                      };
 +
                        i2c1: i2c@30a20000 {
                                compatible = "fsl,imx8mq-i2c", "fsl,imx21-i2c";
                                reg = <0x30a20000 0x10000>;
                usb_dwc3_0: usb@38100000 {
                        compatible = "fsl,imx8mq-dwc3", "snps,dwc3";
                        reg = <0x38100000 0x10000>;
 -                      clocks = <&clk IMX8MQ_CLK_USB_BUS>,
 +                      clocks = <&clk IMX8MQ_CLK_USB1_CTRL_ROOT>,
                                 <&clk IMX8MQ_CLK_USB_CORE_REF>,
 -                               <&clk IMX8MQ_CLK_USB1_CTRL_ROOT>;
 +                               <&clk IMX8MQ_CLK_32K>;
                        clock-names = "bus_early", "ref", "suspend";
                        assigned-clocks = <&clk IMX8MQ_CLK_USB_BUS>,
                                          <&clk IMX8MQ_CLK_USB_CORE_REF>;
                usb_dwc3_1: usb@38200000 {
                        compatible = "fsl,imx8mq-dwc3", "snps,dwc3";
                        reg = <0x38200000 0x10000>;
 -                      clocks = <&clk IMX8MQ_CLK_USB_BUS>,
 +                      clocks = <&clk IMX8MQ_CLK_USB2_CTRL_ROOT>,
                                 <&clk IMX8MQ_CLK_USB_CORE_REF>,
 -                               <&clk IMX8MQ_CLK_USB2_CTRL_ROOT>;
 +                               <&clk IMX8MQ_CLK_32K>;
                        clock-names = "bus_early", "ref", "suspend";
                        assigned-clocks = <&clk IMX8MQ_CLK_USB_BUS>,
                                          <&clk IMX8MQ_CLK_USB_CORE_REF>;
                        interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
                        interrupt-parent = <&gic>;
                };
 +
 +              ddr-pmu@3d800000 {
 +                      compatible = "fsl,imx8mq-ddr-pmu", "fsl,imx8m-ddr-pmu";
 +                      reg = <0x3d800000 0x400000>;
 +                      interrupt-parent = <&gic>;
 +                      interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
 +              };
        };
  };
index 6d2dbb5089d5c15651e78b2ed67d4cc55246da09,d4f6fd42a105074168186103b233b66ace477551..9803e96d29247e862f14dff26afbd7b1bb733b74
@@@ -108,7 -108,7 +108,7 @@@ static int aes_set_key(struct crypto_tf
        return 0;
  }
  
- static void aes_encrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
+ static void crypto_aes_encrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
  {
        struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm);
  
        cpacf_km(sctx->fc, &sctx->key, out, in, AES_BLOCK_SIZE);
  }
  
- static void aes_decrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
+ static void crypto_aes_decrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
  {
        struct s390_aes_ctx *sctx = crypto_tfm_ctx(tfm);
  
@@@ -172,8 -172,8 +172,8 @@@ static struct crypto_alg aes_alg = 
                        .cia_min_keysize        =       AES_MIN_KEY_SIZE,
                        .cia_max_keysize        =       AES_MAX_KEY_SIZE,
                        .cia_setkey             =       aes_set_key,
-                       .cia_encrypt            =       aes_encrypt,
-                       .cia_decrypt            =       aes_decrypt,
+                       .cia_encrypt            =       crypto_aes_encrypt,
+                       .cia_decrypt            =       crypto_aes_decrypt,
                }
        }
  };
@@@ -512,7 -512,7 +512,7 @@@ static int xts_aes_set_key(struct crypt
        unsigned long fc;
        int err;
  
-       err = xts_check_key(tfm, in_key, key_len);
+       err = xts_fallback_setkey(tfm, in_key, key_len);
        if (err)
                return err;
  
        /* Check if the function code is available */
        xts_ctx->fc = (fc && cpacf_test_func(&km_functions, fc)) ? fc : 0;
        if (!xts_ctx->fc)
-               return xts_fallback_setkey(tfm, in_key, key_len);
+               return 0;
  
        /* Split the XTS key into the two subkeys */
        key_len = key_len / 2;
@@@ -586,10 -586,7 +586,10 @@@ static int xts_aes_encrypt(struct blkci
        struct s390_xts_ctx *xts_ctx = crypto_blkcipher_ctx(desc->tfm);
        struct blkcipher_walk walk;
  
-       if (unlikely(!xts_ctx->fc))
 +      if (!nbytes)
 +              return -EINVAL;
 +
+       if (unlikely(!xts_ctx->fc || (nbytes % XTS_BLOCK_SIZE) != 0))
                return xts_fallback_encrypt(desc, dst, src, nbytes);
  
        blkcipher_walk_init(&walk, dst, src, nbytes);
@@@ -603,10 -600,7 +603,10 @@@ static int xts_aes_decrypt(struct blkci
        struct s390_xts_ctx *xts_ctx = crypto_blkcipher_ctx(desc->tfm);
        struct blkcipher_walk walk;
  
-       if (unlikely(!xts_ctx->fc))
 +      if (!nbytes)
 +              return -EINVAL;
 +
+       if (unlikely(!xts_ctx->fc || (nbytes % XTS_BLOCK_SIZE) != 0))
                return xts_fallback_decrypt(desc, dst, src, nbytes);
  
        blkcipher_walk_init(&walk, dst, src, nbytes);
index 10fb42da0007e9d3c914143ec4e427dd1eec42f5,ea86982aba270fe2461b7ab091e4a2a789c7ca9f..527749066d31e7faee3ab0dc5de228b488acba74
@@@ -6,51 -6,24 +6,53 @@@ purgatory-y := purgatory.o stack.o setu
  targets += $(purgatory-y)
  PURGATORY_OBJS = $(addprefix $(obj)/,$(purgatory-y))
  
- $(obj)/sha256.o: $(srctree)/lib/sha256.c FORCE
 +$(obj)/string.o: $(srctree)/arch/x86/boot/compressed/string.c FORCE
 +      $(call if_changed_rule,cc_o_c)
 +
+ $(obj)/sha256.o: $(srctree)/lib/crypto/sha256.c FORCE
        $(call if_changed_rule,cc_o_c)
  
+ CFLAGS_sha256.o := -D__DISABLE_EXPORTS
  LDFLAGS_purgatory.ro := -e purgatory_start -r --no-undefined -nostdlib -z nodefaultlib
  targets += purgatory.ro
  
  KASAN_SANITIZE        := n
  KCOV_INSTRUMENT := n
  
 +# These are adjustments to the compiler flags used for objects that
 +# make up the standalone purgatory.ro
 +
 +PURGATORY_CFLAGS_REMOVE := -mcmodel=kernel
 +PURGATORY_CFLAGS := -mcmodel=large -ffreestanding -fno-zero-initialized-in-bss
 +
  # Default KBUILD_CFLAGS can have -pg option set when FTRACE is enabled. That
  # in turn leaves some undefined symbols like __fentry__ in purgatory and not
 -# sure how to relocate those. Like kexec-tools, use custom flags.
 +# sure how to relocate those.
 +ifdef CONFIG_FUNCTION_TRACER
 +PURGATORY_CFLAGS_REMOVE               += $(CC_FLAGS_FTRACE)
 +endif
 +
 +ifdef CONFIG_STACKPROTECTOR
 +PURGATORY_CFLAGS_REMOVE               += -fstack-protector
 +endif
 +
 +ifdef CONFIG_STACKPROTECTOR_STRONG
 +PURGATORY_CFLAGS_REMOVE               += -fstack-protector-strong
 +endif
 +
 +ifdef CONFIG_RETPOLINE
 +PURGATORY_CFLAGS_REMOVE               += $(RETPOLINE_CFLAGS)
 +endif
 +
 +CFLAGS_REMOVE_purgatory.o     += $(PURGATORY_CFLAGS_REMOVE)
 +CFLAGS_purgatory.o            += $(PURGATORY_CFLAGS)
 +
 +CFLAGS_REMOVE_sha256.o                += $(PURGATORY_CFLAGS_REMOVE)
 +CFLAGS_sha256.o                       += $(PURGATORY_CFLAGS)
  
 -KBUILD_CFLAGS := -fno-strict-aliasing -Wall -Wstrict-prototypes -fno-zero-initialized-in-bss -fno-builtin -ffreestanding -c -Os -mcmodel=large
 -KBUILD_CFLAGS += -m$(BITS)
 -KBUILD_CFLAGS += $(call cc-option,-fno-PIE)
 +CFLAGS_REMOVE_string.o                += $(PURGATORY_CFLAGS_REMOVE)
 +CFLAGS_string.o                       += $(PURGATORY_CFLAGS)
  
  $(obj)/purgatory.ro: $(PURGATORY_OBJS) FORCE
                $(call if_changed,ld)
index b607bda786f6b9ff0c60cb5889b4f99353d0edcb,c4295256cc0cfe074645e93046aa8336988f5a58..3b95410ff0f887469b2392f949a9da7539aab8e9
@@@ -9,7 -9,7 +9,7 @@@
   */
  
  #include <linux/bug.h>
- #include <linux/sha256.h>
+ #include <crypto/sha.h>
  #include <asm/purgatory.h>
  
  #include "../boot/string.h"
@@@ -68,9 -68,3 +68,9 @@@ void purgatory(void
        }
        copy_backup_region();
  }
 +
 +/*
 + * Defined in order to reuse memcpy() and memset() from
 + * arch/x86/boot/compressed/string.c
 + */
 +void warn(const char *msg) {}
diff --combined drivers/char/random.c
index 566922df4b7b551e6abdeda96b727b938696c0c9,5b799aa973a3ff34b28114469fbb3a88701487d2..d3beed084c0a56456da01da13cb127b7236d3e0b
  #include <linux/percpu.h>
  #include <linux/cryptohash.h>
  #include <linux/fips.h>
+ #include <linux/freezer.h>
  #include <linux/ptrace.h>
  #include <linux/workqueue.h>
  #include <linux/irq.h>
@@@ -2439,23 -2440,10 +2440,24 @@@ void add_hwgenerator_randomness(const c
         * We'll be woken up again once below random_write_wakeup_thresh,
         * or when the calling thread is about to terminate.
         */
-       wait_event_interruptible(random_write_wait, kthread_should_stop() ||
+       wait_event_freezable(random_write_wait,
+                       kthread_should_stop() ||
                        ENTROPY_BITS(&input_pool) <= random_write_wakeup_bits);
        mix_pool_bytes(poolp, buffer, count);
        credit_entropy_bits(poolp, entropy);
  }
  EXPORT_SYMBOL_GPL(add_hwgenerator_randomness);
 +
 +/* Handle random seed passed by bootloader.
 + * If the seed is trustworthy, it would be regarded as hardware RNGs. Otherwise
 + * it would be regarded as device data.
 + * The decision is controlled by CONFIG_RANDOM_TRUST_BOOTLOADER.
 + */
 +void add_bootloader_randomness(const void *buf, unsigned int size)
 +{
 +      if (IS_ENABLED(CONFIG_RANDOM_TRUST_BOOTLOADER))
 +              add_hwgenerator_randomness(buf, size, size * 8);
 +      else
 +              add_device_randomness(buf, size);
 +}
 +EXPORT_SYMBOL_GPL(add_bootloader_randomness);
diff --combined drivers/crypto/Kconfig
index d7c85c79094b7fc1904e609b6d337e0c4293d8bb,83271d944a9670b66985a85bcf75bd4d4ddc3d16..1fb622f2a87d93e0cd508f3b89a41e5212c534f1
@@@ -27,7 -27,7 +27,7 @@@ config CRYPTO_DEV_PADLOCK_AE
        tristate "PadLock driver for AES algorithm"
        depends on CRYPTO_DEV_PADLOCK
        select CRYPTO_BLKCIPHER
-       select CRYPTO_AES
+       select CRYPTO_LIB_AES
        help
          Use VIA PadLock for AES algorithm.
  
@@@ -145,32 -145,12 +145,32 @@@ config CRYPTO_SHA512_S39
  
          It is available as of z10.
  
 +config CRYPTO_SHA3_256_S390
 +      tristate "SHA3_224 and SHA3_256 digest algorithm"
 +      depends on S390
 +      select CRYPTO_HASH
 +      help
 +        This is the s390 hardware accelerated implementation of the
 +        SHA3_256 secure hash standard.
 +
 +        It is available as of z14.
 +
 +config CRYPTO_SHA3_512_S390
 +      tristate "SHA3_384 and SHA3_512 digest algorithm"
 +      depends on S390
 +      select CRYPTO_HASH
 +      help
 +        This is the s390 hardware accelerated implementation of the
 +        SHA3_512 secure hash standard.
 +
 +        It is available as of z14.
 +
  config CRYPTO_DES_S390
        tristate "DES and Triple DES cipher algorithms"
        depends on S390
        select CRYPTO_ALGAPI
        select CRYPTO_BLKCIPHER
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        help
          This is the s390 hardware accelerated implementation of the
          DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
@@@ -209,12 -189,12 +209,12 @@@ config S390_PRN
          It is available as of z9.
  
  config CRYPTO_GHASH_S390
-       tristate "GHASH digest algorithm"
+       tristate "GHASH hash function"
        depends on S390
        select CRYPTO_HASH
        help
-         This is the s390 hardware accelerated implementation of the
-         GHASH message digest algorithm for GCM (Galois/Counter Mode).
+         This is the s390 hardware accelerated implementation of GHASH,
+         the hash function used in GCM (Galois/Counter mode).
  
          It is available as of z196.
  
@@@ -234,8 -214,8 +234,8 @@@ config CRYPTO_CRC32_S39
  config CRYPTO_DEV_MARVELL_CESA
        tristate "Marvell's Cryptographic Engine driver"
        depends on PLAT_ORION || ARCH_MVEBU
-       select CRYPTO_AES
-       select CRYPTO_DES
+       select CRYPTO_LIB_AES
+       select CRYPTO_LIB_DES
        select CRYPTO_BLKCIPHER
        select CRYPTO_HASH
        select SRAM
  
  config CRYPTO_DEV_NIAGARA2
         tristate "Niagara2 Stream Processing Unit driver"
-        select CRYPTO_DES
+        select CRYPTO_LIB_DES
         select CRYPTO_BLKCIPHER
         select CRYPTO_HASH
         select CRYPTO_MD5
  
  config CRYPTO_DEV_HIFN_795X
        tristate "Driver HIFN 795x crypto accelerator chips"
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_BLKCIPHER
        select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG
        depends on PCI
@@@ -320,7 -300,7 +320,7 @@@ config CRYPTO_DEV_TALITOS
  config CRYPTO_DEV_IXP4XX
        tristate "Driver for IXP4xx crypto hardware acceleration"
        depends on ARCH_IXP4XX && IXP4XX_QMGR && IXP4XX_NPE
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        select CRYPTO_BLKCIPHER
@@@ -332,7 -312,7 +332,7 @@@ config CRYPTO_DEV_PPC4X
        depends on PPC && 4xx
        select CRYPTO_HASH
        select CRYPTO_AEAD
-       select CRYPTO_AES
+       select CRYPTO_LIB_AES
        select CRYPTO_CCM
        select CRYPTO_CTR
        select CRYPTO_GCM
@@@ -386,7 -366,7 +386,7 @@@ config CRYPTO_DEV_OMAP_AE
  config CRYPTO_DEV_OMAP_DES
        tristate "Support for OMAP DES/3DES hw engine"
        depends on ARCH_OMAP2PLUS
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_BLKCIPHER
        select CRYPTO_ENGINE
        help
@@@ -404,7 -384,7 +404,7 @@@ config CRYPTO_DEV_PICOXCEL
        select CRYPTO_AES
        select CRYPTO_AUTHENC
        select CRYPTO_BLKCIPHER
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_CBC
        select CRYPTO_ECB
        select CRYPTO_SEQIV
          Picochip picoXcell SoC devices. Select this for IPSEC ESP offload
          and for 3gpp Layer 2 ciphering support.
  
-         Saying m here will build a module named pipcoxcell_crypto.
+         Saying m here will build a module named picoxcell_crypto.
  
  config CRYPTO_DEV_SAHARA
        tristate "Support for SAHARA crypto accelerator"
@@@ -517,7 -497,7 +517,7 @@@ config CRYPTO_DEV_ATMEL_AE
  config CRYPTO_DEV_ATMEL_TDES
        tristate "Support for Atmel DES/TDES hw accelerator"
        depends on ARCH_AT91 || COMPILE_TEST
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_BLKCIPHER
        help
          Some Atmel processors have DES/TDES hw accelerator.
@@@ -615,7 -595,7 +615,7 @@@ config CRYPTO_DEV_QC
        depends on ARCH_QCOM || COMPILE_TEST
        depends on HAS_IOMEM
        select CRYPTO_AES
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_ECB
        select CRYPTO_CBC
        select CRYPTO_XTS
@@@ -663,7 -643,7 +663,7 @@@ config CRYPTO_DEV_SUN4I_S
        select CRYPTO_MD5
        select CRYPTO_SHA1
        select CRYPTO_AES
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_BLKCIPHER
        help
          Some Allwinner SoC have a crypto accelerator named
@@@ -686,7 -666,7 +686,7 @@@ config CRYPTO_DEV_ROCKCHI
        tristate "Rockchip's Cryptographic Engine driver"
        depends on OF && ARCH_ROCKCHIP
        select CRYPTO_AES
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_MD5
        select CRYPTO_SHA1
        select CRYPTO_SHA256
@@@ -723,7 -703,7 +723,7 @@@ config CRYPTO_DEV_BCM_SP
        depends on MAILBOX
        default m
        select CRYPTO_AUTHENC
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_MD5
        select CRYPTO_SHA1
        select CRYPTO_SHA256
@@@ -737,12 -717,11 +737,11 @@@ source "drivers/crypto/stm32/Kconfig
  
  config CRYPTO_DEV_SAFEXCEL
        tristate "Inside Secure's SafeXcel cryptographic engine driver"
-       depends on OF
-       depends on (ARM64 && ARCH_MVEBU) || (COMPILE_TEST && 64BIT)
-       select CRYPTO_AES
+       depends on OF || PCI || COMPILE_TEST
+       select CRYPTO_LIB_AES
        select CRYPTO_AUTHENC
        select CRYPTO_BLKCIPHER
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_HASH
        select CRYPTO_HMAC
        select CRYPTO_MD5
        select CRYPTO_SHA256
        select CRYPTO_SHA512
        help
-         This driver interfaces with the SafeXcel EIP-197 cryptographic engine
-         designed by Inside Secure. Select this if you want to use CBC/ECB
-         chain mode, AES cipher mode and SHA1/SHA224/SHA256/SHA512 hash
-         algorithms.
+         This driver interfaces with the SafeXcel EIP-97 and EIP-197 cryptographic
+         engines designed by Inside Secure. It currently accelerates DES, 3DES and
+         AES block ciphers in ECB and CBC mode, as well as SHA1, SHA224, SHA256,
+         SHA384 and SHA512 hash algorithms for both basic hash and HMAC.
+         Additionally, it accelerates combined AES-CBC/HMAC-SHA AEAD operations.
  
  config CRYPTO_DEV_ARTPEC6
        tristate "Support for Axis ARTPEC-6/7 hardware crypto acceleration."
@@@ -780,7 -760,7 +780,7 @@@ config CRYPTO_DEV_CCRE
        default n
        select CRYPTO_HASH
        select CRYPTO_BLKCIPHER
-       select CRYPTO_DES
+       select CRYPTO_LIB_DES
        select CRYPTO_AEAD
        select CRYPTO_AUTHENC
        select CRYPTO_SHA1
index edefa669153f49c4df1591431c24d4180d3f4b7c,e58d69d4dd437739766417213db231fe05e68d07..73acf0fdb7932b3929f6aaffa2e19c60db1273d4
@@@ -2,12 -2,13 +2,13 @@@
  /*
   * AMD Cryptographic Coprocessor (CCP) driver
   *
-  * Copyright (C) 2013,2017 Advanced Micro Devices, Inc.
+  * Copyright (C) 2013,2019 Advanced Micro Devices, Inc.
   *
   * Author: Tom Lendacky <[email protected]>
   * Author: Gary R Hook <[email protected]>
   */
  
+ #include <linux/module.h>
  #include <linux/kernel.h>
  #include <linux/kthread.h>
  #include <linux/sched.h>
@@@ -19,6 -20,7 +20,7 @@@
  #include <linux/delay.h>
  #include <linux/hw_random.h>
  #include <linux/cpu.h>
+ #include <linux/atomic.h>
  #ifdef CONFIG_X86
  #include <asm/cpu_device_id.h>
  #endif
  
  #include "ccp-dev.h"
  
+ #define MAX_CCPS 32
+ /* Limit CCP use to a specifed number of queues per device */
+ static unsigned int nqueues = 0;
+ module_param(nqueues, uint, 0444);
+ MODULE_PARM_DESC(nqueues, "Number of queues per CCP (minimum 1; default: all available)");
+ /* Limit the maximum number of configured CCPs */
+ static atomic_t dev_count = ATOMIC_INIT(0);
+ static unsigned int max_devs = MAX_CCPS;
+ module_param(max_devs, uint, 0444);
+ MODULE_PARM_DESC(max_devs, "Maximum number of CCPs to enable (default: all; 0 disables all CCPs)");
  struct ccp_tasklet_data {
        struct completion completion;
        struct ccp_cmd *cmd;
@@@ -540,10 -555,6 +555,10 @@@ int ccp_dev_suspend(struct sp_device *s
        unsigned long flags;
        unsigned int i;
  
 +      /* If there's no device there's nothing to do */
 +      if (!ccp)
 +              return 0;
 +
        spin_lock_irqsave(&ccp->cmd_lock, flags);
  
        ccp->suspending = 1;
@@@ -568,10 -579,6 +583,10 @@@ int ccp_dev_resume(struct sp_device *sp
        unsigned long flags;
        unsigned int i;
  
 +      /* If there's no device there's nothing to do */
 +      if (!ccp)
 +              return 0;
 +
        spin_lock_irqsave(&ccp->cmd_lock, flags);
  
        ccp->suspending = 0;
@@@ -594,12 -601,24 +609,24 @@@ int ccp_dev_init(struct sp_device *sp
        struct ccp_device *ccp;
        int ret;
  
+       /*
+        * Check how many we have so far, and stop after reaching
+        * that number
+        */
+       if (atomic_inc_return(&dev_count) > max_devs)
+               return 0; /* don't fail the load */
        ret = -ENOMEM;
        ccp = ccp_alloc_struct(sp);
        if (!ccp)
                goto e_err;
        sp->ccp_data = ccp;
  
+       if (!nqueues || (nqueues > MAX_HW_QUEUES))
+               ccp->max_q_count = MAX_HW_QUEUES;
+       else
+               ccp->max_q_count = nqueues;
        ccp->vdata = (struct ccp_vdata *)sp->dev_vdata->ccp_vdata;
        if (!ccp->vdata || !ccp->vdata->version) {
                ret = -ENODEV;
index 9bc3c62157d7dc500b3b00c3d4d74bd37d5fd531,591584a950289810001333f1fbfbf4654786ba9c..c8da8eb160da08e41f98fd3ac02d9535eb94c5d2
@@@ -10,7 -10,6 +10,6 @@@
  
  #include <linux/module.h>
  #include <linux/kernel.h>
- #include <linux/pci.h>
  #include <linux/interrupt.h>
  #include <crypto/scatterwalk.h>
  #include <crypto/des.h>
@@@ -150,14 -149,13 +149,13 @@@ static int ccp_init_dm_workarea(struct 
        if (len <= CCP_DMAPOOL_MAX_SIZE) {
                wa->dma_pool = cmd_q->dma_pool;
  
-               wa->address = dma_pool_alloc(wa->dma_pool, GFP_KERNEL,
+               wa->address = dma_pool_zalloc(wa->dma_pool, GFP_KERNEL,
                                             &wa->dma.address);
                if (!wa->address)
                        return -ENOMEM;
  
                wa->dma.length = CCP_DMAPOOL_MAX_SIZE;
  
-               memset(wa->address, 0, CCP_DMAPOOL_MAX_SIZE);
        } else {
                wa->address = kzalloc(len, GFP_KERNEL);
                if (!wa->address)
@@@ -455,8 -453,8 +453,8 @@@ static int ccp_copy_from_sb(struct ccp_
        return ccp_copy_to_from_sb(cmd_q, wa, jobid, sb, byte_swap, true);
  }
  
- static int ccp_run_aes_cmac_cmd(struct ccp_cmd_queue *cmd_q,
                              struct ccp_cmd *cmd)
+ static noinline_for_stack int
ccp_run_aes_cmac_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_aes_engine *aes = &cmd->u.aes;
        struct ccp_dm_workarea key, ctx;
@@@ -611,8 -609,8 +609,8 @@@ e_key
        return ret;
  }
  
- static int ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q,
                             struct ccp_cmd *cmd)
+ static noinline_for_stack int
ccp_run_aes_gcm_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_aes_engine *aes = &cmd->u.aes;
        struct ccp_dm_workarea key, ctx, final_wa, tag;
  
        unsigned long long *final;
        unsigned int dm_offset;
 +      unsigned int authsize;
        unsigned int jobid;
        unsigned int ilen;
        bool in_place = true; /* Default value */
        if (!aes->key) /* Gotta have a key SGL */
                return -EINVAL;
  
 +      /* Zero defaults to 16 bytes, the maximum size */
 +      authsize = aes->authsize ? aes->authsize : AES_BLOCK_SIZE;
 +      switch (authsize) {
 +      case 16:
 +      case 15:
 +      case 14:
 +      case 13:
 +      case 12:
 +      case 8:
 +      case 4:
 +              break;
 +      default:
 +              return -EINVAL;
 +      }
 +
        /* First, decompose the source buffer into AAD & PT,
         * and the destination buffer into AAD, CT & tag, or
         * the input into CT & tag.
                p_tag = scatterwalk_ffwd(sg_tag, p_outp, ilen);
        } else {
                /* Input length for decryption includes tag */
 -              ilen = aes->src_len - AES_BLOCK_SIZE;
 +              ilen = aes->src_len - authsize;
                p_tag = scatterwalk_ffwd(sg_tag, p_inp, ilen);
        }
  
                while (src.sg_wa.bytes_left) {
                        ccp_prepare_data(&src, &dst, &op, AES_BLOCK_SIZE, true);
                        if (!src.sg_wa.bytes_left) {
 -                              unsigned int nbytes = aes->src_len
 -                                                    % AES_BLOCK_SIZE;
 +                              unsigned int nbytes = ilen % AES_BLOCK_SIZE;
  
                                if (nbytes) {
                                        op.eom = 1;
  
        if (aes->action == CCP_AES_ACTION_ENCRYPT) {
                /* Put the ciphered tag after the ciphertext. */
 -              ccp_get_dm_area(&final_wa, 0, p_tag, 0, AES_BLOCK_SIZE);
 +              ccp_get_dm_area(&final_wa, 0, p_tag, 0, authsize);
        } else {
                /* Does this ciphered tag match the input? */
 -              ret = ccp_init_dm_workarea(&tag, cmd_q, AES_BLOCK_SIZE,
 +              ret = ccp_init_dm_workarea(&tag, cmd_q, authsize,
                                           DMA_BIDIRECTIONAL);
                if (ret)
                        goto e_tag;
 -              ret = ccp_set_dm_area(&tag, 0, p_tag, 0, AES_BLOCK_SIZE);
 +              ret = ccp_set_dm_area(&tag, 0, p_tag, 0, authsize);
                if (ret)
                        goto e_tag;
  
                ret = crypto_memneq(tag.address, final_wa.address,
 -                                  AES_BLOCK_SIZE) ? -EBADMSG : 0;
 +                                  authsize) ? -EBADMSG : 0;
                ccp_dm_free(&tag);
        }
  
@@@ -874,11 -857,11 +872,11 @@@ e_tag
        ccp_dm_free(&final_wa);
  
  e_dst:
 -      if (aes->src_len && !in_place)
 +      if (ilen > 0 && !in_place)
                ccp_free_data(&dst, cmd_q);
  
  e_src:
 -      if (aes->src_len)
 +      if (ilen > 0)
                ccp_free_data(&src, cmd_q);
  
  e_aad:
@@@ -894,7 -877,8 +892,8 @@@ e_key
        return ret;
  }
  
- static int ccp_run_aes_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
+ static noinline_for_stack int
+ ccp_run_aes_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_aes_engine *aes = &cmd->u.aes;
        struct ccp_dm_workarea key, ctx;
        bool in_place = false;
        int ret;
  
-       if (aes->mode == CCP_AES_MODE_CMAC)
-               return ccp_run_aes_cmac_cmd(cmd_q, cmd);
-       if (aes->mode == CCP_AES_MODE_GCM)
-               return ccp_run_aes_gcm_cmd(cmd_q, cmd);
        if (!((aes->key_len == AES_KEYSIZE_128) ||
              (aes->key_len == AES_KEYSIZE_192) ||
              (aes->key_len == AES_KEYSIZE_256)))
@@@ -1076,8 -1054,8 +1069,8 @@@ e_key
        return ret;
  }
  
- static int ccp_run_xts_aes_cmd(struct ccp_cmd_queue *cmd_q,
                             struct ccp_cmd *cmd)
+ static noinline_for_stack int
ccp_run_xts_aes_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_xts_aes_engine *xts = &cmd->u.xts;
        struct ccp_dm_workarea key, ctx;
@@@ -1276,7 -1254,8 +1269,8 @@@ e_key
        return ret;
  }
  
- static int ccp_run_des3_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
+ static noinline_for_stack int
+ ccp_run_des3_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_des3_engine *des3 = &cmd->u.des3;
  
@@@ -1472,7 -1451,8 +1466,8 @@@ e_key
        return ret;
  }
  
- static int ccp_run_sha_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
+ static noinline_for_stack int
+ ccp_run_sha_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_sha_engine *sha = &cmd->u.sha;
        struct ccp_dm_workarea ctx;
@@@ -1816,7 -1796,8 +1811,8 @@@ e_ctx
        return ret;
  }
  
- static int ccp_run_rsa_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
+ static noinline_for_stack int
+ ccp_run_rsa_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_rsa_engine *rsa = &cmd->u.rsa;
        struct ccp_dm_workarea exp, src, dst;
@@@ -1947,8 -1928,8 +1943,8 @@@ e_sb
        return ret;
  }
  
- static int ccp_run_passthru_cmd(struct ccp_cmd_queue *cmd_q,
                              struct ccp_cmd *cmd)
+ static noinline_for_stack int
ccp_run_passthru_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_passthru_engine *pt = &cmd->u.passthru;
        struct ccp_dm_workarea mask;
@@@ -2079,7 -2060,8 +2075,8 @@@ e_mask
        return ret;
  }
  
- static int ccp_run_passthru_nomap_cmd(struct ccp_cmd_queue *cmd_q,
+ static noinline_for_stack int
+ ccp_run_passthru_nomap_cmd(struct ccp_cmd_queue *cmd_q,
                                      struct ccp_cmd *cmd)
  {
        struct ccp_passthru_nomap_engine *pt = &cmd->u.passthru_nomap;
@@@ -2420,7 -2402,8 +2417,8 @@@ e_src
        return ret;
  }
  
- static int ccp_run_ecc_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
+ static noinline_for_stack int
+ ccp_run_ecc_cmd(struct ccp_cmd_queue *cmd_q, struct ccp_cmd *cmd)
  {
        struct ccp_ecc_engine *ecc = &cmd->u.ecc;
  
@@@ -2457,7 -2440,17 +2455,17 @@@ int ccp_run_cmd(struct ccp_cmd_queue *c
  
        switch (cmd->engine) {
        case CCP_ENGINE_AES:
-               ret = ccp_run_aes_cmd(cmd_q, cmd);
+               switch (cmd->u.aes.mode) {
+               case CCP_AES_MODE_CMAC:
+                       ret = ccp_run_aes_cmac_cmd(cmd_q, cmd);
+                       break;
+               case CCP_AES_MODE_GCM:
+                       ret = ccp_run_aes_gcm_cmd(cmd_q, cmd);
+                       break;
+               default:
+                       ret = ccp_run_aes_cmd(cmd_q, cmd);
+                       break;
+               }
                break;
        case CCP_ENGINE_XTS_AES_128:
                ret = ccp_run_xts_aes_cmd(cmd_q, cmd);
index ab40d7afdc541703e4e314fea1cb33950d2201f6,85bc1de5decec1199ef3d30795f3bdfcba029578..f3f3189f5389b4866bb47f97d4c62017cc2df023
@@@ -52,7 -52,7 +52,7 @@@ struct bpf_prog
  #define NETDEV_HASHENTRIES (1 << NETDEV_HASHBITS)
  
  struct net {
 -      refcount_t              passive;        /* To decided when the network
 +      refcount_t              passive;        /* To decide when the network
                                                 * namespace should be freed.
                                                 */
        refcount_t              count;          /* To decided when the network
@@@ -61,6 -61,7 +61,6 @@@
        spinlock_t              rules_mod_lock;
  
        u32                     hash_mix;
 -      atomic64_t              cookie_gen;
  
        struct list_head        list;           /* list of network namespaces */
        struct list_head        exit_list;      /* To linked to call pernet exit
  #endif
  #ifdef CONFIG_XDP_SOCKETS
        struct netns_xdp        xdp;
+ #endif
+ #if IS_ENABLED(CONFIG_CRYPTO_USER)
+       struct sock             *crypto_nlsk;
  #endif
        struct sock             *diag_nlsk;
        atomic_t                fnhe_genid;
This page took 0.193753 seconds and 4 git commands to generate.