Commit Graph

1104329 Commits

Author SHA1 Message Date
qctecmdr
9b66754069 Merge "soc: qcom: add QTI charger-ulog-glink driver" 2022-05-26 23:01:31 -07:00
Ingrid Gallardo
c0a973ccf9 soc: hw-fence: hardware fence driver interface
Hardware Fence interface used for communication
of client drivers with fence controller.

Change-Id: I7624b94d790edea8f2a63fce80e2d1370d1f0a93
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-05-26 16:23:04 -07:00
Ingrid Gallardo
653be265a4 soc: qcom: sync: export qcom speculative fence interface
This change adds an interface to check if a given speculative
fence is bound. If fence is not bound, it will wait for the
speculative fence ioctl to bind the fence, or else timeout.

Change-Id: Iee014ad282c9b53d8785f0f9341ae28a9c616969
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-05-26 16:23:00 -07:00
Linus Torvalds
16477cdfef asm-generic changes for 5.19
The asm-generic tree contains three separate changes for linux-5.19:
 
 - The h8300 architecture is retired after it has been effectively
   unmaintained for a number of years. This is the last architecture we
   supported that has no MMU implementation, but there are still a few
   architectures (arm, m68k, riscv, sh and xtensa) that support CPUs with
   and without an MMU.
 
 - A series to add a generic ticket spinlock that can be shared by most
   architectures with a working cmpxchg or ll/sc type atomic, including
   the conversion of riscv, csky and openrisc. This series is also a
   prerequisite for the loongarch64 architecture port that will come as
   a separate pull request.
 
 - A cleanup of some exported uapi header files to ensure they can be
   included from user space without relying on other kernel headers.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKPlXoACgkQmmx57+YA
 GNkxrRAAnuSgOUo9JC5C4Gm2Q9yhEUHU1QIYeVO0jlan5CkF18bo1Loptq4MdQtO
 /0pXJPH8rFhDSJQLetO4AAjEMDfJGR5ibmf7SasO03HjqC9++fIeN047MbnkHAwY
 hFqIkgqn4l+g1RMWK5WUSDJ3XQ7p5/yWzpg/CuxJ+D0w9by/LWI5A+2NKGXOS3GF
 yi7cWvIKC1l+PmrH3BFA+JYVTvFzlr9P6x5pSEBi6HmjGQR+Xn3s0bnIf6DGRZ+B
 Q6v03kMxtcqI9e9C0r0r7ZGbdMuRTYbGrksa4EfK0yJM9P0HchhTtT9zawAK7Ddv
 VMM4B+9r60UEM++hOLS6XrLJdn+Fv+OJDnhONb5c+Mndd8cwV1JbOlVbUlGkn92e
 WSdUCW6m0TBzDs9Ae1++1kUl1LodlcmSzxlb0ueAhU01QacCPlneyIEKUhcrCl5w
 ITVw4YVa/BVCh+HvTEdhhak/Qb/nWiojMY+UIH5smiwj6FSFdwEmmgCgHAKprQaA
 STMxRnccFknGW9CZheoMATYsPIHQKPlm9lbiulSoMLDHxGwshU/6vKD4HDoZU51d
 HPmUZeKVPahXCUXB4iFI3qD4Ltxaru9VbgfUiY18VB2oc6Mk+0oeh6luqwsrgBdz
 P2sQ2riZKhN5Frm3DCh7IbJqoqKHlLMWh0itpNllgP5SDmDJjng=
 =ri2Q
 -----END PGP SIGNATURE-----

Merge tag 'asm-generic-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic

Pull asm-generic updates from Arnd Bergmann:
 "The asm-generic tree contains three separate changes for linux-5.19:

   - The h8300 architecture is retired after it has been effectively
     unmaintained for a number of years. This is the last architecture
     we supported that has no MMU implementation, but there are still a
     few architectures (arm, m68k, riscv, sh and xtensa) that support
     CPUs with and without an MMU.

   - A series to add a generic ticket spinlock that can be shared by
     most architectures with a working cmpxchg or ll/sc type atomic,
     including the conversion of riscv, csky and openrisc. This series
     is also a prerequisite for the loongarch64 architecture port that
     will come as a separate pull request.

   - A cleanup of some exported uapi header files to ensure they can be
     included from user space without relying on other kernel headers"

* tag 'asm-generic-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
  h8300: remove stale bindings and symlink
  sparc: add asm/stat.h to UAPI compile-test coverage
  powerpc: add asm/stat.h to UAPI compile-test coverage
  mips: add asm/stat.h to UAPI compile-test coverage
  riscv: add linux/bpf_perf_event.h to UAPI compile-test coverage
  kbuild: prevent exported headers from including <stdlib.h>, <stdbool.h>
  agpgart.h: do not include <stdlib.h> from exported header
  csky: Move to generic ticket-spinlock
  RISC-V: Move to queued RW locks
  RISC-V: Move to generic spinlocks
  openrisc: Move to ticket-spinlock
  asm-generic: qrwlock: Document the spinlock fairness requirements
  asm-generic: qspinlock: Indicate the use of mixed-size atomics
  asm-generic: ticket-lock: New generic ticket-based spinlock
  remove the h8300 architecture
2022-05-26 10:50:30 -07:00
Linus Torvalds
ecf0aa5317 ARM: ARMv4T/v5 multiplatform support for v5.19, part 1
This series has been 12 years in the making, it mostly finishes the
 work that was started with the founding of Linaro to clean up platform
 support in the kernel.
 
 The largest change here is a cleanup of the omap1 platform, which
 is the final ARM machine type to get converted to the common-clk
 subsystem. All the omap1 specific drivers are now made independent of the
 mach/*.h headers to allow the platform to be part of a generic ARMv4/v5
 multiplatform kernel. The last bit that enables this support is still
 missing here while we wait for some last dependencies to make it into
 the mainline kernel through other subsystems.
 
 The s3c24xx, ixp4xx, iop32x, ep93xx and dove platforms were all almost
 at the point of allowing multiplatform kernels, this work gets completed
 here along with a few additional cleanup.  At the same time, the s3c24xx
 and s3c64xx are now deprecated and expected to get removed in the future.
 
 The PXA and OMAP1 bits are in a separate branch because of dependencies.
 Once both branches are merged, only the three Intel StrongARM platforms
 (RiscPC, Footbridge/NetWinder and StrongARM1100) need separate kernels,
 and there are no plans to include these.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKOP3sACgkQmmx57+YA
 GNk+DhAAmrPNuS8JDlCRPa76Nd9PC9aitnnEGYytQ6bgwexKd3qdvP7gdUtr7jlV
 8k4KiGnnZZjEGd4i5cAVhSCyBbCt4oPKhato62KneEsO19xLsVmmTpQg1LPK75do
 mHYKpc+6932Lp6WrtI1F75id0phx684tpZp9P4ggXwMwgYkagq9rcO+mGUNZWDc8
 D9SdAmoObtSCoBCYYbq2VhAPA79mSKKVpLGehzd+Gq5cuf/jJQD0u1E00izkdyZc
 r/5acQ7PHQlVXqSONYgCpkvDTqmjg9cvVCKeKLpFspV3f6vBVRgV60UGfwhpdPHY
 N119KUJtPf81xnLSxsqBFA34LMSerrH72YM5cYupKiiYcTDr+Yw6zrtNR6ktkt/B
 F1Tc/QV+A9CGergxljy39G1smEuwKtNiVA//NSlUORCHxgwa5XUB0mQIzNcWARa4
 oMDLhBF7ES211CB7Yto2FR6gBQbh2A9HSpjOh6kxdHrRb4FCgoXjPhzBoMxPoSFu
 XIzJpMb18K4bI+hKRYddEOK5V0kHt9mzT7ViGT/2+n13IHKIGmKrZxwDH7mohAW9
 4GF77gGbQsE9szajkx5EG1t+PWextQeeMyYW05bXO/mbDwA0n7EdjGpBeedvTZw3
 6gUWVahfYp9hZWPdxJ4fbGnlbSovCq0y4tj5fbZHPh6AOAtmvWY=
 =CTtN
 -----END PGP SIGNATURE-----

Merge tag 'arm-multiplatform-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARMv4T/v5 multiplatform support from Arnd Bergmann:
 "This series has been 12 years in the making, it mostly finishes the
  work that was started with the founding of Linaro to clean up platform
  support in the kernel.

  The largest change here is a cleanup of the omap1 platform, which is
  the final ARM machine type to get converted to the common-clk
  subsystem. All the omap1 specific drivers are now made independent of
  the mach/*.h headers to allow the platform to be part of a generic
  ARMv4/v5 multiplatform kernel.

  The last bit that enables this support is still missing here while we
  wait for some last dependencies to make it into the mainline kernel
  through other subsystems.

  The s3c24xx, ixp4xx, iop32x, ep93xx and dove platforms were all almost
  at the point of allowing multiplatform kernels, this work gets
  completed here along with a few additional cleanup. At the same time,
  the s3c24xx and s3c64xx are now deprecated and expected to get removed
  in the future.

  The PXA and OMAP1 bits are in a separate branch because of
  dependencies. Once both branches are merged, only the three Intel
  StrongARM platforms (RiscPC, Footbridge/NetWinder and StrongARM1100)
  need separate kernels, and there are no plans to include these"

* tag 'arm-multiplatform-5.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (61 commits)
  ARM: ixp4xx: Consolidate Kconfig fixing issue
  ARM: versatile: Add missing of_node_put in dcscb_init
  ARM: config: Refresh IXP4xx config after multiplatform
  ARM: omap1: add back omap_set_dma_priority() stub
  ARM: omap: fix missing declaration warnings
  ARM: omap: fix address space warnings from sparse
  ARM: spear: remove include/mach/ subdirectory
  ARM: davinci: remove include/mach/ subdirectory
  ARM: omap2: remove include/mach/ subdirectory
  integrator: remove empty ap_init_early()
  ARM: s3c: fix include path
  MAINTAINERS: omap1: Add Janusz as an additional maintainer
  ARM: omap1: htc_herald: fix typos in comments
  ARM: OMAP1: fix typos in comments
  ARM: OMAP1: clock: Remove noop code
  ARM: OMAP1: clock: Remove unused code
  ARM: OMAP1: clock: Fix UART rate reporting algorithm
  ARM: OMAP1: clock: Fix early UART rate issues
  ARM: OMAP1: Prepare for conversion of OMAP1 clocks to CCF
  ARM: omap1: fix build with no SoC selected
  ...
2022-05-26 10:43:09 -07:00
Linus Torvalds
a0439cf4ec ARM: defconfig updates for 5.19
Lots of smaller additions to the defconfig files for both 32-bit
 and 64-bit arm platforms, enabling drivers that are now usable
 on common hardware, and a few options to make it possible to boot
 a file system image using systemd.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKOQ2EACgkQmmx57+YA
 GNmaRxAAtqPojqqVPuUAtwhj05CHfoD4EsKtqptXMOHenZBnY4w8d6cXgN1Iapqe
 1DHG2lXYlqls89u+tSQ6GCPUdRgCvbPjahGnuZ+W9buHkYUEADBiulRJlnopzHQX
 sUDcL7bs3hPgUegyEbh+RspKdxGHEU0mtJ5ghdPa523Wl7XMd4LLWgPom9YVwqE5
 y14iASsuCnPfkL2ro7wtmtMuEVMvGInBQzy3NTc/cBda3nEI3pDrJOLuos1YByaU
 euoZfePu2JbFS+2xhH6BOJ5oz0ClqvY3NZmW0V+G1R6hPmnDz18WlyrjrQZRS4o/
 x+NCLFJdMp8TlJgYkg5nCmdrjAbaor5S5qXTaA3D+TMjPURG0Aoiotho8VjSriwD
 Uy5irnkn+26sn6ivgKxja+qDJISvKXujScZA1dZwcyQmY+0cwLg/sgS4AhJU4uT3
 I2ENqIq7cm9xq4ZZWwVAIFGh/F3XbSS5z3YrMFvKphDpDTvrYysWNGKQijjGTeqp
 pgXU7P1TGpWnUkqUMO/Hd6WxtI56aEeQ4u0P+53Na3hFfvO/zzUkNdS3dahjCUbI
 fBdowjrqln11eMu8ixygWj3QRNKf8ADIs7McVzbGNmvKyc+4XTtA43xMimM/azbq
 JaoUsUBUX0589n9ONjEF/8TR4pftH9Y9sK9TuQVHaISsHpeka3o=
 =+8LA
 -----END PGP SIGNATURE-----

Merge tag 'arm-defconfig-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM defconfig updates from Arnd Bergmann:
 "Lots of smaller additions to the defconfig files for both 32-bit and
  64-bit arm platforms, enabling drivers that are now usable on common
  hardware, and a few options to make it possible to boot a file system
  image using systemd"

* tag 'arm-defconfig-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (39 commits)
  ARM: configs: Enable ASoC AC'97 glue
  ARM: configs: Enable audio on BeagleBone Black in multi_v7_defconfig
  ARM: configs: at91: Enable AUTOFS_FS required by systemd
  ARM: configs: at91: Enable options required for systemd
  ARM: configs: at91: sama7: enable CONFIG_RESET_CONTROLLER
  ARM: configs: at91: sama7: add MCHP PDMC and DMIC drivers
  ARM: configs: at91: sama7: Enable MTD_UBI_BLOCK
  ARM: configs: at91: sama7: Enable MTD_UBI_FASTMAP
  ARM: configs: at91: sama7: add xisc and csi2dc
  ARM: multi_v7_defconfig: add atmel video pipeline modules
  ARM: configs: at91: Remove MTD_BLOCK and use MTD_UBI_BLOCK for read only block FS
  arm64: defconfig: Enable the WM8524 codec driver
  arm64: defconfig: Enable modules for arm displays
  arm: nomadik: drop selecting obsolete CLKSRC_NOMADIK_MTU_SCHED_CLOCK
  arm64: defconfig: Enable Renesas RZ/V2M SoC
  arm64: defconfig: Enable ARCH_R9A07G043
  arm64: defconfig: Enable configs for DisplayPort on J721e
  arm64: defconfig: Build Tegra ASRC module
  ARM: multi_v7_defconfig: enable CONFIG_ARCH_BCMBCA in armv7 defconfig
  arm: mediatek: select arch timer for mt7629
  ...
2022-05-26 10:37:02 -07:00
Linus Torvalds
cc3c470ae4 ARM: driver changes for 5.19
There are minor updates to SoC specific drivers for chips by Rockchip,
 Samsung, NVIDIA, TI, NXP, i.MX, Qualcomm, and Broadcom. Noteworthy
 driver changes include:
 
 - Several conversions of DT bindings to yaml format.
 
 - Renesas adds driver support for R-Car V4H, RZ/V2M and RZ/G2UL SoCs.
 
 - Qualcomm adds a bus driver for the SSC (Snapdragon Sensor Core),
   and support for more chips in the RPMh power domains and the soc-id.
 
 - NXP has a new driver for the HDMI blk-ctrl on i.MX8MP.
 
 - Apple M1 gains support for the on-chip NVMe controller, making it
   possible to finally use the internal disks. This also includes SoC
   drivers for their RTKit IPC and for the SART DMA address filter.
 
 For other subsystems that merge their drivers through the SoC tree,
 we have
 
 - Firmware drivers for the ARM firmware stack including TEE, OP-TEE,
   SCMI and FF-A get a number of smaller updates and cleanups. OP-TEE
   now has a cache for firmware argument structures as an optimization,
   and SCMI now supports the 3.1 version of the specification.
 
 - Reset controller updates to Amlogic, ASpeed, Renesas and ACPI drivers
 
 - Memory controller updates for Tegra, and a few updates for other
   platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKOXOoACgkQmmx57+YA
 GNlpVQ//eQGfL0WktE5G/y0mCVuVHtXT5nSjHMgjTOdb9+QvaATCfxnLXvP7Gq7C
 7YzJd68G+2ZC4rUkkjTxyMICT7eIrJSAIAFn4PWee4EQ5DfbHgG+1tToTjxqb+QQ
 6wGB5MVaYUhjZE30kY2E8a+OKxHtEnkt9wcch6ei0vzsMZquQJF6byfHd5+I4Knd
 CyDmXX8ZGXK3FnhvuBLr3Rgwyhs0X4Ju7UaONLZxBYxdnh8WmymRszmMnv5qEkub
 KDe8fbhFamOT3Z55JdCA5xq7LvUzjsKpTGFxFcS0ptbkTmtAsuyYqqiWvAPx3D5u
 5TxVGSx9QKid6fpIsITZ2ptO6fgljh1W9b/3Y3/eltudXsM1qqSxyN2Hre+M9egf
 WEDADqbNR5Y5+bq1iZWI348jXkNHVPpsLHI9Ihqf4yyrKwFkmRmNLnws53XTAPH2
 FPXZvJjwFDBDHGfewSoLFePXUPNytVLXbr6Mq72ZyTDIBDU8Mxh666Wd8bu4tgbG
 1Y2pMjDIdXDOsljM6Of5D3XjM1kuDwEmFxWGy+cKLgoEbHLeE1xIbTjUir4687+d
 VNHdtsIRFPRZzz2lUSmI8vlA2aewMWrkOF/Ulz8xh6gG8uitMSfOxghg4IWOfRVM
 mlvgFP5eqTInmQcbWRxaRO9JzP+rPp1sAcEpsBmuEHw5Akflbc8=
 =XoLF
 -----END PGP SIGNATURE-----

Merge tag 'arm-drivers-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM driver updates from Arnd Bergmann:
 "There are minor updates to SoC specific drivers for chips by Rockchip,
  Samsung, NVIDIA, TI, NXP, i.MX, Qualcomm, and Broadcom.

  Noteworthy driver changes include:

   - Several conversions of DT bindings to yaml format.

   - Renesas adds driver support for R-Car V4H, RZ/V2M and RZ/G2UL SoCs.

   - Qualcomm adds a bus driver for the SSC (Snapdragon Sensor Core),
     and support for more chips in the RPMh power domains and the
     soc-id.

   - NXP has a new driver for the HDMI blk-ctrl on i.MX8MP.

   - Apple M1 gains support for the on-chip NVMe controller, making it
     possible to finally use the internal disks. This also includes SoC
     drivers for their RTKit IPC and for the SART DMA address filter.

  For other subsystems that merge their drivers through the SoC tree, we
  have

   - Firmware drivers for the ARM firmware stack including TEE, OP-TEE,
     SCMI and FF-A get a number of smaller updates and cleanups. OP-TEE
     now has a cache for firmware argument structures as an
     optimization, and SCMI now supports the 3.1 version of the
     specification.

   - Reset controller updates to Amlogic, ASpeed, Renesas and ACPI
     drivers

   - Memory controller updates for Tegra, and a few updates for other
     platforms"

* tag 'arm-drivers-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (159 commits)
  memory: tegra: Add MC error logging on Tegra186 onward
  memory: tegra: Add memory controller channels support
  memory: tegra: Add APE memory clients for Tegra234
  memory: tegra: Add Tegra234 support
  nvme-apple: fix sparse endianess warnings
  soc/tegra: pmc: Document core domain fields
  soc: qcom: pdr: use static for servreg_* variables
  soc: imx: fix semicolon.cocci warnings
  soc: renesas: R-Car V3U is R-Car Gen4
  soc: imx: add i.MX8MP HDMI blk-ctrl
  soc: imx: imx8m-blk-ctrl: Add i.MX8MP media blk-ctrl
  soc: imx: add i.MX8MP HSIO blk-ctrl
  soc: imx: imx8m-blk-ctrl: set power device name
  soc: qcom: llcc: Add sc8180x and sc8280xp configurations
  dt-bindings: arm: msm: Add sc8180x and sc8280xp LLCC compatibles
  soc/tegra: pmc: Select REGMAP
  dt-bindings: reset: st,sti-powerdown: Convert to yaml
  dt-bindings: reset: st,sti-picophyreset: Convert to yaml
  dt-bindings: reset: socfpga: Convert to yaml
  dt-bindings: reset: snps,axs10x-reset: Convert to yaml
  ...
2022-05-26 10:32:47 -07:00
Linus Torvalds
ae86218328 ARM: DT changes for 5.19, part 1
There are 40 branches this time, adding a lot of new hardware
 support, and cleanups. Krzysztof Kozlowski continues his treewide
 cleanups.
 
 There are a number of new SoCs, all of them as part of existing
 families, and typically added along with a reference board:
 
  - Renesas RZ/G2UL (R9A07G043) is the single-core version of the RZ/G2L
    general-purpose MPU.
 
  - Renesas RZ/V2M (R9A09G011) is a smart camera SoC
 
  - Renesas R-Car V4H (R8A779G0) is an automotive chip with Cortex-A76
    cores and deep learning accerlation.
 
  - Broadcom BCM47622 is a new broadband SoC based on a quad Cortex-A7
    and dual Wifi-6.
 
  - Corstone1000 is a generic platform from Arm that is used for designing
    custom SoCs, the support for now is for the Fixed Virtual Platform
    emulation for it.
 
  - Mediatek MT8195 (Kompanio 1200) is a high-end consumer chip used
    in upcoming Chromebooks.
 
  - NXP i.MXRT1050 is a Cortex-M7 based microcontroller, the first
    MMU-less SoC to be added in a while
 
 New machines based on already supported SoCs this time are mainly
 for 32-bit platforms and include:
 
  - Two wireless routers based on Broadcom bcm4708
 
  - 30 new boards based on NXP i.MX6, i.MX7 and i.MX8 families, mostly
    for the industrial embedded market, and on NXP LS1021A based
    IOT board.
 
  - Two ethernet switches based on Microchip LAN966
 
  - Eight Qualcomm Snapdragon based machines, including a smartwatch,
    a Chromebook board and some phones
 
  - Another phone based on the old ST-Ericsson Ux500 platform
 
  - Seven STM32MP1 based boards
 
  - Four single-board computers based on Rockchip RK3566/RK3568
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKOp8cACgkQmmx57+YA
 GNk33hAAn/mY+QDyj8sUwtY4AAVtut2QgyBm7NBWLgiYDQx52yBwP7rUxeKyDqZF
 q6LK5z3NA7NN5REpfn6WKBEFo6wkzTzg4Gev/h+9hwLyozch8vl4etBfZGak4A7m
 cLCONZdw4FMCQ10oLq+ib/WJeJv2W700307OkJ3dN73qdbWLRF1hoyG+uMTHuEqL
 If755IR+EYhxYz8CfJhCYb2BcqhRq047n3sEqolZpFtz5oHUW2dADASgWpV+3yNc
 ql8cH0f5OTKbFS1lM4k7cWbMW2vHWx7jZnXZDyMfy3EE5SOb4V/s9JFJSS1pAfPQ
 OWuq194LT+SIXTTT3DQ+lSNcMhlkyeXQ0JQE1wAAp0vov4V8vHGvEGk0MCku5QHp
 zKKONPfcn9aoWtsh4GaCvt0cP0m7lKyjxJvNSjBy2C9dVW8t4UlIVZr+V8hR2Ufp
 SpCCzMbttrcUK6rHzQmWsR563mhfszzuzDfZi4RK2aFLJKhFi5hEQF2tDxLq8Y09
 vIY/OkRpSwahgbiyj/zhKrJtnhFHh1m6wZJG+Sk9lTJikEhaRinriy0lgu08xssG
 krBHPOVhNY11rqlzosBU39JOya1/J2iTxjo7ccNmGfO4MDanE+Cl41a5wSNjciw1
 ihi2zAUBClGg0TnQ+HJylFPS3ZFyGEtbYH/d6td25DtwaaIsaxU=
 =LsM7
 -----END PGP SIGNATURE-----

Merge tag 'arm-dt-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM DT updates from Arnd Bergmann:
 "There are 40 branches this time, adding a lot of new hardware support,
  and cleanups. Krzysztof Kozlowski continues his treewide cleanups.

  There are a number of new SoCs, all of them as part of existing
  families, and typically added along with a reference board:

   - Renesas RZ/G2UL (R9A07G043) is the single-core version of the
     RZ/G2L general-purpose MPU.

   - Renesas RZ/V2M (R9A09G011) is a smart camera SoC

   - Renesas R-Car V4H (R8A779G0) is an automotive chip with Cortex-A76
     cores and deep learning accerlation.

   - Broadcom BCM47622 is a new broadband SoC based on a quad Cortex-A7
     and dual Wifi-6.

   - Corstone1000 is a generic platform from Arm that is used for
     designing custom SoCs, the support for now is for the Fixed Virtual
     Platform emulation for it.

   - Mediatek MT8195 (Kompanio 1200) is a high-end consumer chip used in
     upcoming Chromebooks.

   - NXP i.MXRT1050 is a Cortex-M7 based microcontroller, the first
     MMU-less SoC to be added in a while

  New machines based on already supported SoCs this time are mainly for
  32-bit platforms and include:

   - Two wireless routers based on Broadcom bcm4708

   - 30 new boards based on NXP i.MX6, i.MX7 and i.MX8 families, mostly
     for the industrial embedded market, and on NXP LS1021A based IOT
     board.

   - Two ethernet switches based on Microchip LAN966

   - Eight Qualcomm Snapdragon based machines, including a smartwatch, a
     Chromebook board and some phones

   - Another phone based on the old ST-Ericsson Ux500 platform

   - Seven STM32MP1 based boards

   - Four single-board computers based on Rockchip RK3566/RK3568"

* tag 'arm-dt-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (791 commits)
  ARM: dts: kswitch-d10: enable networking
  ARM: dts: lan966x: add switch node
  ARM: dts: lan966x: add serdes node
  ARM: dts: lan966x: add reset switch reset node
  ARM: dts: lan966x: add MIIM nodes
  ARM: dts: lan966x: add hwmon node
  ARM: dts: lan966x: add basic Kontron KSwitch D10 support
  ARM: dts: lan966x: add flexcom I2C nodes
  ARM: dts: lan966x: add flexcom SPI nodes
  ARM: dts: lan966x: add all flexcom usart nodes
  ARM: dts: lan966x: add missing uart DMA channel
  ARM: dts: lan966x: add sgpio node
  ARM: dts: lan966x: swap dma channels for crypto node
  ARM: dts: lan966x: rename pinctrl nodes
  ARM: dts: at91: sama7g5: remove interrupt-parent from gic node
  ARM: dts: at91: use generic node name for dataflash
  ARM: dts: turris-omnia: Add atsha204a node
  arm64: dts: mt8192: Follow binding order for SCP registers
  arm64: dts: mediatek: add mtk-snfi for mt7622
  arm64: dts: mediatek: mt8195-demo: enable uart1
  ...
2022-05-26 10:28:12 -07:00
Linus Torvalds
c011dd537f ARM: updates for 32-bit SoCs
These updates are for platform specific code in arch/arm/, mostly fixing
 minor issues. The at91 platform gains support for better power
 management on the lan966 platform and new firmware on the sama5
 platform. The mediatek soc drivers in turn are enabled for the new
 mt8195 SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmKORHMACgkQmmx57+YA
 GNnKYA//QhTTZePOMqHZHBVU4dqJuHrjd+rwME5u7a6hqSe3VYaFao6LF+P5fAzR
 IWk8svgCJLIdRx4tnA+kE7LIBsJoPwXYxhGUlgM5CfrxYClQuofnWP58Z+EbIAXx
 VIboLBW1Anw5y7zw+0JkB01DMuGzDDFnUJ4Y+0M3aW3VGC8wJXc+dM+t8BWOn7OW
 DNTcXfJgkRJBtzT++tMU4Z7Kmn//i4xohuT7dwJW4vvIfTL350Bl5Z1EHGnScfMk
 HgbJD5iF7Z12jj7ureuWengr/MN1eAPs18ZdWRcmo4Ie5IDWB50dMoYifjp/tslO
 oXRODrGCuX9yOjcjleGU1mAbb7zqoaThZcbI0yjVOaVwyU0fQR9NFJTqmSEEX97p
 LPZHU1CtAjRns7BW3ons9wPhy4s1xSPopJaHiXDwMMzAlx+kTcoFlFFvWCSlrcOC
 MMo+eN1BQ3SbIxi3Ji3p6MnmSLIiE/wq4nKCEagKAv+AjtqRXYDIsT+28A96Xgeo
 1R5agDamDMp0h6ZrhHMGSIgppWe+qvX14Jp3Hw0Nocgdyf8ABDR9H3/gZasXKbZu
 LrbNLn3vNVKTMn9YpM0T94Uwf0nFPH6MOzFVmjahRute3TU7ioSXxbVPpNuiOkXj
 RFXe1YUoILjLJgHZSUEpdHP+meGUjeScHTQt6jV97WfTeq2ZALg=
 =Eoh1
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull 32-bit ARM SoC updates from Arnd Bergmann:
 "These updates are for platform specific code in arch/arm/, mostly
  fixing minor issues.

  The at91 platform gains support for better power management on the
  lan966 platform and new firmware on the sama5 platform. The mediatek
  soc drivers in turn are enabled for the new mt8195 SoC"

* tag 'arm-soc-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (34 commits)
  ARM: at91: debug: add lan966 support
  ARM: at91: pm: add support for sama5d2 secure suspend
  ARM: at91: add code to handle secure calls
  ARM: at91: Kconfig: implement PIT64B selection
  ARM: at91: pm: add quirks for pm
  ARM: at91: pm: use kernel documentation style
  ARM: at91: pm: introduce macros for pm mode replacement
  ARM: at91: pm: keep documentation inline with structure members
  orion5x: fix typos in comments
  ARM: hisi: Add missing of_node_put after of_find_compatible_node
  ARM: shmobile: rcar-gen2: Drop comma after OF match table sentinel
  ARM: shmobile: Drop commas after dt_compat sentinels
  soc: mediatek: mutex: remove mt8195 MOD0 and SOF0 definition
  MAINTAINERS: Add Broadcom BCMBCA entry
  arm: bcmbca: add arch bcmbca machine entry
  MAINTAINERS: Broadcom internal lists aren't maintainers
  dt-bindings: pwrap: mediatek: Update pwrap document for mt8195
  soc: mediatek: add DDP_DOMPONENT_DITHER0 enum for mt8195 vdosys0
  soc: mediatek: add mtk-mutex support for mt8195 vdosys0
  soc: mediatek: add mtk-mmsys support for mt8195 vdosys0
  ...
2022-05-26 10:25:22 -07:00
Uros Bizjak
3378323bbb locking/lockref: Use try_cmpxchg64 in CMPXCHG_LOOP macro
Use try_cmpxchg64 instead of cmpxchg64 in CMPXCHG_LOOP macro.
x86 CMPXCHG instruction returns success in ZF flag, so this
change saves a compare after cmpxchg (and related move instruction
in front of cmpxchg). The main loop of lockref_get improves from:

  13:	48 89 c1             	mov    %rax,%rcx
  16:	48 c1 f9 20          	sar    $0x20,%rcx
  1a:	83 c1 01             	add    $0x1,%ecx
  1d:	48 89 ce             	mov    %rcx,%rsi
  20:	89 c1                	mov    %eax,%ecx
  22:	48 89 d0             	mov    %rdx,%rax
  25:	48 c1 e6 20          	shl    $0x20,%rsi
  29:	48 09 f1             	or     %rsi,%rcx
  2c:	f0 48 0f b1 4d 00    	lock cmpxchg %rcx,0x0(%rbp)
  32:	48 39 d0             	cmp    %rdx,%rax
  35:	75 17                	jne    4e <lockref_get+0x4e>

to:

  13:	48 89 ca             	mov    %rcx,%rdx
  16:	48 c1 fa 20          	sar    $0x20,%rdx
  1a:	83 c2 01             	add    $0x1,%edx
  1d:	48 89 d6             	mov    %rdx,%rsi
  20:	89 ca                	mov    %ecx,%edx
  22:	48 c1 e6 20          	shl    $0x20,%rsi
  26:	48 09 f2             	or     %rsi,%rdx
  29:	f0 48 0f b1 55 00    	lock cmpxchg %rdx,0x0(%rbp)
  2f:	75 02                	jne    33 <lockref_get+0x33>

[ Michael Ellerman and Mark Rutland confirm that code generation on
  powerpc and arm64 respectively is also ok, even though they do not
  have a native arch_try_cmpxchg() implementation, and rely on the
  default fallback case    - Linus ]

Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
Tested-by: Michael Ellerman <mpe@ellerman.id.au>
Tested-by: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Waiman.Long@hp.com
Cc: paulmck@linux.vnet.ibm.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-05-26 09:52:53 -07:00
Linus Torvalds
babf0bb978 xfs: Changes for 5.19-rc1
This update includes:
 - support for printk message indexing.
 - large extent counts to provide support for up to 2^47 data extents and 2^32
   attribute extents, allowing us to scale beyond 4 billion data extents
   to billions of xattrs per inode.
 - conversion of various flags fields to be consistently declared as
   unsigned bit fields.
 - improvements to realtime extent accounting and converts them to per-cpu
   counters to match all the other block and inode accounting.
 - reworks core log formatting code to reduce iterations, have a shorter, cleaner
   fast path and generally be easier to understand and maintain.
 - improvements to rmap btree searches that reduce overhead by up
   to 30% resulting in xfs_scrub runtime reductions of 15%.
 - improvements to reflink that remove the size limitations in remapping operations
   and greatly reduce the size of transaction reservations.
 - reworks the minimum log size calculations to allow us to change transaction
   reservations without changing the minimum supported log size.
 - removal of quota warning support as it has never been used on Linux.
 - intent whiteouts to allow us to cancel intents that are completed entirely
   in memory rather than having use CPU and disk bandwidth formatting and writing
   them into the journal when it is not necessary. This makes rmap, reflink and
   extent freeing slightly more efficient, but provides massive improvements
   for....
 - Logged Attribute Replay feature support. This is a fundamental change to the
   way we modify attributes, laying the foundation for future integration of
   attribute modifications as part of other atomic transactional operations the
   filesystem performs.
 - Lots of cleanups and fixes for the logged attribute replay functionality.
 -----BEGIN PGP SIGNATURE-----
 
 iQJIBAABCgAyFiEEmJOoJ8GffZYWSjj/regpR/R1+h0FAmKO2lIUHGRhdmlkQGZy
 b21vcmJpdC5jb20ACgkQregpR/R1+h0cYRAAutdpA5BZzfgpqnRbmjkOzCmhp6xj
 mSB6A8iBvlhtfY8p0IFFSbTT6jnf+EWfnsjy/jopojhhz5vCqYKfhGM6P9KBHxfz
 amxfmWZd3XWcnc8Ay9hcjLIa7QLQr8PXh3zJhjiYm8PvsrtNzsiEKrh6lxG6pe0w
 vQiq062ColCdN5DcuFVtfScsynCrzZCbUWFGm3y27NF00JpLdm8aBO57/ZaSFVdA
 UKKsogoPUNkRIbmf81IjTWTx2f0syNQyjrK+CX0sxGb6nzcoU/dT8qQ5t/U5gPTc
 cGpHE6vyBLdNA6BlnrFBoVAQ/M8n+ixnYy7XytZuTL5Izo80N+Vo+U5d1nLvC+fn
 ZLKAxbtpudqjy2O393Nv0cqEkT/xPUy2x3IvNL1rKXlQmNWt+KFGuiNrE+y2W4WT
 1bfbnmUJi0Knde4MD43iImwwaocXXdtVkED9f68aknZLCihqGEoi1EmU1Sr4+Wbj
 D8lXZe4BZfGVCHoA2sDtgJsATAG5rdBu/Y6lJcEfUSblvwF2Ufh0r9ehieDrnGmq
 asCTuXmIX/AzUQDa7JjgAzo2sgdhI+nOIPWJeKDVHRdpFjq+7xV573Iqa77Brik9
 DNxAMATh5bZc+9paDib8Za55yE7NJO1cM/UJkwwqn3rvbV5hYki0XZvlKZQsJGig
 ur5otF9Sdz+AcmE=
 =yUEM
 -----END PGP SIGNATURE-----

Merge tag 'xfs-5.19-for-linus' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux

Pull xfs updates from Dave Chinner:
 "This is a big update with lots of new code. The summary below them
  all, so I'll just touch on teh higlights. The two main new features
  are Large Extent Counts and Logged Attribute Replay - these are two
  new foundational features that we are building more complex future
  features on top of.

  For upcoming functionality, we need to be able to store hundreds of
  millions of xattrs per inode. The Large Extent Count feature removes
  the limits that prevent this scale of xattr storage, and while we were
  modifying the on disk extent count format we also increased the number
  of data extents we support per inode from 2^32 to 2^47.

  We also need to be able to modify xattrs as part of larger atomic
  transactions rather than as standalone transactions. The Logged
  Attribute Replay feature introduces the infrastructure that allows us
  to use intents to record the attribute modifications in the journal
  before we start them, hence allowing other atomic transactions to log
  attribute modification intents and then defer the actual modification
  to later. If we then crash, log recovery then guarantees that the
  attribute is replayed in the context of the atomic transaction that
  logged the intent.

  A significant chunk of the commits in this merge are for the base
  attribute replay functionality along with fixes, improvements and
  cleanups related to this new functioanlity. Allison deserves a big
  round of thanks for her ongoing work to get this functionality into
  XFS.

  There are also many other smaller changes and improvements, so overall
  this is one of the bigger XFS merge requests in some time.

  I will be following up next week with another smaller pull request -
  we already have another round of fixes and improvements to the logged
  attribute replay functionality just about ready to go. They'll soak
  and test over the next week, and I'll send a pull request for them
  near the end of the merge window.

  Summary:

   - support for printk message indexing.

   - large extent counts to provide support for up to 2^47 data extents
     and 2^32 attribute extents, allowing us to scale beyond 4 billion
     data extents to billions of xattrs per inode.

   - conversion of various flags fields to be consistently declared as
     unsigned bit fields.

   - improvements to realtime extent accounting and converts them to
     per-cpu counters to match all the other block and inode accounting.

   - reworks core log formatting code to reduce iterations, have a
     shorter, cleaner fast path and generally be easier to understand
     and maintain.

   - improvements to rmap btree searches that reduce overhead by up to
     30% resulting in xfs_scrub runtime reductions of 15%.

   - improvements to reflink that remove the size limitations in
     remapping operations and greatly reduce the size of transaction
     reservations.

   - reworks the minimum log size calculations to allow us to change
     transaction reservations without changing the minimum supported log
     size.

   - removal of quota warning support as it has never been used on
     Linux.

   - intent whiteouts to allow us to cancel intents that are completed
     entirely in memory rather than having use CPU and disk bandwidth
     formatting and writing them into the journal when it is not
     necessary. This makes rmap, reflink and extent freeing slightly
     more efficient, but provides massive improvements for....

   - Logged Attribute Replay feature support. This is a fundamental
     change to the way we modify attributes, laying the foundation for
     future integration of attribute modifications as part of other
     atomic transactional operations the filesystem performs.

   - Lots of cleanups and fixes for the logged attribute replay
     functionality"

* tag 'xfs-5.19-for-linus' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (124 commits)
  xfs: can't use kmem_zalloc() for attribute buffers
  xfs: detect empty attr leaf blocks in xfs_attr3_leaf_verify
  xfs: ATTR_REPLACE algorithm with LARP enabled needs rework
  xfs: use XFS_DA_OP flags in deferred attr ops
  xfs: remove xfs_attri_remove_iter
  xfs: switch attr remove to xfs_attri_set_iter
  xfs: introduce attr remove initial states into xfs_attr_set_iter
  xfs: xfs_attr_set_iter() does not need to return EAGAIN
  xfs: clean up final attr removal in xfs_attr_set_iter
  xfs: remote xattr removal in xfs_attr_set_iter() is conditional
  xfs: XFS_DAS_LEAF_REPLACE state only needed if !LARP
  xfs: split remote attr setting out from replace path
  xfs: consolidate leaf/node states in xfs_attr_set_iter
  xfs: kill XFS_DAC_LEAF_ADDNAME_INIT
  xfs: separate out initial attr_set states
  xfs: don't set quota warning values
  xfs: remove warning counters from struct xfs_dquot_res
  xfs: remove quota warning limit from struct xfs_quota_limits
  xfs: rework deferred attribute operation setup
  xfs: make xattri_leaf_bp more useful
  ...
2022-05-25 19:34:40 -07:00
Linus Torvalds
e375780b63 \n
-----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEq1nRK9aeMoq1VSgcnJ2qBz9kQNkFAmKOIC0ACgkQnJ2qBz9k
 QNmmqwf+PlZrxoXoDxxw5LdXnIXj6qwN5p/5mKDmKt7CPU8Vt5Reb8GA3b2OcUj2
 XaqQLOpEVrGW9nVKgKzUIujJtK9Sa4IlHSuwYGN3ZTYnsh0rT7VhIyfVNn2Zngo9
 juDHaGrE+g2c8hz3eUGrnkIeiHy/Ny0QEHLjxaXzYYpx3XInzGSmMS3/4/I8tFyr
 G/g1KasTTeBMR3aVh0pt4TvT/p7E/BJL3fFVrsQyeFBFrxisUennUtmK9ngcU7CH
 Y7hEl8CYMNXfm06ZH6Dt1oX9BzFjU9x18kOYAVhpuhzIA3VViL1iWPbyK/8xl1eZ
 PIRsOdDyVWtlcZdkmmlHc9Bnrj4AFA==
 =e7PC
 -----END PGP SIGNATURE-----

Merge tag 'fsnotify_for_v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

Pull fsnotify updates from Jan Kara:
 "The biggest part of this is support for fsnotify inode marks that
  don't pin inodes in memory but rather get evicted together with the
  inode (they are useful if userspace needs to exclude receipt of events
  from potentially large subtrees using fanotify ignore marks).

  There is also a fix for more consistent handling of events sent to
  parent and a fix of sparse(1) complaints"

* tag 'fsnotify_for_v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  fanotify: fix incorrect fmode_t casts
  fsnotify: consistent behavior for parent not watching children
  fsnotify: introduce mark type iterator
  fanotify: enable "evictable" inode marks
  fanotify: use fsnotify group lock helpers
  fanotify: implement "evictable" inode marks
  fanotify: factor out helper fanotify_mark_update_flags()
  fanotify: create helper fanotify_mark_user_flags()
  fsnotify: allow adding an inode mark without pinning inode
  dnotify: use fsnotify group lock helpers
  nfsd: use fsnotify group lock helpers
  audit: use fsnotify group lock helpers
  inotify: use fsnotify group lock helpers
  fsnotify: create helpers for group mark_mutex lock
  fsnotify: make allow_dups a property of the group
  fsnotify: pass flags argument to fsnotify_alloc_group()
  fsnotify: fix wrong lockdep annotations
  inotify: move control flags from mask to mark flags
  inotify: show inotify mask flags in proc fdinfo
2022-05-25 19:29:54 -07:00
Linus Torvalds
8b728edc5b \n
-----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEq1nRK9aeMoq1VSgcnJ2qBz9kQNkFAmKOH70ACgkQnJ2qBz9k
 QNkRBwgAxhAQmdNGzsMmE9wlF/Dj9VyGioug9thdUBMfEL6xXr1/Gf0e+fMLFFSr
 h2niti2jcuAuYSMqJNuss1Qdo8rWuGbKvjEyqzDfgJ1VDy6oGD14i1qPbKUv1/LN
 AkH4kClQpsltPYYOq9gkagOwRtHaMPCRc1HreqMGk/rDqCe26vZ4xkp2zr328Dt7
 JVdiHNnLj5d03xt3LWgchtqptdaRHJm8ymvICNcIxV3Ievxs+p21BhA/2m/v22/i
 sG/Kg9g7+bQ5sTI+DQHCjodylm9PciFviTRPc3xOkjXDLQ/Md63RlNoHja6uCrPD
 OxvH/L9rZvJ/yfSrg7ztDxcB1vGT/w==
 =UWYT
 -----END PGP SIGNATURE-----

Merge tag 'fs_for_v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

Pull writeback and ext2 cleanups from Jan Kara:
 "One small ext2 cleanup and one writeback spelling fix"

* tag 'fs_for_v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  writeback: fix typo in comment
  fs: ext2: Fix duplicate included linux/dax.h
2022-05-25 19:24:06 -07:00
Linus Torvalds
3f306ea2e1 dma-mapping updates for Linux 5.19
- don't over-decrypt memory (Robin Murphy)
  - takes min align mask into account for the swiotlb max mapping size
    (Tianyu Lan)
  - use GFP_ATOMIC in dma-debug (Mikulas Patocka)
  - fix DMA_ATTR_NO_KERNEL_MAPPING on xen/arm (me)
  - don't fail on highmem CMA pages in dma_direct_alloc_pages (me)
  - cleanup swiotlb initialization and share more code with swiotlb-xen
    (me, Stefano Stabellini)
 -----BEGIN PGP SIGNATURE-----
 
 iQI/BAABCgApFiEEgdbnc3r/njty3Iq9D55TZVIEUYMFAmKObTQLHGhjaEBsc3Qu
 ZGUACgkQD55TZVIEUYObmA//dIcDB/q4iFGD+WJh4MhM+asx0ZsdF2OJz42WEhgT
 Z9duOrgcneEQundCamqJP9rNTs980LHDA8uWQC5rZEc9vxuRVOdS7bSgYRUwWh6B
 r0ZjOsvQCn+ChoZML8uyk4rfmEINq+EvJuec3G5fgecZOhPuJS2i2uzzv5cHwqgP
 ChC0fwyZlkfdECXgvZXbEoCJLfTgGNlziN6Ai8dirSoqgEQUoCsY89/M7OiEBvV2
 R4XUWD7OvQERfB4t6xLuUHyzf9PAuWB+OiblRVNeAmK3lMjxVrc3k4kIowgklnzD
 8hfmphAa9Zou3zdfi6Gd4fiQRHRVOwKVp1rtqUmJ+lPSiwyMzu64z9ld2+2qac0h
 V4sSr/yJkhxnBT4/0MkTChvhnRobisackpUzNRpiM4ck7cNVb7eAvkISsbH+pWI9
 aEexPhbyskjlV+GOyM4QL4ygG0dpXY0HSyoh6uaSVsaXMycnWIsJCPidXxV1HGV0
 q2/RLHuHwYxia8cYCF01/DQvwOKSjwbU0zModxtRezGD5GYh2C0a+SrA1aX+qiTu
 yGJCs2UHtSQstAt78tTVp499YeDeL/oGSQkPAu8zyRkSczzF+CncGTuXyoJbAWyK
 otcgERWljgZ4scxjfu1uacfoVhKQ7nOu7hiJokL0U80FESAennLC3ZlocvB9h/ff
 HNA=
 =n2rk
 -----END PGP SIGNATURE-----

Merge tag 'dma-mapping-5.19-2022-05-25' of git://git.infradead.org/users/hch/dma-mapping

Pull dma-mapping updates from Christoph Hellwig:

 - don't over-decrypt memory (Robin Murphy)

 - takes min align mask into account for the swiotlb max mapping size
   (Tianyu Lan)

 - use GFP_ATOMIC in dma-debug (Mikulas Patocka)

 - fix DMA_ATTR_NO_KERNEL_MAPPING on xen/arm (me)

 - don't fail on highmem CMA pages in dma_direct_alloc_pages (me)

 - cleanup swiotlb initialization and share more code with swiotlb-xen
   (me, Stefano Stabellini)

* tag 'dma-mapping-5.19-2022-05-25' of git://git.infradead.org/users/hch/dma-mapping: (23 commits)
  dma-direct: don't over-decrypt memory
  swiotlb: max mapping size takes min align mask into account
  swiotlb: use the right nslabs-derived sizes in swiotlb_init_late
  swiotlb: use the right nslabs value in swiotlb_init_remap
  swiotlb: don't panic when the swiotlb buffer can't be allocated
  dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC
  dma-direct: don't fail on highmem CMA pages in dma_direct_alloc_pages
  swiotlb-xen: fix DMA_ATTR_NO_KERNEL_MAPPING on arm
  x86: remove cruft from <asm/dma-mapping.h>
  swiotlb: remove swiotlb_init_with_tbl and swiotlb_init_late_with_tbl
  swiotlb: merge swiotlb-xen initialization into swiotlb
  swiotlb: provide swiotlb_init variants that remap the buffer
  swiotlb: pass a gfp_mask argument to swiotlb_init_late
  swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction
  swiotlb: make the swiotlb_init interface more useful
  x86: centralize setting SWIOTLB_FORCE when guest memory encryption is enabled
  x86: remove the IOMMU table infrastructure
  MIPS/octeon: use swiotlb_init instead of open coding it
  arm/xen: don't check for xen_initial_domain() in xen_create_contiguous_region
  swiotlb: rename swiotlb_late_init_with_default_size
  ...
2022-05-25 19:18:36 -07:00
Linus Torvalds
fbe86daca0 SCSI misc on 20220524
This series consists of a small set of driver updates (lpfc, ufs,
 mpt3sas mpi3mr, iscsi target).  Apart from that this is mostly small
 fixes with very few core changes (the biggest one being VPD caching.
 
 Signed-off-by: James E.J. Bottomley <jejb@linux.ibm.com>
 -----BEGIN PGP SIGNATURE-----
 
 iJwEABMIAEQWIQTnYEDbdso9F2cI+arnQslM7pishQUCYo2WnyYcamFtZXMuYm90
 dG9tbGV5QGhhbnNlbnBhcnRuZXJzaGlwLmNvbQAKCRDnQslM7pishfEiAP4zvniL
 xidsiCXGQ4pWF4QW3UxukXpGh5xFREhNCYT9+QEA+DyilCALOI+ZT5GKu2V6gkby
 R29ve48/NAWl3fwYjMQ=
 =GPL1
 -----END PGP SIGNATURE-----

Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

Pull SCSI updates from James Bottomley:
 "This consists of a small set of driver updates (lpfc, ufs, mpt3sas
  mpi3mr, iscsi target). Apart from that this is mostly small fixes with
  very few core changes (the biggest one being VPD caching)"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (177 commits)
  scsi: target: tcmu: Avoid holding XArray lock when calling lock_page
  scsi: elx: efct: Remove NULL check after calling container_of()
  scsi: dpt_i2o: Drop redundant spinlock initialization
  scsi: qedf: Remove redundant variable op
  scsi: hisi_sas: Fix memory ordering in hisi_sas_task_deliver()
  scsi: fnic: Replace DMA mask of 64 bits with 47 bits
  scsi: mpi3mr: Add target device related sysfs attributes
  scsi: mpi3mr: Add shost related sysfs attributes
  scsi: elx: efct: Remove redundant memset() statement
  scsi: megaraid_sas: Remove redundant memset() statement
  scsi: mpi3mr: Return error if dma_alloc_coherent() fails
  scsi: hisi_sas: Fix rescan after deleting a disk
  scsi: hisi_sas: Use sas_ata_wait_after_reset() in IT nexus reset
  scsi: libsas: Refactor sas_ata_hard_reset()
  scsi: mpt3sas: Update driver version to 42.100.00.00
  scsi: mpt3sas: Fix junk chars displayed while printing ChipName
  scsi: ipr: Use kobj_to_dev()
  scsi: mpi3mr: Fix a NULL vs IS_ERR() bug in mpi3mr_bsg_init()
  scsi: bnx2fc: Avoid using get_cpu() in bnx2fc_cmd_alloc()
  scsi: libfc: Remove get_cpu() semantics in fc_exch_em_alloc()
  ...
2022-05-25 19:09:48 -07:00
jianzhou
56e33e2242 Merge keystone/android-mainline-keystone-qcom-release.5.18-rc7 (48dc679) into msm-pineapple
* refs/heads/tmp-48dc679:
  ANDROID: Creating boot-img.tar.gz for aarch64
  ANDROID: kernel: fix debug_kinfo set twice crash issue
  Revert "PCI: aardvark: Rewrite IRQ code to chained IRQ handler"
  Linux 5.18-rc7
  gfs2: Stop using glock holder auto-demotion for now
  gfs2: buffered write prefaulting
  gfs2: Align read and write chunks to the page cache
  gfs2: Pull return value test out of should_fault_in_pages
  gfs2: Clean up use of fault_in_iov_iter_{read,write}able
  gfs2: Variable rename
  gfs2: Fix filesystem block deallocation for short writes
  drm/vmwgfx: Disable command buffers on svga3 without gbobjects
  drm/vmwgfx: Initialize drm_mode_fb_cmd2
  drm/vmwgfx: Fix fencing on SVGAv3
  x86/mm: Fix marking of unused sub-pmd ranges
  tls: Fix context leak on tls_device_down
  net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe()
  net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending
  net: dsa: bcm_sf2: Fix Wake-on-LAN with mac_link_down()
  usb: xhci-mtk: remove bandwidth budget table
  usb: xhci-mtk: fix fs isoc's transfer error
  usb: gadget: fix race when gadget driver register via ioctl
  usb: typec: tcpci_mt6360: Update for BMC PHY setting
  arm64: Enable repeat tlbi workaround on KRYO4XX gold CPUs
  mlxsw: Avoid warning during ip6gre device removal
  arm64: cpufeature: remove duplicate ID_AA64ISAR2_EL1 entry
  drm/vc4: hdmi: Fix build error for implicit function declaration
  net: bcmgenet: Check for Wake-on-LAN interrupt probe deferral
  net: ethernet: mediatek: ppe: fix wrong size passed to memset()
  Bluetooth: Fix the creation of hdev->name
  sched/tracing: Append prev_state to tp args instead
  i40e: i40e_main: fix a missing check on list iterator
  net/sched: act_pedit: really ensure the skb is writable
  thermal: int340x: Mode setting with new OS handshake
  drm/amdgpu/ctx: only reset stable pstate if the user changed it (v2)
  Revert "drm/amd/pm: keep the BACO feature enabled for suspend"
  KVM: PPC: Book3S PR: Enable MSR_DR for switch_mmu_context()
  s390/lcs: fix variable dereferenced before check
  s390/ctcm: fix potential memory leak
  s390/ctcm: fix variable dereferenced before check
  net: atlantic: verify hw_head_ lies within TX buffer ring
  net: atlantic: add check for MAX_SKB_FRAGS
  net: atlantic: reduce scope of is_rsc_complete
  net: atlantic: fix "frag[0] not initialized"
  net: stmmac: fix missing pci_disable_device() on error in stmmac_pci_probe()
  scsi: lpfc: Correct BDE DMA address assignment for GEN_REQ_WQE
  scsi: lpfc: Fix split code for FLOGI on FCoE
  genirq: Remove WARN_ON_ONCE() in generic_handle_domain_irq()
  net: phy: micrel: Fix incorrect variable type in micrel
  ANDROID: GKI: Document GKI KUnit differences
  ANDROID: GKI: Return ERROR value on KUnit load fail
  Documentation/process: Update ARM contact for embargoed hardware issues
  MAINTAINERS: Add James and Mike as Arm64 performance events reviewers
  udf: Avoid using stale lengthOfImpUse
  virtio: fix virtio transitional ids
  arm64: vdso: fix makefile dependency on vdso.so
  decnet: Use container_of() for struct dn_neigh casts
  writeback: Avoid skipping inode writeback
  dma-buf: call dma_buf_stats_setup after dmabuf is in valid list
  net: atlantic: always deep reset on pm op, fixing up my null deref regression
  ceph: check folio PG_private bit instead of folio->private
  ceph: fix setting of xattrs on async created inodes
  net: dsa: flush switchdev workqueue on bridge join error path
  net: phy: Fix race condition on link status change
  MAINTAINERS: add a mailing list for DAMON development
  selftests: vm: Makefile: rename TARGETS to VMTARGETS
  mm/kfence: reset PG_slab and memcg_data before freeing __kfence_pool
  mailmap: add entry for martyna.szapar-mudlaw@intel.com
  arm[64]/memremap: don't abuse pfn_valid() to ensure presence of linear map
  procfs: prevent unprivileged processes accessing fdinfo dir
  mm: mremap: fix sign for EFAULT error return value
  hwmon: (ltq-cputemp) restrict it to SOC_XWAY
  dim: initialize all struct fields
  ptp: ocp: Use DIV64_U64_ROUND_UP for rounding.
  ethernet: tulip: fix missing pci_disable_device() on error in tulip_init_one()
  ionic: fix missing pci_release_regions() on error in ionic_probe()
  nfs: fix broken handling of the softreval mount option
  slimbus: qcom: Fix IRQ check in qcom_slim_probe
  rfkill: uapi: fix RFKILL_IOCTL_MAX_SIZE ioctl request definition
  nl80211: fix locking in nl80211_set_tx_bitrate_mask()
  mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection
  mac80211_hwsim: fix RCU protected chanctx access
  mailmap: update Kalle Valo's email
  fanotify: do not allow setting dirent events in mask of non-dir
  selftests net: add UDP GRO fraglist + bpf self-tests
  net: fix wrong network header length
  net: sfc: fix memory leak due to ptp channel
  drm/i915: Fix race in __i915_vma_remove_closed
  tools headers UAPI: Sync linux/kvm.h with the kernel sources
  perf tests: Fix coresight `perf test` failure.
  perf bench: Fix two numa NDEBUG warnings
  Linux 5.18-rc6
  Revert "parisc: Increase parisc_cache_flush_threshold setting"
  parisc: Mark cr16 clock unstable on all SMP machines
  parisc: Fix typos in comments
  parisc: Change MAX_ADDRESS to become unsigned long long
  parisc: Merge model and model name into one line in /proc/cpuinfo
  parisc: Re-enable GENERIC_CPU_DEVICES for !SMP
  parisc: Update 32- and 64-bit defconfigs
  parisc: Only list existing CPUs in cpu_possible_mask
  Revert "parisc: Fix patch code locking and flushing"
  Revert "parisc: Mark sched_clock unstable only if clocks are not syncronized"
  Revert "parisc: Mark cr16 CPU clocksource unstable on all SMP machines"
  blk-mq: remove the error_count from struct request
  ataflop: use a statically allocated error counters
  floppy: use a statically allocated error counter
  SUNRPC: Ensure that the gssproxy client can start in a connected state
  Revert "SUNRPC: Ensure gss-proxy connects on setup"
  fbdev: efifb: Fix a use-after-free due early fb_info cleanup
  net: chelsio: cxgb4: Avoid potential negative array offset
  netlink: do not reset transport header in netlink_recvmsg()
  drm/nouveau: Fix a potential theorical leak in nouveau_get_backlight_name()
  drm/nouveau/tegra: Stop using iommu_present()
  ipv4: drop dst in multicast routing path
  ice: fix PTP stale Tx timestamps cleanup
  ice: clear stale Tx queue settings before configuring
  ice: Fix race during aux device (un)plugging
  KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state
  KVM: SEV: Mark nested locking of vcpu->lock
  ANDROID: GKI: Add ‘kunit.enable’ module parameter
  gpio: pca953x: fix irq_stat not updated when irq is disabled (irq_mask not set)
  drm/amd/display: undo clearing of z10 related function pointers
  drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems
  platform/surface: aggregator: Fix initialization order when compiling as builtin module
  platform/surface: gpe: Add support for Surface Pro 8
  platform/x86/intel: Fix 'rmmod pmt_telemetry' panic
  platform/x86: thinkpad_acpi: Correct dual fan probe
  platform/x86: thinkpad_acpi: Add a s2idle resume quirk for a number of laptops
  platform/x86: thinkpad_acpi: Convert btusb DMI list to quirks
  Documentation/process: Add embargoed HW contact for Ampere Computing
  Documentation/process: Make groups alphabetical and use tabs consistently
  firmware_loader: use kernel credentials when reading firmware
  fbdev: vesafb: Cleanup fb_info in .fb_destroy rather than .remove
  fbdev: efifb: Cleanup fb_info in .fb_destroy rather than .remove
  fbdev: simplefb: Cleanup fb_info in .fb_destroy rather than .remove
  fbdev: Prevent possible use-after-free in fb_release()
  Revert "fbdev: Make fb_release() return -ENODEV if fbdev was unregistered"
  powerpc/papr_scm: Fix buffer overflow issue with CONFIG_FORTIFY_SOURCE
  net: mscc: ocelot: avoid corrupting hardware counters when moving VCAP filters
  net: mscc: ocelot: restrict tc-trap actions to VCAP IS2 lookup 0
  net: mscc: ocelot: fix VCAP IS2 filters matching on both lookups
  net: mscc: ocelot: fix last VCAP IS1/IS2 filter persisting in hardware when deleted
  net: mscc: ocelot: mark traps with a bool instead of keeping them in a list
  s390/dasd: Use kzalloc instead of kmalloc/memset
  s390/dasd: Fix read inconsistency for ESE DASD devices
  s390/dasd: Fix read for ESE with blksize < 4k
  s390/dasd: prevent double format of tracks for ESE devices
  s390/dasd: fix data corruption for ESE devices
  MAINTAINERS: add missing files for bonding definition
  net: Fix features skip in for_each_netdev_feature()
  selftests: add ping test with ping_group_range tuned
  ping: fix address binding wrt vrf
  net: phy: micrel: Pass .probe for KS8737
  net: phy: micrel: Do not use kszphy_suspend/resume for KSZ8061
  net: rds: use maybe_get_net() when acquiring refcount on TCP sockets
  fsl_lpuart: Don't enable interrupts too early
  tty: n_gsm: fix invalid gsmtty_write_room() result
  tty: n_gsm: fix mux activation issues in gsm_config()
  tty: n_gsm: fix buffer over-read in gsm_dlci_data()
  serial: 8250_mtk: Fix register address for XON/XOFF character
  serial: 8250_mtk: Make sure to select the right FEATURE_SEL
  serial: 8250_mtk: Fix UART_EFR register address
  tty/serial: digicolor: fix possible null-ptr-deref in digicolor_uart_probe()
  usb: gadget: uvc: allow for application to cleanly shutdown
  usb: typec: tcpci: Don't skip cleanup in .remove() on error
  usb: cdc-wdm: fix reading stuck on device close
  btrfs: sysfs: export the balance paused state of exclusive operation
  btrfs: fix assertion failure when logging directory key range item
  btrfs: zoned: activate block group properly on unlimited active zone device
  btrfs: zoned: move non-changing condition check out of the loop
  btrfs: force v2 space cache usage for subpage mount
  cgroup/cpuset: Remove cpus_allowed/mems_allowed setup in cpuset_init_smp()
  USB: serial: qcserial: add support for Sierra Wireless EM7590
  gpio: visconti: Fix fwnode of GPIO IRQ
  USB: serial: option: add Fibocom MA510 modem
  USB: serial: option: add Fibocom L610 modem
  USB: serial: pl2303: add device id for HP LM930 Display
  genirq: Synchronize interrupt thread startup
  MAINTAINERS: update the GPIO git tree entry
  NFC: netlink: fix sleep in atomic bug when firmware download timeout
  mm/readahead: Fix readahead with large folios
  block: Do not call folio_next() on an unreferenced folio
  selftests: ocelot: tc_flower_chains: specify conform-exceed action for policer
  tcp: drop the hash_32() part from the index calculation
  tcp: increase source port perturb table to 2^16
  tcp: dynamically allocate the perturb table used by source ports
  tcp: add small random increments to the source port
  tcp: resalt the secret every 10 seconds
  tcp: use different parts of the port_offset for index and offset
  secure_seq: use the 64 bits of the siphash for port offset calculation
  wireguard: selftests: set panic_on_warn=1 from cmdline
  wireguard: selftests: bump package deps
  wireguard: selftests: restore support for ccache
  wireguard: selftests: use newer toolchains to fill out architectures
  wireguard: selftests: limit parallelism to $(nproc) tests at once
  wireguard: selftests: make routing loop test non-fatal
  x86/fpu: Prevent FPU state corruption
  RDMA/rxe: Change mcg_lock to a _bh lock
  RDMA/rxe: Do not call  dev_mc_add/del() under a spinlock
  RDMA/siw: Fix a condition race issue in MPA request processing
  ANDROID: GKI: Disable KUnit built-in testing
  dt-bindings: pci: apple,pcie: Drop max-link-speed from example
  dt-bindings: Drop redundant 'maxItems/minItems' in if/then schemas
  dt-bindings: pinctrl: Allow values for drive-push-pull and drive-open-drain
  MAINTAINERS: Update Josh Poimboeuf's email address
  drm/amd/display: Avoid reading audio pattern past AUDIO_CHANNELS_COUNT
  drm/amdgpu: do not use passthrough mode in Xen dom0
  iommu: Make sysfs robust for non-API groups
  powerpc/vdso: Fix incorrect CFI in gettimeofday.S
  powerpc/pseries/vas: Use QoS credits from the userspace
  mmc: sdhci-msm: Reset GCC_SDCC_BCR register for SDHC
  mmc: sunxi-mmc: Fix DMA descriptors allocated above 32 bits
  mac80211: Reset MBSSID parameters upon connection
  cfg80211: retrieve S1G operating channel number
  nl80211: validate S1G channel width
  mac80211: fix rx reordering with non explicit / psmp ack policy
  iommu/dart: Add missing module owner to ops structure
  drm/bridge: ite-it6505: add missing Kconfig option select
  net/mlx5: Fix matching on inner TTC
  net/mlx5: Avoid double clear or set of sync reset requested
  net/mlx5: Fix deadlock in sync reset flow
  net/mlx5e: Fix trust state reset in reload
  net/mlx5e: Avoid checking offload capability in post_parse action
  net/mlx5e: CT: Fix queued up restore put() executing after relevant ft release
  net/mlx5e: TC, fix decap fallback to uplink when int port not supported
  net/mlx5e: TC, Fix ct_clear overwriting ct action metadata
  net/mlx5e: Lag, Don't skip fib events on current dst
  net/mlx5e: Lag, Fix fib_info pointer assignment
  net/mlx5e: Lag, Fix use-after-free in fib event handler
  net/mlx5e: Fix the calling of update_buffer_lossy() API
  net/mlx5e: Don't match double-vlan packets if cvlan is not set
  net/mlx5: Fix slab-out-of-bounds while reading resource dump menu
  net/mlx5e: Fix wrong source vport matching on tunnel rule
  bnxt_en: Fix unnecessary dropping of RX packets
  bnxt_en: Initiallize bp->ptp_lock first before using it
  bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag
  smsc911x: allow using IRQ0
  net: sfp: Add tx-fault workaround for Huawei MA5671A SFP ONT
  PCI: qcom: Remove ddrss_sf_tbu clock from SC8180X
  interconnect: Restore sync state by ignoring ipa-virt in provider count
  fbdev: Make fb_release() return -ENODEV if fbdev was unregistered
  hwmon: (tmp401) Add OF device ID table
  KVM: s390: vsie/gmap: reduce gmap_rmap overhead
  kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU
  KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id
  net: rds: acquire refcount on TCP sockets
  KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits
  KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits()
  KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D)
  selftests/net: so_txtime: usage(): fix documentation of default clock
  selftests/net: so_txtime: fix parsing of start time stamp on 32 bit systems
  selftests: mirror_gre_bridge_1q: Avoid changing PVID while interface is operational
  net: emaclite: Add error handling for of_address_to_resource()
  net: emaclite: Don't advertise 1000BASE-T and do auto negotiation
  scsi: qla2xxx: Fix missed DMA unmap for aborted commands
  scsi: scsi_dh_alua: Properly handle the ALUA transitioning state
  KVM: s390: Fix lockdep issue in vm memop
  Revert "block: release rq qos structures for queue without disk"
  RDMA/irdma: Fix possible crash due to NULL netdev in notifier
  RDMA/irdma: Reduce iWARP QP destroy time
  RDMA/irdma: Flush iWARP QP if modified to ERR from RTR state
  io_uring: assign non-fixed early for async work
  gpio: mvebu: drop pwm base assignment
  gpiolib: of: fix bounds check for 'gpio-reserved-ranges'
  net: dsa: b53: convert to phylink_pcs
  pci_irq_vector() can't be used in atomic context any longer. This conflicts with the usage of this function in nic_mbx_intr_handler().
  nfc: nfcmrvl: main: reorder destructive operations in nfcmrvl_nci_unregister_dev to avoid bugs
  nfc: replace improper check device_is_registered() in netlink related functions
  net: stmmac: disable Split Header (SPH) for Intel platforms
  mm: Fix PASID use-after-free issue
  mld: respect RCU rules in ip6_mc_source() and ip6_mc_msfilter()
  net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter()
  rxrpc: Enable IPv6 checksums on transport socket
  net: cpsw: add missing of_node_put() in cpsw_probe_dt()
  net: stmmac: dwmac-sun8i: add missing of_node_put() in sun8i_dwmac_register_mdio_mux()
  net: dsa: mt7530: add missing of_node_put() in mt7530_setup()
  net: dsa: ksz9477: port mirror sniffing limited to one port
  hinic: fix bug of wq out of bound access
  net: mdio: Fix ENOMEM return value in BCM6368 mux bus controller
  net: ethernet: mediatek: add missing of_node_put() in mtk_sgmii_init()
  selftests/net/forwarding: add missing tests to Makefile
  selftests/net: add missing tests to Makefile
  Revert "SUNRPC: attempt AF_LOCAL connect on setup"
  selftests/seccomp: Don't call read() on TTY from background pgrp
  SUNRPC: Ensure gss-proxy connects on setup
  ipmi:ipmi_ipmb: Fix null-ptr-deref in ipmi_unregister_smi()
  ipmi: When handling send message responses, don't process the message
  RISC-V: relocate DTB if it's outside memory region
  MIPS: Fix CP0 counter erratum detection for R4k CPUs
  SUNRPC: Ensure timely close of disconnected AF_LOCAL sockets
  can: grcan: only use the NAPI poll budget for RX
  can: grcan: grcan_probe(): fix broken system id check for errata workaround needs
  can: grcan: use ofdev->dev when allocating DMA memory
  can: grcan: grcan_close(): fix deadlock
  can: isotp: remove re-binding of bound socket
  mm/hwpoison: use pr_err() instead of dump_page() in get_any_page()
  mm/huge_memory: do not overkill when splitting huge_zero_page
  Revert "mm/memory-failure.c: skip huge_zero_page in memory_failure()"
  ath11k: reduce the wait time of 11d scan and hw scan while add interface
  timekeeping: Mark NMI safe time accessors as notrace
  SUNRPC: Don't leak sockets in xs_local_connect()
  iommu/dart: check return value after calling platform_get_resource()
  iommu/vt-d: Drop stop marker messages
  iommu/vt-d: Calculate mask for non-aligned flushes
  btrfs: skip compression property for anything other than files and dirs
  btrfs: do not BUG_ON() on failure to update inode when setting xattr
  btrfs: always log symlinks in full mode
  btrfs: do not allow compression on nodatacow files
  btrfs: export a helper for compression hard check
  dt-bindings: leds-mt6360: Drop redundant 'unevaluatedProperties'
  dt-bindings: ufs: cdns,ufshc: Add power-domains
  drm/msm/dp: remove fail safe mode related code
  ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback
  hwmon: (pmbus) delta-ahe50dc-fan: work around hardware quirk
  s390: disable -Warray-bounds
  ASoC: ops: Validate input values in snd_soc_put_volsw_range()
  mmc: core: Set HS clock speed before sending HS CMD13
  NFSv4: Don't invalidate inode attributes on delegation return
  hwmon: (pmbus) disable PEC if not enabled
  ASoC: dmaengine: Restore NULL prepare_slave_config() callback
  ASoC: atmel: mchp-pdmc: set prepare_slave_config
  ASoC: max98090: Generate notifications on changes for custom control
  ASoC: max98090: Reject invalid values in custom control put()
  ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes
  ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers
  firewire: core: extend card->lock in fw_core_handle_bus_reset
  firewire: remove check of list iterator against head past the loop body
  firewire: fix potential uaf in outbound_phy_packet_callback()
  MAINTAINERS: update iwlwifi driver maintainer
  iwlwifi: iwl-dbg: Use del_timer_sync() before freeing
  SUNRPC release the transport of a relocated task with an assigned transport
  ASoC: rt9120: Correct the reg 0x09 size to one byte
  iommu: arm-smmu: disable large page mappings for Nvidia arm-smmu
  ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops
  ALSA: hda/realtek: Fix mute led issue on thinkpad with cs35l41 s-codec
  MAINTAINERS: Update email address for John Stultz
  futex: MAINTAINERS, .mailmap: Update André's email address
  ASoC: meson: axg-card: Fix nonatomic links
  ASoC: meson: axg-tdm-interface: Fix formatters in trigger"
  ASoC: soc-ops: fix error handling
  ASoC: meson: Fix event generation for G12A tohdmi mux
  ASoC: meson: Fix event generation for AUI CODEC mux
  ASoC: meson: Fix event generation for AUI ACODEC mux
  ASoC: da7219: Fix change notifications for tone generator frequency
  RDMA/rxe: Recheck the MR in when generating a READ reply
  ASoC: simple-card-utils: fix sysclk shutdown
  iommu/arm-smmu-v3: Fix size calculation in arm_smmu_mm_invalidate_range()
  RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core()
  ASoC: wm8958: Fix change notifications for DSP controls
  hwmon: (f71882fg) Fix negative temperature
  batman-adv: Don't skb_split skbuffs with frag_list
  dt-bindings: hwmon: ti,tmp421: Fix type for 'ti,n-factor'
  RDMA/rxe: Fix "Replace mr by rkey in responder resources"
  PCI/PM: Avoid putting Elo i2 PCIe Ports in D3cold
  hwmon: (adt7470) Fix warning on module removal
  hwmon: (asus_wmi_sensors) Fix CROSSHAIR VI HERO name
  hwmon: (xdpe12284) Fix build warning seen if CONFIG_SENSORS_XDPE122_REGULATOR is disabled

 Conflicts:
	Documentation/devicetree/bindings
	Documentation/devicetree/bindings/clock/imx8m-clock.yaml
	Documentation/devicetree/bindings/display/bridge/renesas,lvds.yaml
	Documentation/devicetree/bindings/display/renesas,du.yaml
	Documentation/devicetree/bindings/hwmon/ti,tmp421.yaml
	Documentation/devicetree/bindings/iio/adc/st,stm32-adc.yaml
	Documentation/devicetree/bindings/leds/leds-mt6360.yaml
	Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.yaml
	Documentation/devicetree/bindings/mtd/gpmi-nand.yaml
	Documentation/devicetree/bindings/net/can/bosch,c_can.yaml
	Documentation/devicetree/bindings/pci/apple,pcie.yaml
	Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
	Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
	Documentation/devicetree/bindings/rtc/allwinner,sun6i-a31-rtc.yaml
	Documentation/devicetree/bindings/serial/samsung_uart.yaml
	Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-i2s.yaml
	Documentation/devicetree/bindings/sound/ti,j721e-cpb-audio.yaml
	Documentation/devicetree/bindings/thermal/rcar-gen3-thermal.yaml
	Documentation/devicetree/bindings/ufs/cdns,ufshc.yaml

Upstream-Build:ks_qcom-android-mainline-keystone-qcom-release@8638194 SKQ4.220524.002
Change-Id: Ia65bb7e08d4a99f031ff2a75f261d9be7aa336e5
Signed-off-by: jianzhou <quic_jianzhou@quicinc.com>
2022-05-25 18:16:27 -07:00
Chris Goldsworthy
2306fec4f0 arm-smmu: Restore the downstream SMMU module
The arm_smmu module had to be reverted in commit fe6e5ac9fb ("Revert
"arm-smmu: Port our downstream SMMU changes from 5.15"") due to an LTS
merge conflict in commit d82e9dd3f4 ("Merge
keystone/android-mainline-keystone-qcom-release.5.18-rc2 (2069378)
into msm-pineapple").

Restore the module to its downstream state accordingly. To account for
commit 9a630a4b41 ("iommu: Split struct iommu_ops"), we rework
arm_smmu_ops. To account for the struct page->freelist member being
removed in commit 07f910f9b7 ("mm: Remove slab from struct page"),
use the struct page->lru.next pointer to form a single linked list of
pages to be tended to during our deferred TLB maintenance.

Change-Id: I6773a2e70bb1fabe9eef9f143bcf5df66f99dfa7
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-05-25 18:01:11 -07:00
Chris Goldsworthy
1a66e8cf59 modules.list.msm.pineapple: Re-add qcom_iommu_util.ko
The qcom_iommu_util module had to be reverted in commit 1d99777147
("Revert "modules.list.msm.pineapple: Add qcom_iommu_util.ko"") due to
an LTS merge conflict in commit d82e9dd3f4 ("Merge
keystone/android-mainline-keystone-qcom-release.5.18-rc2 (2069378)
into msm-pineapple"). Restore the loading of the module accordingly.

Change-Id: I2a86cc8f5fd8bc6ce41d6b5793704e573277fe80
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-05-25 18:01:10 -07:00
Chris Goldsworthy
5683fe5a93 arm64: defconfig: Restore the qcom_iommu_util module
The qcom_iommu_util module had to be reverted in commit 5791009e99
("Revert "arm64: defconfig: Compile in IOMMU util module"") due to an
LTS merge conflict in commit d82e9dd3f4 ("Merge
keystone/android-mainline-keystone-qcom-release.5.18-rc2 (2069378)
into msm-pineapple"). Restore the compilation of the module
accordingly.

Change-Id: Ief7b5c44f172f1ba767039e983eb217fd765f676
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-05-25 18:01:09 -07:00
Chris Goldsworthy
5aea34a2f3 qcom-iommu-util: Add iommu_domain_ops to qcom_iommu_ops
commit 9a630a4b41 ("iommu: Split struct iommu_ops") adds a new type
iommu_domain_ops that covers all per-domain (i.e. "translation) operations
(setting up page tables, doing TLB maintenance, etc.) are moved from
iommu_ops into this domain specific structure. As a result of this,
IOMMU domains now only supply a pointer to these domain ops and not
the iommu_ops.

Thus, add a iommu_domain_ops member in qciom_iommu_ops.

Change-Id: I77919feed92232e1b487cd621d164f597676d14c
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-05-25 18:01:04 -07:00
Jishnu Prakash
17ef00fb6d leds: qti-flash: Update LMH mitigation configuration for qti flash
Based on the HW recommendation, LMH mitigation needs to
be enabled only when LEDs are used in flash mode with
a total current greater than or equal to 1A.
Update support for the same.

Change-Id: I926a021dc7e864dea402d88d8bb2cf1d6ed580f7
Signed-off-by: Jishnu Prakash <quic_jprakash@quicinc.com>
[quic_subbaram@quicinc.com: Fix trivial merge conflict]
Signed-off-by: Subbaraman Narayanamurthy <quic_subbaram@quicinc.com>
2022-05-25 17:42:36 -07:00
Anjelique Melendez
749dacbb8b leds: leds-qti-flash: Add support for qcom,secure-vm
Currently, to calculate max_avail_current, parameters from battery power
supply are needed. These parameters are provided by battery_charger driver,
which on some platforms need to be obtained from charger FW. Add a new
property "qcom,secure-vm" which if specified for a secure VM would provide
a fixed max_avail_current to support camera SW requirements.

Change-Id: I7ac19765470406edf693a5ce92c499f2d7f81511
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com>
2022-05-25 17:42:36 -07:00
Anjelique Melendez
5d3ac1aac3 leds: led-qti-flash: Make interrupts optional
Currently interrupts are required in flash LED driver but are only used for
debugging purposes. Allow interrupts to be optional.

Change-Id: I40f86a2543e836124e6fb358731076f63f1774f3
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com>
2022-05-25 17:42:36 -07:00
Anjelique Melendez
24ca52d06d leds: qti-flash: Skip configuring a LED channel if it's configured already
Currently, brightness for a torch/flash device can be set on a channel
that's already configured for a flash/torch device that shared the same
LED channel. Though the target current configured at the end for that
channel is correct, there is a transitional behavior where the channel
can be disabled and enabled again. Fix this by not allowing the
brightness to be set if it's attempted for the same channel id but
another type (flash or torch) is configured before.

Change-Id: I3ae5990121af1302e14dc2bd14f9baa178dd0cd2
Signed-off-by: Anjelique Melendez <quic_amelende@quicinc.com>
2022-05-25 17:42:35 -07:00
Guru Das Srinagesh
0ac549f68c leds: qti-flash: Initialize rc in qti_flash_led_symmetry_config()
Initialize rc just for sanity so that it is not used uninitialized in
the return path.

Fixes: 568fc7ac9b69 ("leds: qti-flash: Handle all-enabled led mask separately")
Change-Id: I77caac87781b7a2ad2de0ecb13c5b3cd9ca3707b
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:35 -07:00
Guru Das Srinagesh
e713399a51 leds: qti-flash: Enable zero brightness symmetry distribution
Currently, when a single channel's brightness is set, and then cleared
to zero subsequently, the LED stays on instead of getting turned off
because symmetrical brightness distribution logic does not allow the
paired channel's brightness to be set to zero. Fix this.

It was also observed that the brightness of a channel that is getting
turned off doesn't show up as zero, so fix that as well.

In addition, strengthen error-checking of the "qcom,led-mask" device
tree property.

Change-Id: I245ec2177b2ebe0f567eb96397dd13a05a587d60
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:35 -07:00
Guru Das Srinagesh
fb86d87aa8 leds: qti-flash: Handle all-enabled led mask separately
In certain devices, LED channels are paired and connected to two
separate LEDs. Due to symmetrical configuration, a switch that controls
all four channels sets the same brightness value to both LEDs, which is
not the intended behaviour; hence, handle this case separately.

E.g. If flash0 (group 1) is set to 144 and flash1 (group 2) is set to
1056, current will be distributed evenly to all 4 channels like so: 300
mA would be set on all channels (as 144 + 1056 = 1200; 1200 / 4 = 300).

Change this to:
144 / 2 = 72 on channels 0 and 3   (group 1)
1056 / 2 = 528 on channels 1 and 2 (group 2).

Change-Id: Ie135811d59104cfa5551d17ebbb729a57c101099
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:34 -07:00
Guru Das Srinagesh
4404a1a342 leds: qti-flash: Fix early return in qti_flash_led_disable()
When attempting to disable a flash node that is not configured, return
gracefully as it is not an error condition.

Change-Id: I3cf82eddc4ac078384a5278bd2832f7adceba853
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:34 -07:00
Guru Das Srinagesh
e1d79e321d leds: qti-flash: Show on_time and off_time in microseconds
Adjust the units of on_time and off_time to microseconds to align with
max_flash_timeout, which uses those units.

Change-Id: I65f29175606d5571720215f196d2e08e6d6a18f0
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:33 -07:00
Subbaraman Narayanamurthy
1a6aa7063c leds: qti-flash: Handle error return path properly
Currently if qti_flash_lmh_mitigation_config() returns an error
in qti_flash_led_strobe(), spin_unlock() is not called in the
error return path. Fix it.

Fixes: 42bdecad7ccd7 ("leds: qti-flash: Fix LMH mitigation configuration")
Change-Id: I1bede93873a151cc9bab7f2000d8f058e1890fda
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2022-05-25 17:42:33 -07:00
Subbaraman Narayanamurthy
473df1747b leds: qti-flash: Fix error logging in qti_flash_led_symmetry_config()
If symmetry is enabled and user sets the brightness on switch
device directly without setting brightness on flash or torch
devices, then an error log is printed. Fix it.

Change-Id: I10cc9e3143173fb4ea9dad0ed078fde3594b6e54
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2022-05-25 17:42:33 -07:00
Subbaraman Narayanamurthy
ca4b79a5bb leds: qti-flash: Fix LMH mitigation configuration
Currently, LMH mitigation is not enabled but just the option is
selected to SW. Fix it by enabling LMH mitigation properly when
the user queries for maximum flash current or LED is strobed. If
the module is enabled, LMH mitigation would get enabled in HW.

Change-Id: Ie5d7deaa6bf3ce6ed320d62972660136a0e8095d
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2022-05-25 17:42:32 -07:00
Subbaraman Narayanamurthy
61cd84a09c leds: qti-flash: Fix indentations and change macros to enum
Fix the indentation of macro definitions, kernel-doc comments
and structure member definitions. While at it, change macro
definitions OTST1_IDX, OTST2_IDX and FLASH_THERMAL_LEVELS
(renaming it to OTST_MAX) to enums as it seems to be appropriate
and makes it more readable.

Change-Id: I2c4b68e274a58c71f935cfbf07b9ba59fba90544
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2022-05-25 17:42:32 -07:00
Guru Das Srinagesh
8dfab2b485 leds: qti-flash: Allow dynamic symmetry current redistribution
Currently, when symmetry is enabled, current redistribution occurs only
when a switch is turned on after being disabled initially. Enable
current redistribution to occur on the fly as long as a switch is
enabled. This applies to both torch and flash devices.

Illustrative example:

user0	user3	Torch0	Torch3	Comment
500	0	250	250	(average of user set values)
150	0	75	75	(150 + 0 / 2)
150	100	125	125	(150 + 100 / 2).

Change-Id: I5f832e4fa669a9662d45592c5c3a512df07f7255
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:32 -07:00
Guru Das Srinagesh
f47498593a leds: qti-flash: Support zero duration for flash safety timer
The minimum timeout that can be set is 10 ms due to the clamping being
done in led_set_flash_timeout() in the flash LED class framework. Change
the minimum to allow zero timeout to be set, and also disallow setting
strobe in this case.

Change-Id: Ic34057197c05daf640c2a7d21cbae8e4638319ee
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:31 -07:00
Guru Das Srinagesh
b5379d18b0 leds: qti-flash: Fix debug prints, read more than one byte
Print the data instead of the pointer in qti_flash_led_write(), update
the print in qti_flash_led_masked_write(), and fix qti_flash_led_read()
so that it returns a pointer to more than one byte.

Change-Id: Ic9cbc35a6552f8978ff9e36da2aafeec69885b9a
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:31 -07:00
Guru Das Srinagesh
5391dbba0e leds: qti-flash: Allow symmetrical switch on with no channels configured
Currently, with LED symmetry enabled, turning on a switch without
configuring current in a channel first results in errors being seen.

Without LED symmetry enabled, the same action results only in
qti_flash_led_strobe() being called with the value argument set to zero.
Bring about the same behaviour for LED symmetry as well.

Change-Id: I2d6301ec3cc19d89acbd0545509485866ffa9085
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:30 -07:00
Shyam Kumar Thella
70c0ce0f8a leds: qti-flash: Disable flash LED channel after De-strobe
Currently when a flash/torch device is disabled, ITARGET of the channel
is programmed to 0 by qti_flash_led_disable() before the channel is
de-strobed. This is causing a ramp down of the flash LED channel during
disable. Fix this by programming target current to 0 only after channel
is de-strobed.

Change-Id: Ie566f4e75b8af8c27b7b9a828823a9bfddc48bb6
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:30 -07:00
Shyam Kumar Thella
b8d85a03a6 leds: qti-flash: Disable flash LED when brightness is set to 0
Disable the flash LED channel when a brightness of 0 is set.

As flash/torch devices can be enabled and disabled using switch as well
as from sysfs, reset the state of flash/torch devices when they are
disabled instead of doing it in switch disable.

Change-Id: If8ffb22d8c72a94325a1e9237778b810a152a293
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:30 -07:00
Shyam Kumar Thella
1581b111c3 leds: qti-flash: Do not enable flash without the timeout
When the user strobes a flash LED device with a timeout of 0, configure
the safety timer with default timeout to avoid turning flash ON for
long duration. Also clear different parameters of flash/torch device
like current, timeout when the device is disabled.

Change units of min, max, step of flash timeout to micro seconds as
flash LED class expects in micro seconds.

Change-Id: I780fb2639a1beda38e391e1e0818176f147175ef
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:29 -07:00
Shyam Kumar Thella
e9a3973e99 leds: qti-flash: Limit off_time of switch to a maximum of 1280 ms
Currently, Flash LED peripheral supports a maximum safety timer expiry
of 1280 ms for flash mode where the target current can go as high as
1500 mA. If off_time is allowed more than that time period, then
flash LED can stay ON more than that safety timer period. Hence, clamp
off_time to not exceed 1280 ms.

Change-Id: Idbd8b41c5041c50e3f714be9efb0ad04b1ee9181
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:29 -07:00
Kiran Gunda
b2ea9ae600 leds: qti-flash: Update camera flash client interface options
The value of "QUERY_MAX_AVAIL_CURRENT" option in the "leds-qti-flash"
driver is different from the legacy "leds-qpnp-flash" driver.
As a result, the led flash does not work. To fix this issue update
the option values of "leds-qti-flash" to align with the legacy driver.

Also add logic to handle other options "ENABLE_REGULATOR" and
"DISABLE_REGULATOR" to have backward compatibility.

Change-Id: I8213d53c6b19ccc8da74784e3b428b99fcebcbb7
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
2022-05-25 17:42:29 -07:00
Shyam Kumar Thella
ec59d570b6 leds: qti-flash: Add support for on_time and off_time parameters
Add support to enable switch after a delay of on_time milliseconds
and to disable switch after a delay of off_time milliseconds. Adding
delays to turn ON and OFF the switch is required by flash client
(camera) for fine precision flash control.

Add sysfs support to configure on_time and off_time for switch devices.

E.g. To configure ON time of 1 second and OFF time of 0.5 seconds on
switch 0 and strobing flash LED 0,
 echo 300 > /sys/class/leds/leds:flash_0/flash_brightness
 echo 1000 > /sys/class/leds/led:switch_0/on_time
 echo 500 > /sys/class/leds/led_switch_0/off_time
 echo 1 > /sys/class/leds/led_switch_0/brightness

Change-Id: I343eddf097bc7bb9960cd3fd4934c9b0a40cf450
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:28 -07:00
Shyam Kumar Thella
7bcf81b20e leds: qti-flash: Add maximum available flash current prediction
Add support to calculate maximum current available for flash module.
Clients of flash LED makes use of this API qti_flash_led_prepare()
to query maximum available current for different flash LED channels.

Change-Id: I26988b1afb1e57a190aa25061189b71ca3f7ea95
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:28 -07:00
Shyam Kumar Thella
685aaa4e19 leds: qti-flash: Add support for qti_flash_led_prepare()
qti_flash_led_prepare() API is used by flash clients (E.g. Camera) to
query maximum current available for flash. Add support for this API
which initially returns maximum current that is supported for flash
LED module (2000 mA). Also, add a sysfs parameter under switch devices
to show max available flash current.

Change-Id: I3aed009a0d7e0f34a6d05a45af34fcd0f37a6fe7
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
Signed-off-by: Guru Das Srinagesh <gurus@codeaurora.org>
2022-05-25 17:42:27 -07:00
Shyam Kumar Thella
6a1350e53d leds: qti-flash: Add individual APIs to enable and disable switch
Currently qti_flash_led_switch_brightness_set() is used to enable or
disable switch. Split it into separate APIs to enable and disable
switch. This will make it easier to control switches which is required
for implementing slow-sync flash feature.

Change-Id: I668ab872d1d646f97ed8fbfba4dfca6b4db5bc70
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:42:27 -07:00
Subbaraman Narayanamurthy
94dbc769e4 leds: qti-flash: Update interrupt names
Update interrupt names to have "flash" prefix so that all the
interrupts for flash LED can be monitored easily.

Change-Id: Ib7c17ea48110461823702c8d11b7554ddebbbb26
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2022-05-25 17:42:27 -07:00
Shyam Kumar Thella
5f5a820f0f leds: qti-flash: Fix updating flags when disabling flash/torch device
Currently when brightness is zeroed-out for a flash/torch device its
"configured" flag is set to false. Hence the flash/torch device is
ignored when its switch is disabled. This leads to the corresponding
LED channel left enabled. Fix this by setting "configured" flag to
false only when led strobe is de-asserted.

Change-Id: I46c640d3e0db8611343e2e67321db820161dd144
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:41:21 -07:00
Shyam Kumar Thella
a0506cb3d4 leds: add support for QTI flash LED driver
QTI flash LED driver supports flash LED module on PM8350C. It is used
for illumination by camera sensor and also for torch application.

Change-Id: Iaa4754591e37db48c0ab360cdf4660d50c908337
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
2022-05-25 17:40:53 -07:00
Satya Durga Srinivasu Prabhala
f327e7053d qcom: socinfo: Add PINEAPPLEP id to the list
Add PINEAPPLEP id for SOC ID -> name mapping list.

Change-Id: I44b6afc03dcf062053b348a7b84462e324c8af50
Signed-off-by: Satya Durga Srinivasu Prabhala <quic_satyap@quicinc.com>
2022-05-25 17:28:25 -07:00