Merge tag 'v6.6-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 Aug 2023 18:23:29 +0000 (11:23 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 Aug 2023 18:23:29 +0000 (11:23 -0700)
Pull crypto updates from Herbert Xu:
 "API:
   - Move crypto engine callback from tfm ctx into algorithm object
   - Fix atomic sleep bug in crypto_destroy_instance
   - Move lib/mpi into lib/crypto

  Algorithms:
   - Add chacha20 and poly1305 implementation for powerpc p10

  Drivers:
   - Add AES skcipher and aead support to starfive
   - Add Dynamic Boost Control support to ccp
   - Add support for STM32P13 platform to stm32"

* tag 'v6.6-p1' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (149 commits)
  Revert "dt-bindings: crypto: qcom,prng: Add SM8450"
  crypto: chelsio - Remove unused declarations
  X.509: if signature is unsupported skip validation
  crypto: qat - fix crypto capability detection for 4xxx
  crypto: drivers - Explicitly include correct DT includes
  crypto: engine - Remove crypto_engine_ctx
  crypto: zynqmp - Use new crypto_engine_op interface
  crypto: virtio - Use new crypto_engine_op interface
  crypto: stm32 - Use new crypto_engine_op interface
  crypto: jh7110 - Use new crypto_engine_op interface
  crypto: rk3288 - Use new crypto_engine_op interface
  crypto: omap - Use new crypto_engine_op interface
  crypto: keembay - Use new crypto_engine_op interface
  crypto: sl3516 - Use new crypto_engine_op interface
  crypto: caam - Use new crypto_engine_op interface
  crypto: aspeed - Remove non-standard sha512 algorithms
  crypto: aspeed - Use new crypto_engine_op interface
  crypto: amlogic - Use new crypto_engine_op interface
  crypto: sun8i-ss - Use new crypto_engine_op interface
  crypto: sun8i-ce - Use new crypto_engine_op interface
  ...

1  2 
MAINTAINERS
crypto/af_alg.c
drivers/crypto/caam/ctrl.c
lib/Makefile

diff --combined MAINTAINERS
@@@ -915,6 -915,18 +915,18 @@@ S:       Supporte
  F:    drivers/crypto/ccp/sev*
  F:    include/uapi/linux/psp-sev.h
  
+ AMD CRYPTOGRAPHIC COPROCESSOR (CCP) DRIVER - DBC SUPPORT
+ M:    Mario Limonciello <mario.limonciello@amd.com>
+ L:    linux-crypto@vger.kernel.org
+ S:    Supported
+ F:    drivers/crypto/ccp/dbc.c
+ F:    drivers/crypto/ccp/dbc.h
+ F:    drivers/crypto/ccp/platform-access.c
+ F:    drivers/crypto/ccp/platform-access.h
+ F:    include/uapi/linux/psp-dbc.h
+ F:    tools/crypto/ccp/*.c
+ F:    tools/crypto/ccp/*.py
  AMD DISPLAY CORE
  M:    Harry Wentland <harry.wentland@amd.com>
  M:    Leo Li <sunpeng.li@amd.com>
@@@ -1865,11 -1877,9 +1877,11 @@@ M:    Martin Povišer <povik+lin@cutebit.o
  L:    asahi@lists.linux.dev
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/adi,ssm3515.yaml
  F:    Documentation/devicetree/bindings/sound/apple,*
  F:    sound/soc/apple/*
  F:    sound/soc/codecs/cs42l83-i2c.c
 +F:    sound/soc/codecs/ssm3515.c
  
  ARM/APPLE MACHINE SUPPORT
  M:    Hector Martin <marcan@marcan.st>
@@@ -2339,7 -2349,7 +2351,7 @@@ F:      drivers/phy/mediatek
  ARM/MICROCHIP (ARM64) SoC support
  M:    Conor Dooley <conor@kernel.org>
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux.git
@@@ -2348,7 -2358,7 +2360,7 @@@ F:      arch/arm64/boot/dts/microchip
  ARM/Microchip (AT91) SoC support
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  W:    http://www.linux4sam.org
@@@ -3250,7 -3260,7 +3262,7 @@@ F:      include/uapi/linux/atm
  
  ATMEL MACB ETHERNET DRIVER
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  S:    Supported
  F:    drivers/net/ethernet/cadence/
  
@@@ -3262,8 -3272,9 +3274,8 @@@ F:      Documentation/devicetree/bindings/in
  F:    drivers/input/touchscreen/atmel_mxt_ts.c
  
  ATMEL WIRELESS DRIVER
 -M:    Simon Kelley <simon@thekelleys.org.uk>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  W:    http://www.thekelleys.org.uk/atmel
  W:    http://atmelwlandriver.sourceforge.net/
  F:    drivers/net/wireless/atmel/atmel*
@@@ -3393,7 -3404,7 +3405,7 @@@ F:      drivers/media/radio/radio-aztech
  B43 WIRELESS DRIVER
  L:    linux-wireless@vger.kernel.org
  L:    b43-dev@lists.infradead.org
 -S:    Odd Fixes
 +S:    Orphan
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/b43
  F:    drivers/net/wireless/broadcom/b43/
  
@@@ -4122,13 -4133,6 +4134,13 @@@ F:    Documentation/devicetree/bindings/sp
  F:    drivers/spi/spi-bcm63xx-hsspi.c
  F:    drivers/spi/spi-bcmbca-hsspi.c
  
 +BROADCOM BCM6348/BCM6358 SPI controller DRIVER
 +M:    Jonas Gorski <jonas.gorski@gmail.com>
 +L:    linux-spi@vger.kernel.org
 +S:    Odd Fixes
 +F:    Documentation/devicetree/bindings/spi/brcm,bcm63xx-spi.yaml
 +F:    drivers/spi/spi-bcm63xx.c
 +
  BROADCOM ETHERNET PHY DRIVERS
  M:    Florian Fainelli <florian.fainelli@broadcom.com>
  R:    Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
@@@ -4195,7 -4199,7 +4207,7 @@@ BROADCOM KONA GPIO DRIVE
  M:    Ray Jui <rjui@broadcom.com>
  R:    Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
  S:    Supported
 -F:    Documentation/devicetree/bindings/gpio/brcm,kona-gpio.txt
 +F:    Documentation/devicetree/bindings/gpio/brcm,kona-gpio.yaml
  F:    drivers/gpio/gpio-bcm-kona.c
  
  BROADCOM MPI3 STORAGE CONTROLLER DRIVER
@@@ -4462,6 -4466,7 +4474,6 @@@ CADENCE USB3 DRD IP DRIVE
  M:    Peter Chen <peter.chen@kernel.org>
  M:    Pawel Laszczak <pawell@cadence.com>
  R:    Roger Quadros <rogerq@kernel.org>
 -R:    Aswath Govindraju <a-govindraju@ti.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb.git
@@@ -4819,7 -4824,6 +4831,7 @@@ F:      drivers/input/touchscreen/chipone_ic
  
  CHROME HARDWARE PLATFORM SUPPORT
  M:    Benson Leung <bleung@chromium.org>
 +M:    Tzung-Bi Shih <tzungbi@kernel.org>
  L:    chrome-platform@lists.linux.dev
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux.git
@@@ -4887,11 -4891,7 +4899,11 @@@ L:    alsa-devel@alsa-project.org (moderat
  L:    patches@opensource.cirrus.com
  S:    Maintained
  F:    Documentation/devicetree/bindings/sound/cirrus,cs*
 +F:    drivers/mfd/cs42l43*
 +F:    drivers/pinctrl/cirrus/pinctrl-cs42l43*
 +F:    drivers/spi/spi-cs42l43*
  F:    include/dt-bindings/sound/cs*
 +F:    include/linux/mfd/cs42l43*
  F:    include/sound/cs*
  F:    sound/pci/hda/cs*
  F:    sound/pci/hda/hda_cs_dsp_ctl.*
@@@ -5152,12 -5152,10 +5164,12 @@@ S:   Maintaine
  F:    include/linux/compiler_attributes.h
  
  COMPUTE EXPRESS LINK (CXL)
 +M:    Davidlohr Bueso <dave@stgolabs.net>
 +M:    Jonathan Cameron <jonathan.cameron@huawei.com>
 +M:    Dave Jiang <dave.jiang@intel.com>
  M:    Alison Schofield <alison.schofield@intel.com>
  M:    Vishal Verma <vishal.l.verma@intel.com>
  M:    Ira Weiny <ira.weiny@intel.com>
 -M:    Ben Widawsky <bwidawsk@kernel.org>
  M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-cxl@vger.kernel.org
  S:    Maintained
@@@ -5466,7 -5464,8 +5478,7 @@@ F:      Documentation/devicetree/bindings/ne
  F:    drivers/net/can/ctucanfd/
  
  CW1200 WLAN driver
 -M:    Solomon Peachy <pizza@shaftnet.org>
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/st/cw1200/
  
  CX18 VIDEO4LINUX DRIVER
@@@ -6014,7 -6013,7 +6026,7 @@@ F:      Documentation/devicetree/bindings/mf
  F:    Documentation/devicetree/bindings/mfd/dlg,da90*.yaml
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
  F:    Documentation/devicetree/bindings/regulator/dlg,da9*.yaml
 -F:    Documentation/devicetree/bindings/regulator/slg51000.txt
 +F:    Documentation/devicetree/bindings/regulator/dlg,slg51000.yaml
  F:    Documentation/devicetree/bindings/sound/da[79]*.txt
  F:    Documentation/devicetree/bindings/thermal/da90??-thermal.txt
  F:    Documentation/devicetree/bindings/watchdog/da90??-wdt.txt
@@@ -8685,11 -8684,8 +8697,11 @@@ S:    Maintaine
  F:    drivers/input/touchscreen/resistive-adc-touch.c
  
  GENERIC STRING LIBRARY
 +M:    Kees Cook <keescook@chromium.org>
  R:    Andy Shevchenko <andy@kernel.org>
 -S:    Maintained
 +L:    linux-hardening@vger.kernel.org
 +S:    Supported
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/hardening
  F:    include/linux/string.h
  F:    include/linux/string_choices.h
  F:    include/linux/string_helpers.h
@@@ -8774,15 -8770,6 +8786,15 @@@ S:    Supporte
  F:    Documentation/networking/device_drivers/ethernet/google/gve.rst
  F:    drivers/net/ethernet/google
  
 +GOOGLE FIRMWARE DRIVERS
 +M:    Tzung-Bi Shih <tzungbi@kernel.org>
 +R:    Brian Norris <briannorris@chromium.org>
 +R:    Julius Werner <jwerner@chromium.org>
 +L:    chrome-platform@lists.linux.dev
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux.git
 +F:    drivers/firmware/google/
 +
  GPD POCKET FAN DRIVER
  M:    Hans de Goede <hdegoede@redhat.com>
  L:    platform-driver-x86@vger.kernel.org
@@@ -8826,7 -8813,6 +8838,7 @@@ R:      Michael Walle <michael@walle.cc
  S:    Maintained
  F:    drivers/gpio/gpio-regmap.c
  F:    include/linux/gpio/regmap.h
 +K:    (devm_)?gpio_regmap_(un)?register
  
  GPIO SUBSYSTEM
  M:    Linus Walleij <linus.walleij@linaro.org>
@@@ -9320,7 -9306,7 +9332,7 @@@ F:      drivers/crypto/hisilicon/hpre/hpre_c
  F:    drivers/crypto/hisilicon/hpre/hpre_main.c
  
  HISILICON HNS3 PMU DRIVER
 -M:    Guangbin Huang <huangguangbin2@huawei.com>
 +M:    Jijie Shao <shaojijie@huawei.com>
  S:    Supported
  F:    Documentation/admin-guide/perf/hns3-pmu.rst
  F:    drivers/perf/hisilicon/hns3_pmu.c
@@@ -9358,7 -9344,7 +9370,7 @@@ F:      Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/hisilicon/
  
  HISILICON PMU DRIVER
 -M:    Shaokun Zhang <zhangshaokun@hisilicon.com>
 +M:    Yicong Yang <yangyicong@hisilicon.com>
  M:    Jonathan Cameron <jonathan.cameron@huawei.com>
  S:    Supported
  W:    http://www.hisilicon.com
@@@ -9390,6 -9376,7 +9402,6 @@@ F:      drivers/crypto/hisilicon/sgl.
  F:    include/linux/hisi_acc_qm.h
  
  HISILICON ROCE DRIVER
 -M:    Haoyue Xu <xuhaoyue1@hisilicon.com>
  M:    Junxian Huang <huangjunxian6@hisilicon.com>
  L:    linux-rdma@vger.kernel.org
  S:    Maintained
@@@ -9509,12 -9496,6 +9521,12 @@@ S:    Maintaine
  W:    http://artax.karlin.mff.cuni.cz/~mikulas/vyplody/hpfs/index-e.cgi
  F:    fs/hpfs/
  
 +HS3001 Hardware Temperature and Humidity Sensor
 +M:    Andre Werner <andre.werner@systec-electronic.com>
 +L:    linux-hwmon@vger.kernel.org
 +S:    Maintained
 +F:    drivers/hwmon/hs3001.c
 +
  HSI SUBSYSTEM
  M:    Sebastian Reichel <sre@kernel.org>
  S:    Maintained
@@@ -9680,7 -9661,6 +9692,7 @@@ F:      tools/hv
  
  HYPERBUS SUPPORT
  M:    Vignesh Raghavendra <vigneshr@ti.com>
 +R:    Tudor Ambarus <tudor.ambarus@linaro.org>
  L:    linux-mtd@lists.infradead.org
  S:    Supported
  Q:    http://patchwork.ozlabs.org/project/linux-mtd/list/
@@@ -11404,8 -11384,6 +11416,8 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    Documentation/dev-tools/kunit/
  F:    include/kunit/
  F:    lib/kunit/
 +F:    rust/kernel/kunit.rs
 +F:    scripts/rustdoc_test_*
  F:    tools/testing/kunit/
  
  KERNEL USERMODE HELPER
@@@ -12292,16 -12270,6 +12304,16 @@@ F: Documentation/devicetree/bindings/cl
  F:    drivers/clk/clk-loongson2.c
  F:    include/dt-bindings/clock/loongson,ls2k-clk.h
  
 +LOONGSON SPI DRIVER
 +M:    Yinbo Zhu <zhuyinbo@loongson.cn>
 +L:    linux-spi@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml
 +F:    drivers/spi/spi-loongson-core.c
 +F:    drivers/spi/spi-loongson-pci.c
 +F:    drivers/spi/spi-loongson-plat.c
 +F:    drivers/spi/spi-loongson.h
 +
  LOONGSON-2 SOC SERIES GUTS DRIVER
  M:    Yinbo Zhu <zhuyinbo@loongson.cn>
  L:    loongarch@lists.linux.dev
@@@ -12512,7 -12480,6 +12524,7 @@@ F:   net/mctp
  
  MAPLE TREE
  M:    Liam R. Howlett <Liam.Howlett@oracle.com>
 +L:    maple-tree@lists.infradead.org
  L:    linux-mm@kvack.org
  S:    Supported
  F:    Documentation/core-api/maple_tree.rst
@@@ -12624,14 -12591,18 +12636,14 @@@ F:        Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/marvell/mvpp2/
  
  MARVELL MWIFIEX WIRELESS DRIVER
 -M:    Amitkumar Karwar <amitkarwar@gmail.com>
 -M:    Ganapathi Bhat <ganapathi017@gmail.com>
 -M:    Sharvari Harisangam <sharvari.harisangam@nxp.com>
 -M:    Xinming Hu <huxinming820@gmail.com>
 +M:    Brian Norris <briannorris@chromium.org>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/net/wireless/marvell/mwifiex/
  
  MARVELL MWL8K WIRELESS DRIVER
 -M:    Lennert Buytenhek <buytenh@wantstofly.org>
  L:    linux-wireless@vger.kernel.org
 -S:    Odd Fixes
 +S:    Orphan
  F:    drivers/net/wireless/marvell/mwl8k.c
  
  MARVELL NAND CONTROLLER DRIVER
@@@ -13819,7 -13790,7 +13831,7 @@@ F:   Documentation/devicetree/bindings/se
  F:    drivers/spi/spi-at91-usart.c
  
  MICROCHIP AUDIO ASOC DRIVERS
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/sound/atmel*
@@@ -13842,7 -13813,7 +13854,7 @@@ S:   Maintaine
  F:    drivers/crypto/atmel-ecc.*
  
  MICROCHIP EIC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/interrupt-controller/microchip,sama7g5-eic.yaml
@@@ -13915,7 -13886,7 +13927,7 @@@ F:   drivers/video/fbdev/atmel_lcdfb.
  F:    include/video/atmel_lcdc.h
  
  MICROCHIP MCP16502 PMIC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/regulator/mcp16502-regulator.txt
@@@ -13942,7 -13913,7 +13954,7 @@@ F:   Documentation/devicetree/bindings/mt
  F:    drivers/mtd/nand/raw/atmel/*
  
  MICROCHIP OTPC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
@@@ -13981,7 -13952,7 +13993,7 @@@ F:   Documentation/devicetree/bindings/fp
  F:    drivers/fpga/microchip-spi.c
  
  MICROCHIP PWM DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-pwm@vger.kernel.org
  S:    Supported
@@@ -13997,7 -13968,7 +14009,7 @@@ F:   drivers/iio/adc/at91-sama5d2_adc.
  F:    include/dt-bindings/iio/adc/at91-sama5d2_adc.h
  
  MICROCHIP SAMA5D2-COMPATIBLE SHUTDOWN CONTROLLER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  S:    Supported
  F:    Documentation/devicetree/bindings/power/reset/atmel,sama5d2-shdwc.yaml
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
@@@ -14009,12 -13980,12 +14021,12 @@@ T:        git https://git.kernel.org/pub/scm/l
  F:    drivers/soc/microchip/
  
  MICROCHIP SPI DRIVER
 -M:    Tudor Ambarus <tudor.ambarus@linaro.org>
 +M:    Ryan Wanner <ryan.wanner@microchip.com>
  S:    Supported
  F:    drivers/spi/spi-atmel.*
  
  MICROCHIP SSC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/misc/atmel-ssc.txt
@@@ -14043,7 -14014,7 +14055,7 @@@ F:   drivers/usb/gadget/udc/atmel_usba_ud
  
  MICROCHIP WILC1000 WIFI DRIVER
  M:    Ajay Singh <ajay.kathat@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-wireless@vger.kernel.org
  S:    Supported
  F:    drivers/net/wireless/microchip/wilc1000/
@@@ -14835,16 -14806,6 +14847,16 @@@ F: net/netfilter/xt_CONNSECMARK.
  F:    net/netfilter/xt_SECMARK.c
  F:    net/netlabel/
  
 +NETWORKING [MACSEC]
 +M:    Sabrina Dubroca <sd@queasysnail.net>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/macsec.c
 +F:    include/net/macsec.h
 +F:    include/uapi/linux/if_macsec.h
 +K:    macsec
 +K:    \bmdo_
 +
  NETWORKING [MPTCP]
  M:    Matthieu Baerts <matthieu.baerts@tessares.net>
  M:    Mat Martineau <martineau@kernel.org>
@@@ -15030,7 -14991,6 +15042,7 @@@ F:   include/linux/power/bq27xxx_battery.
  
  NOLIBC HEADER FILE
  M:    Willy Tarreau <w@1wt.eu>
 +M:    Thomas Weißschuh <linux@weissschuh.net>
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/wtarreau/nolibc.git
  F:    tools/include/nolibc/
@@@ -16337,7 -16297,6 +16349,7 @@@ F:   drivers/pci/controller/dwc/pci-exyno
  PCI DRIVER FOR SYNOPSYS DESIGNWARE
  M:    Jingoo Han <jingoohan1@gmail.com>
  M:    Gustavo Pimentel <gustavo.pimentel@synopsys.com>
 +M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  L:    linux-pci@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
@@@ -17090,7 -17049,6 +17102,7 @@@ F:   drivers/net/ppp/pptp.
  PRESSURE STALL INFORMATION (PSI)
  M:    Johannes Weiner <hannes@cmpxchg.org>
  M:    Suren Baghdasaryan <surenb@google.com>
 +R:    Peter Ziljstra <peterz@infradead.org>
  S:    Maintained
  F:    include/linux/psi*
  F:    kernel/sched/psi.c
@@@ -17490,7 -17448,6 +17502,7 @@@ F:   drivers/media/tuners/qt1010
  
  QUALCOMM ATH12K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath12k@lists.infradead.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
@@@ -17498,7 -17455,6 +17510,7 @@@ F:   drivers/net/wireless/ath/ath12k
  
  QUALCOMM ATHEROS ATH10K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath10k@lists.infradead.org
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
@@@ -17508,7 -17464,6 +17520,7 @@@ F:   drivers/net/wireless/ath/ath10k
  
  QUALCOMM ATHEROS ATH11K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath11k@lists.infradead.org
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath11k
@@@ -17600,7 -17555,6 +17612,7 @@@ QUALCOMM ETHQOS ETHERNET DRIVE
  M:    Vinod Koul <vkoul@kernel.org>
  R:    Bhupesh Sharma <bhupesh.sharma@linaro.org>
  L:    netdev@vger.kernel.org
 +L:    linux-arm-msm@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/qcom,ethqos.yaml
  F:    drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c
@@@ -18029,7 -17983,7 +18041,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    drivers/net/wireless/realtek/rtlwifi/
  
  REALTEK WIRELESS DRIVER (rtw88)
 -M:    Yan-Hsuan Chuang <tony0620emma@gmail.com>
 +M:    Ping-Ke Shih <pkshih@realtek.com>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
  F:    drivers/net/wireless/realtek/rtw88/
@@@ -18554,14 -18508,17 +18566,14 @@@ RTL8180 WIRELESS DRIVE
  L:    linux-wireless@vger.kernel.org
  S:    Orphan
  W:    https://wireless.wiki.kernel.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
  F:    drivers/net/wireless/realtek/rtl818x/rtl8180/
  
  RTL8187 WIRELESS DRIVER
 -M:    Herton Ronaldo Krzesinski <herton@canonical.com>
 -M:    Hin-Tak Leung <htl10@users.sourceforge.net>
 +M:    Hin-Tak Leung <hintak.leung@gmail.com>
  M:    Larry Finger <Larry.Finger@lwfinger.net>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
  W:    https://wireless.wiki.kernel.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
  F:    drivers/net/wireless/realtek/rtl818x/rtl8187/
  
  RTL8XXXU WIRELESS DRIVER (rtl8xxxu)
@@@ -18597,8 -18554,6 +18609,8 @@@ R:   Boqun Feng <boqun.feng@gmail.com
  R:    Gary Guo <gary@garyguo.net>
  R:    Björn Roy Baron <bjorn3_gh@protonmail.com>
  R:    Benno Lossin <benno.lossin@proton.me>
 +R:    Andreas Hindborg <a.hindborg@samsung.com>
 +R:    Alice Ryhl <aliceryhl@google.com>
  L:    rust-for-linux@vger.kernel.org
  S:    Supported
  W:    https://github.com/Rust-for-Linux/linux
@@@ -18640,7 -18595,7 +18652,7 @@@ L:   linux-s390@vger.kernel.or
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git
  F:    Documentation/driver-api/s390-drivers.rst
 -F:    Documentation/s390/
 +F:    Documentation/arch/s390/
  F:    arch/s390/
  F:    drivers/s390/
  F:    drivers/watchdog/diag288_wdt.c
@@@ -18701,7 -18656,7 +18713,7 @@@ M:   Niklas Schnelle <schnelle@linux.ibm.
  M:    Gerald Schaefer <gerald.schaefer@linux.ibm.com>
  L:    linux-s390@vger.kernel.org
  S:    Supported
 -F:    Documentation/s390/pci.rst
 +F:    Documentation/arch/s390/pci.rst
  F:    arch/s390/pci/
  F:    drivers/pci/hotplug/s390_pci_hpc.c
  
@@@ -18718,7 -18673,7 +18730,7 @@@ M:   Halil Pasic <pasic@linux.ibm.com
  M:    Jason Herne <jjherne@linux.ibm.com>
  L:    linux-s390@vger.kernel.org
  S:    Supported
 -F:    Documentation/s390/vfio-ap*
 +F:    Documentation/arch/s390/vfio-ap*
  F:    drivers/s390/crypto/vfio_ap*
  
  S390 VFIO-CCW DRIVER
@@@ -18728,7 -18683,7 +18740,7 @@@ R:   Halil Pasic <pasic@linux.ibm.com
  L:    linux-s390@vger.kernel.org
  L:    kvm@vger.kernel.org
  S:    Supported
 -F:    Documentation/s390/vfio-ccw.rst
 +F:    Documentation/arch/s390/vfio-ccw.rst
  F:    drivers/s390/cio/vfio_ccw*
  F:    include/uapi/linux/vfio_ccw.h
  
@@@ -19270,6 -19225,13 +19282,6 @@@ F:  Documentation/devicetree/bindings/se
  F:    drivers/tty/serdev/
  F:    include/linux/serdev.h
  
 -SERIAL DRIVERS
 -M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -L:    linux-serial@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/serial/
 -F:    drivers/tty/serial/
 -
  SERIAL IR RECEIVER
  M:    Sean Young <sean@mess.org>
  L:    linux-media@vger.kernel.org
@@@ -19321,6 -19283,7 +19333,6 @@@ F:   drivers/misc/sgi-gru
  SGI XP/XPC/XPNET DRIVER
  M:    Robin Holt <robinmholt@gmail.com>
  M:    Steve Wahl <steve.wahl@hpe.com>
 -R:    Mike Travis <mike.travis@hpe.com>
  S:    Maintained
  F:    drivers/misc/sgi-xp/
  
@@@ -19631,6 -19594,13 +19643,6 @@@ M:  Nicolas Pitre <nico@fluxnic.net
  S:    Odd Fixes
  F:    drivers/net/ethernet/smsc/smc91x.*
  
 -SMM665 HARDWARE MONITOR DRIVER
 -M:    Guenter Roeck <linux@roeck-us.net>
 -L:    linux-hwmon@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/hwmon/smm665.rst
 -F:    drivers/hwmon/smm665.c
 -
  SMSC EMC2103 HARDWARE MONITOR DRIVER
  M:    Steve Glendinning <steve.glendinning@shawell.net>
  L:    linux-hwmon@vger.kernel.org
@@@ -20432,6 -20402,7 +20444,6 @@@ F:   drivers/pwm/pwm-stm32
  F:    include/linux/*/stm32-*tim*
  
  STMMAC ETHERNET DRIVER
 -M:    Giuseppe Cavallaro <peppe.cavallaro@st.com>
  M:    Alexandre Torgue <alexandre.torgue@foss.st.com>
  M:    Jose Abreu <joabreu@synopsys.com>
  L:    netdev@vger.kernel.org
@@@ -21090,39 -21061,6 +21102,39 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml
  F:    sound/soc/ti/
  
 +TEXAS INSTRUMENTS AUDIO (ASoC/HDA) DRIVERS
 +M:    Shenghao Ding <shenghao-ding@ti.com>
 +M:    Kevin Lu <kevin-lu@ti.com>
 +M:    Baojun Xu <x1077012@ti.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/tas2552.txt
 +F:    Documentation/devicetree/bindings/sound/tas2562.yaml
 +F:    Documentation/devicetree/bindings/sound/tas2770.yaml
 +F:    Documentation/devicetree/bindings/sound/tas27xx.yaml
 +F:    Documentation/devicetree/bindings/sound/ti,pcm1681.txt
 +F:    Documentation/devicetree/bindings/sound/ti,pcm3168a.yaml
 +F:    Documentation/devicetree/bindings/sound/ti,tlv320*.yaml
 +F:    Documentation/devicetree/bindings/sound/tlv320adcx140.yaml
 +F:    Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
 +F:    Documentation/devicetree/bindings/sound/tpa6130a2.txt
 +F:    include/sound/tas2*.h
 +F:    include/sound/tlv320*.h
 +F:    include/sound/tpa6130a2-plat.h
 +F:    sound/pci/hda/tas2781_hda_i2c.c
 +F:    sound/soc/codecs/pcm1681.c
 +F:    sound/soc/codecs/pcm1789*.*
 +F:    sound/soc/codecs/pcm179x*.*
 +F:    sound/soc/codecs/pcm186x*.*
 +F:    sound/soc/codecs/pcm3008.*
 +F:    sound/soc/codecs/pcm3060*.*
 +F:    sound/soc/codecs/pcm3168a*.*
 +F:    sound/soc/codecs/pcm5102a.c
 +F:    sound/soc/codecs/pcm512x*.*
 +F:    sound/soc/codecs/tas2*.*
 +F:    sound/soc/codecs/tlv320*.*
 +F:    sound/soc/codecs/tpa6130a2.*
 +
  TEXAS INSTRUMENTS DMA DRIVERS
  M:    Peter Ujfalusi <peter.ujfalusi@gmail.com>
  L:    dmaengine@vger.kernel.org
@@@ -21699,16 -21637,14 +21711,16 @@@ W:        https://github.com/srcres258/linux-d
  T:    git git://github.com/srcres258/linux-doc.git doc-zh-tw
  F:    Documentation/translations/zh_TW/
  
 -TTY LAYER
 +TTY LAYER AND SERIAL DRIVERS
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  M:    Jiri Slaby <jirislaby@kernel.org>
 +L:    linux-kernel@vger.kernel.org
 +L:    linux-serial@vger.kernel.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git
 +F:    Documentation/devicetree/bindings/serial/
  F:    Documentation/driver-api/serial/
  F:    drivers/tty/
 -F:    drivers/tty/serial/serial_core.c
  F:    include/linux/selection.h
  F:    include/linux/serial.h
  F:    include/linux/serial_core.h
@@@ -21737,14 -21673,11 +21749,14 @@@ S:        Orpha
  F:    drivers/net/ethernet/dec/tulip/
  
  TUN/TAP driver
 -M:    Maxim Krasnyansky <maxk@qti.qualcomm.com>
 +M:    Willem de Bruijn <willemdebruijn.kernel@gmail.com>
 +M:    Jason Wang <jasowang@redhat.com>
  S:    Maintained
  W:    http://vtun.sourceforge.net/tun
  F:    Documentation/networking/tuntap.rst
  F:    arch/um/os-Linux/drivers/
 +F:    drivers/net/tap.c
 +F:    drivers/net/tun.c
  
  TURBOCHANNEL SUBSYSTEM
  M:    "Maciej W. Rozycki" <macro@orcam.me.uk>
@@@ -21967,8 -21900,9 +21979,8 @@@ S:   Maintaine
  F:    drivers/usb/misc/apple-mfi-fastcharge.c
  
  USB AR5523 WIRELESS DRIVER
 -M:    Pontus Fuchs <pontus.fuchs@gmail.com>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/ath/ar5523/
  
  USB ATTACHED SCSI
@@@ -22245,8 -22179,9 +22257,8 @@@ F:   drivers/usb/gadget/legacy/webcam.
  F:    include/uapi/linux/usb/g_uvc.h
  
  USB WIRELESS RNDIS DRIVER (rndis_wlan)
 -M:    Jussi Kivilinna <jussi.kivilinna@iki.fi>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/legacy/rndis_wlan.c
  
  USB XHCI DRIVER
@@@ -22535,6 -22470,7 +22547,6 @@@ L:   virtualization@lists.linux-foundatio
  S:    Maintained
  F:    drivers/block/virtio_blk.c
  F:    drivers/scsi/virtio_scsi.c
 -F:    drivers/vhost/scsi.c
  F:    include/uapi/linux/virtio_blk.h
  F:    include/uapi/linux/virtio_scsi.h
  
@@@ -22633,16 -22569,6 +22645,16 @@@ F: include/linux/vhost_iotlb.
  F:    include/uapi/linux/vhost.h
  F:    kernel/vhost_task.c
  
 +VIRTIO HOST (VHOST-SCSI)
 +M:    "Michael S. Tsirkin" <mst@redhat.com>
 +M:    Jason Wang <jasowang@redhat.com>
 +M:    Mike Christie <michael.christie@oracle.com>
 +R:    Paolo Bonzini <pbonzini@redhat.com>
 +R:    Stefan Hajnoczi <stefanha@redhat.com>
 +L:    virtualization@lists.linux-foundation.org
 +S:    Maintained
 +F:    drivers/vhost/scsi.c
 +
  VIRTIO I2C DRIVER
  M:    Conghui Chen <conghui.chen@intel.com>
  M:    Viresh Kumar <viresh.kumar@linaro.org>
@@@ -23030,7 -22956,7 +23042,7 @@@ F:   drivers/input/misc/wistron_btns.
  
  WL3501 WIRELESS PCMCIA CARD DRIVER
  L:    linux-wireless@vger.kernel.org
 -S:    Odd fixes
 +S:    Orphan
  F:    drivers/net/wireless/legacy/wl3501*
  
  WMI BINARY MOF DRIVER
@@@ -23210,8 -23136,7 +23222,8 @@@ F:   arch/x86/platfor
  
  X86 PLATFORM UV HPE SUPERDOME FLEX
  M:    Steve Wahl <steve.wahl@hpe.com>
 -R:    Mike Travis <mike.travis@hpe.com>
 +R:    Justin Ernst <justin.ernst@hpe.com>
 +R:    Kyle Meyer <kyle.meyer@hpe.com>
  R:    Dimitri Sivanich <dimitri.sivanich@hpe.com>
  R:    Russ Anderson <russ.anderson@hpe.com>
  S:    Supported
@@@ -23602,8 -23527,11 +23614,8 @@@ S:  Maintaine
  F:    mm/zbud.c
  
  ZD1211RW WIRELESS DRIVER
 -M:    Ulrich Kunitz <kune@deine-taler.de>
  L:    linux-wireless@vger.kernel.org
 -L:    zd1211-devs@lists.sourceforge.net (subscribers-only)
 -S:    Maintained
 -W:    http://zd1211.ath.cx/wiki/DriverRewrite
 +S:    Orphan
  F:    drivers/net/wireless/zydas/zd1211rw/
  
  ZD1301 MEDIA DRIVER
diff --combined crypto/af_alg.c
@@@ -320,18 -320,21 +320,21 @@@ static int alg_setkey_by_key_serial(str
  
        if (IS_ERR(ret)) {
                up_read(&key->sem);
+               key_put(key);
                return PTR_ERR(ret);
        }
  
        key_data = sock_kmalloc(&ask->sk, key_datalen, GFP_KERNEL);
        if (!key_data) {
                up_read(&key->sem);
+               key_put(key);
                return -ENOMEM;
        }
  
        memcpy(key_data, ret, key_datalen);
  
        up_read(&key->sem);
+       key_put(key);
  
        err = type->setkey(ask->private, key_data, key_datalen);
  
@@@ -1192,6 -1195,7 +1195,7 @@@ struct af_alg_async_req *af_alg_alloc_a
  
        areq->areqlen = areqlen;
        areq->sk = sk;
+       areq->first_rsgl.sgl.sgt.sgl = areq->first_rsgl.sgl.sgl;
        areq->last_rsgl = NULL;
        INIT_LIST_HEAD(&areq->rsgl_list);
        areq->tsgl = NULL;
@@@ -1241,8 -1245,6 +1245,8 @@@ int af_alg_get_rsgl(struct sock *sk, st
                                return -ENOMEM;
                }
  
 +              rsgl->sgl.need_unpin =
 +                      iov_iter_extract_will_pin(&msg->msg_iter);
                rsgl->sgl.sgt.sgl = rsgl->sgl.sgl;
                rsgl->sgl.sgt.nents = 0;
                rsgl->sgl.sgt.orig_nents = 0;
                }
  
                sg_mark_end(rsgl->sgl.sgt.sgl + rsgl->sgl.sgt.nents - 1);
 -              rsgl->sgl.need_unpin =
 -                      iov_iter_extract_will_pin(&msg->msg_iter);
  
                /* chain the new scatterlist with previous one */
                if (areq->last_rsgl)
@@@ -9,6 -9,7 +9,7 @@@
  #include <linux/device.h>
  #include <linux/of_address.h>
  #include <linux/of_irq.h>
+ #include <linux/platform_device.h>
  #include <linux/sys_soc.h>
  #include <linux/fsl/mc.h>
  
@@@ -382,8 -383,8 +383,8 @@@ static void kick_trng(struct device *de
                val = ent_delay;
                /* min. freq. count, equal to 1/4 of the entropy sample length */
                wr_reg32(&r4tst->rtfrqmin, val >> 2);
 -              /* max. freq. count, equal to 16 times the entropy sample length */
 -              wr_reg32(&r4tst->rtfrqmax, val << 4);
 +              /* disable maximum frequency count */
 +              wr_reg32(&r4tst->rtfrqmax, RTFRQMAX_DISABLE);
        }
  
        wr_reg32(&r4tst->rtsdctl, (val << RTSDCTL_ENT_DLY_SHIFT) |
@@@ -740,6 -741,109 +741,109 @@@ static int caam_ctrl_rng_init(struct de
        return 0;
  }
  
+ /* Indicate if the internal state of the CAAM is lost during PM */
+ static int caam_off_during_pm(void)
+ {
+       bool not_off_during_pm = of_machine_is_compatible("fsl,imx6q") ||
+                                of_machine_is_compatible("fsl,imx6qp") ||
+                                of_machine_is_compatible("fsl,imx6dl");
+       return not_off_during_pm ? 0 : 1;
+ }
+ static void caam_state_save(struct device *dev)
+ {
+       struct caam_drv_private *ctrlpriv = dev_get_drvdata(dev);
+       struct caam_ctl_state *state = &ctrlpriv->state;
+       struct caam_ctrl __iomem *ctrl = ctrlpriv->ctrl;
+       u32 deco_inst, jr_inst;
+       int i;
+       state->mcr = rd_reg32(&ctrl->mcr);
+       state->scfgr = rd_reg32(&ctrl->scfgr);
+       deco_inst = (rd_reg32(&ctrl->perfmon.cha_num_ms) &
+                    CHA_ID_MS_DECO_MASK) >> CHA_ID_MS_DECO_SHIFT;
+       for (i = 0; i < deco_inst; i++) {
+               state->deco_mid[i].liodn_ms =
+                       rd_reg32(&ctrl->deco_mid[i].liodn_ms);
+               state->deco_mid[i].liodn_ls =
+                       rd_reg32(&ctrl->deco_mid[i].liodn_ls);
+       }
+       jr_inst = (rd_reg32(&ctrl->perfmon.cha_num_ms) &
+                  CHA_ID_MS_JR_MASK) >> CHA_ID_MS_JR_SHIFT;
+       for (i = 0; i < jr_inst; i++) {
+               state->jr_mid[i].liodn_ms =
+                       rd_reg32(&ctrl->jr_mid[i].liodn_ms);
+               state->jr_mid[i].liodn_ls =
+                       rd_reg32(&ctrl->jr_mid[i].liodn_ls);
+       }
+ }
+ static void caam_state_restore(const struct device *dev)
+ {
+       const struct caam_drv_private *ctrlpriv = dev_get_drvdata(dev);
+       const struct caam_ctl_state *state = &ctrlpriv->state;
+       struct caam_ctrl __iomem *ctrl = ctrlpriv->ctrl;
+       u32 deco_inst, jr_inst;
+       int i;
+       wr_reg32(&ctrl->mcr, state->mcr);
+       wr_reg32(&ctrl->scfgr, state->scfgr);
+       deco_inst = (rd_reg32(&ctrl->perfmon.cha_num_ms) &
+                    CHA_ID_MS_DECO_MASK) >> CHA_ID_MS_DECO_SHIFT;
+       for (i = 0; i < deco_inst; i++) {
+               wr_reg32(&ctrl->deco_mid[i].liodn_ms,
+                        state->deco_mid[i].liodn_ms);
+               wr_reg32(&ctrl->deco_mid[i].liodn_ls,
+                        state->deco_mid[i].liodn_ls);
+       }
+       jr_inst = (rd_reg32(&ctrl->perfmon.cha_num_ms) &
+                  CHA_ID_MS_JR_MASK) >> CHA_ID_MS_JR_SHIFT;
+       for (i = 0; i < jr_inst; i++) {
+               wr_reg32(&ctrl->jr_mid[i].liodn_ms,
+                        state->jr_mid[i].liodn_ms);
+               wr_reg32(&ctrl->jr_mid[i].liodn_ls,
+                        state->jr_mid[i].liodn_ls);
+       }
+       if (ctrlpriv->virt_en == 1)
+               clrsetbits_32(&ctrl->jrstart, 0, JRSTART_JR0_START |
+                             JRSTART_JR1_START | JRSTART_JR2_START |
+                             JRSTART_JR3_START);
+ }
+ static int caam_ctrl_suspend(struct device *dev)
+ {
+       const struct caam_drv_private *ctrlpriv = dev_get_drvdata(dev);
+       if (ctrlpriv->caam_off_during_pm && !ctrlpriv->optee_en)
+               caam_state_save(dev);
+       return 0;
+ }
+ static int caam_ctrl_resume(struct device *dev)
+ {
+       struct caam_drv_private *ctrlpriv = dev_get_drvdata(dev);
+       int ret = 0;
+       if (ctrlpriv->caam_off_during_pm && !ctrlpriv->optee_en) {
+               caam_state_restore(dev);
+               /* HW and rng will be reset so deinstantiation can be removed */
+               devm_remove_action(dev, devm_deinstantiate_rng, dev);
+               ret = caam_ctrl_rng_init(dev);
+       }
+       return ret;
+ }
+ static DEFINE_SIMPLE_DEV_PM_OPS(caam_ctrl_pm_ops, caam_ctrl_suspend, caam_ctrl_resume);
  /* Probe routine for CAAM top (controller) level */
  static int caam_probe(struct platform_device *pdev)
  {
  
        caam_imx = (bool)imx_soc_match;
  
+       ctrlpriv->caam_off_during_pm = caam_imx && caam_off_during_pm();
        if (imx_soc_match) {
                /*
                 * Until Layerscape and i.MX OP-TEE get in sync,
@@@ -1033,6 -1139,7 +1139,7 @@@ static struct platform_driver caam_driv
        .driver = {
                .name = "caam",
                .of_match_table = caam_match,
+               .pm = pm_ptr(&caam_ctrl_pm_ops),
        },
        .probe       = caam_probe,
  };
diff --combined lib/Makefile
@@@ -82,13 -82,7 +82,13 @@@ obj-$(CONFIG_TEST_STATIC_KEYS) += test_
  obj-$(CONFIG_TEST_DYNAMIC_DEBUG) += test_dynamic_debug.o
  obj-$(CONFIG_TEST_PRINTF) += test_printf.o
  obj-$(CONFIG_TEST_SCANF) += test_scanf.o
 +
  obj-$(CONFIG_TEST_BITMAP) += test_bitmap.o
 +ifeq ($(CONFIG_CC_IS_CLANG)$(CONFIG_KASAN),yy)
 +# FIXME: Clang breaks test_bitmap_const_eval when KASAN and GCOV are enabled
 +GCOV_PROFILE_test_bitmap.o := n
 +endif
 +
  obj-$(CONFIG_TEST_UUID) += test_uuid.o
  obj-$(CONFIG_TEST_XARRAY) += test_xarray.o
  obj-$(CONFIG_TEST_MAPLE_TREE) += test_maple_tree.o
@@@ -167,7 -161,7 +167,7 @@@ obj-$(CONFIG_BTREE) += btree.
  obj-$(CONFIG_INTERVAL_TREE) += interval_tree.o
  obj-$(CONFIG_ASSOCIATIVE_ARRAY) += assoc_array.o
  obj-$(CONFIG_DEBUG_PREEMPT) += smp_processor_id.o
 -obj-$(CONFIG_DEBUG_LIST) += list_debug.o
 +obj-$(CONFIG_LIST_HARDENED) += list_debug.o
  obj-$(CONFIG_DEBUG_OBJECTS) += debugobjects.o
  
  obj-$(CONFIG_BITREVERSE) += bitrev.o
@@@ -259,7 -253,6 +259,6 @@@ obj-$(CONFIG_DQL) += dynamic_queue_limi
  obj-$(CONFIG_GLOB) += glob.o
  obj-$(CONFIG_GLOB_SELFTEST) += globtest.o
  
- obj-$(CONFIG_MPILIB) += mpi/
  obj-$(CONFIG_DIMLIB) += dim/
  obj-$(CONFIG_SIGNATURE) += digsig.o