Commit graph

1,188,286 commits

Author SHA1 Message Date
Hou Tao
1d1f25bfda md: don't update recovery_cp when curr_resync is ACTIVE
Don't update recovery_cp when curr_resync is MD_RESYNC_ACTIVE, otherwise
md may skip the resync of the first 3 sectors if the resync procedure is
interrupted before the first calling of ->sync_request() as shown below:

md_do_sync thread          control thread
  // setup resync
  mddev->recovery_cp = 0
  j = 0
  mddev->curr_resync = MD_RESYNC_ACTIVE

                             // e.g., set array as idle
                             set_bit(MD_RECOVERY_INTR, &&mddev_recovery)
  // resync loop
  // check INTR before calling sync_request
  !test_bit(MD_RECOVERY_INTR, &mddev->recovery

  // resync interrupted
  // update recovery_cp from 0 to 3
  // the resync of three 3 sectors will be skipped
  mddev->recovery_cp = 3

Fixes: eac58d08d4 ("md: Use enum for overloaded magic numbers used by mddev->curr_resync")
Cc: stable@vger.kernel.org # 6.0+
Signed-off-by: Hou Tao <houtao1@huawei.com>
Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
Signed-off-by: Song Liu <song@kernel.org>
2023-02-01 08:32:57 -08:00
Arnd Bergmann
903b39e119 usb: ohci-omap: avoid unused-variable warning
The dead code removal has led to 'need_transceiver' not being
used at all when OTG support is disabled:

drivers/usb/host/ohci-omap.c: In function 'ohci_omap_reset':
drivers/usb/host/ohci-omap.c:99:33: error: unused variable 'need_transceiver' [-Werror=unused-variable]
   99 |         int                     need_transceiver = (config->otg != 0);

Change the #ifdef check into an IS_ENABLED() check to make the
code more readable and let the compiler see where it is used.

Fixes: 8825acd7cc ("ARM: omap1: remove dead code")
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Lukas Bulwahn
ae4cc02037 ARM: debug: remove references in DEBUG_UART_8250_SHIFT to removed configs
Commit 67d3928c3df5 ("ARM: omap1: remove unused board files") removes
configs DEBUG_OMAP7XXUART{1,2,3}.

The config DEBUG_UART_8250_SHIFT still refers to those removed configs.

Remove those obsolete references.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Lukas Bulwahn
b5018dd5aa ARM: s3c: remove obsolete s3c-cpu-freq header
The s3c-cpu-freq header was previously included by:

  ./arch/arm/mach-s3c/mach-bast.c
  ./arch/arm/mach-s3c/mach-osiris-dvs.c
  ./arch/arm/mach-s3c/mach-osiris.c
  ./include/linux/soc/samsung/s3c-cpufreq-core.h

Commit a4946a153cb9 ("ARM: s3c: remove all s3c24xx support") removes the
files in ./arch/arm/mach-s3c/; commit daf0ee583fc7 ("cpufreq: remove
s3c24xx drivers") removes the file s3c-cpufreq-core.h.

Remove this obsolete header file.

This issue was identified, as s3c-cpu-freq.h referred to the removed config
ARM_S3C_CPUFREQ.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Lukas Bulwahn
d0610c6e97 MAINTAINERS: adjust SAMSUNG SOC CLOCK DRIVERS after s3c24xx support removal
Commit a4946a153cb9 ("ARM: s3c: remove all s3c24xx support") removes all
files that match the file pattern 'include/dt-bindings/clock/s3c*.h'.

Hence,  ./scripts/get_maintainer.pl --self-test=patterns complains about a
obsolete file pattern in SAMSUNG SOC CLOCK DRIVERS, as it does not match
any file in the repository after the commit above.

Remove this obsolete file entry in SAMSUNG SOC CLOCK DRIVERS.

Fixes: a4946a153cb9 ("ARM: s3c: remove all s3c24xx support")
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Lukas Bulwahn
323c54b97f MAINTAINERS: update file entries after arm multi-platform rework and mach-pxa removal
In the work of Arnd's arm multi-platform support, various files in arch/arm
are moved and after the arm mach-pxa removal, only a few files remain to be
not aligned with entries in MAINTAINERS.

These file movements still require adjustments in MAINTAINERS:

  Files in arch/arm/mach-ep93xx/include/mach/ are made local:

    arch/arm/{mach-ep93xx/include/mach/uncompress.h => boot/compressed/misc-ep93xx.h}
    arch/arm/mach-ep93xx/{include/mach => }/ep93xx-regs.h
    arch/arm/mach-ep93xx/{include/mach => }/mach/irqs.h

  Files in arch/arm/mach-vexpress/ are moved to mach-versatile.

Correct the remaining references accordingly after these refactorings.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Arnd Bergmann
3821de1330 ARM: remove CONFIG_UNUSED_BOARD_FILES
All unused board files are removed, so the Kconfig symbol is no
longer needed.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Arnd Bergmann
61d9420a21 mfd: remove htc-pasic3 driver
The htc-pasic3 MFD device was only used in the PXA magician
machine that is now removed, so this can be recycled as well.

Cc: Lee Jones <lee@kernel.org>
Cc: Philipp Zabel <philipp.zabel@gmail.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:29:30 +01:00
Arnd Bergmann
652719b100 w1: remove ds1wm driver
This driver was used by the mfd/asic3 and mfd/htc-pasic3 drivers, but
both of those are removed as part of the PXA spring cleaning, which
leaves the w1 support orphaned as well.

Cc: Evgeniy Polyakov <zbr@ioremap.net>
Cc: Szabolcs Gyurko <szabolcs.gyurko@tlt.hu>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
89480065bc usb: remove ohci-tmio driver
The TMIO MFD driver is getting removed, so its OHCI portion is not
used any more either.

Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: linux-usb@vger.kernel.org
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
7244785e1f fbdev: remove w100fb driver
The w100fb was used on various PXA based pocketpc machines,
all of which are now removed, so remove this dirver sd well.

Cc: Helge Deller <deller@gmx.de>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
aceae78486 fbdev: remove tmiofb driver
With the TMIO MFD support removed, the framebuffer driver can be
removed as well.

Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Acked-by: Helge Deller <deller@gmx.de>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
bef64d2908 mmc: remove tmio_mmc driver
With the TMIO MFD support gone, the corresponding MMC host driver can
be removed as well. The remaining tmio_mmc_core module however is still
used by both the Renesas and Socionext host drivers.

Cc: Ian Molton <spyro@f2s.com>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: linux-mmc@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Acked-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
2e99b1b065 mfd: remove ucb1400 support
The ucb1400 MFD driver and its gpio and touchscreen child
drivers were only used on a few PXA machines that were unused
for a while and are now removed.

Removing these leaves the AC97 support as ALSA specific,
no other drivers are now connected through this interface.

Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Lee Jones <lee@kernel.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Cc: Marek Vasut <marex@denx.de>
Cc: linux-kernel@vger.kernel.org
Cc: linux-gpio@vger.kernel.org
Cc: linux-input@vger.kernel.org
Cc: alsa-devel@alsa-project.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
8971bb812e mfd: remove toshiba tmio drivers
Four separate mfd drivers are in the "tmio" family, and all of
them were used in now-removed PXA machines (eseries, tosa, and
hx4700), so the mfd drivers and all its children can be removed
as well.

Cc: Lee Jones <lee@kernel.org>
Cc: Wolfram Sang <wsa+renesas@sang-engineering.com>
Cc: linux-kernel@vger.kernel.org
Cc: linux-mmc@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
6388bbad4a rtc: remove v3020 driver
The v3020 RTC driver was exclusively used by the now removed
cm-x300.c machine.

Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: linux-kernel@vger.kernel.org
Cc: linux-rtc@vger.kernel.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
0f9b85edca power: remove pda_power supply driver
This driver was used for a couple of Intel PXA and Samsung S3C24xx
based PDAs, but all of those are now removed from the kernel, so
the driver itself is no longer useful.

Cc: Anton Vorontsov <cbou@mail.ru>
Cc: linux-pm@vger.kernel.org
Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
b401d1fd80 ASoC: pxa: remove unused board support
Most PXA/MMP boards were removed, so the board specific ASoC
support is no longer needed, leaving only support for DT
based ones, as well as the "gumstix" and "spitz" machines
that may get converted to DT later.

Cc: Ian Molton <spyro@f2s.com>
Cc: Ken McGuire <kenm@desertweyr.com>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Cc: alsa-devel@alsa-project.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
7aeffbf2dd pcmcia: remove unused pxa/sa1100 drivers
A number of boards got removed, so this code is now orphaned.

Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
8f00ddfb76 input: remove zylonite touchscreen driver
The PXA zylonite platform was removed, so this driver has no
remaining users.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: linux-input@vger.kernel.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
119df5ee5b input: remove pxa930_rotary keyboard driver
The pxa930 platform is getting removed and no upstream machine
ever defined a rotary keyboard device.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Arnd Bergmann
82d40986a6 input: remove pxa930_trkball driver
The pxa930 SoC support is getting removed, and no upstream
board ever provided the trkball device that this driver
relies on.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: linux-input@vger.kernel.org
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:23:38 +01:00
Chris Wilson
73a6c67654 drm/i915/gt: Add selftests for TLB invalidation
Check that we invalidate the TLB cache, the updated physical addresses
are immediately visible to the HW, and there is no retention of the old
physical address for concurrent HW access.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
[ahajda: adjust to upstream driver, v2+]
Signed-off-by: Andrzej Hajda <andrzej.hajda@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
[tursulin: Small indentation fix.]
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230130165058.1647414-1-andrzej.hajda@intel.com
2023-02-01 16:17:41 +00:00
Arnd Bergmann
a64c36b8b7 arm64: ZynqMP SoC changes for v6.3
Firmware changes
 - fix memory leak in error path inside notification code
 - trivial comment cleanup
 - add workaround for SD tap delay programming with old PMUFW
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCY9j19wAKCRDKSWXLKUoM
 IaaHAKCLlEqUJWJ1Iv02jm9HWeS2jxm+1ACfTqxKGU6fiw8KVT1nEp7m6BqviUk=
 =Vlse
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmPaj9EACgkQmmx57+YA
 GNmamxAAvx4y4w3VJ0q1/d2ZziIlEaCxv3pTgdolGVWx4da9hMGSQA+aXnzUjm48
 wTBTglCcS9ebXRmrvHugA5Ns25zTOV3Vc5z+am2unQaQwufHRixZ9vBnesxQmyq9
 5e+ME9pJAa4VJkky9Dd0RQkExtCrIuBuyuipdZou2Me5HWdZ3RyztxBTEUyXUKwV
 VL9/nO9ElUm/MZ33bmu+YzhyH9mLNmtGh+M4fcpi40+wvFLtatg0iGkQDTL83BnR
 +qDDlaRwTO1zD9g+kfivDDJxteayZtUlpKlLWBeVHzrWlZaTdNavl3Kckk5XYfpB
 0V7ofRJrz/lVZJh/QKab2UAEJjpYEpyYEIME6YpkttZkKr1psjkisQwlRBVjKC2S
 I419CmJeZRYWQjGEjCR8DVmcUCFsyqOiZtGGLCyIZcomqj6zqfcNwtI8TGX06rvT
 vTs836DSjtAvOIMBt9JtoGf5oqa2aXjLqa4Kv20Th291sG3sowz4zTsPbW6SpcWE
 Zvv+ZkCqxpF4hbnGfPB1yK06TO3Y62Xi7iZfdZ09VqUDGylvLinCj3Dd253N4D23
 I05fF/LRuhXfk43aYG+B/vDMkycVmEhe5gMUfshY2FhAf8DxNiqrJICuXzvNcfZV
 id75BtzgjatBMSpeA8XnmELkcjvxytL6UnStKMIhklFjn2MKVE4=
 =yzJm
 -----END PGP SIGNATURE-----

Merge tag 'zynqmp-soc-for-v6.3' of https://github.com/Xilinx/linux-xlnx into soc/drivers

arm64: ZynqMP SoC changes for v6.3

Firmware changes
- fix memory leak in error path inside notification code
- trivial comment cleanup
- add workaround for SD tap delay programming with old PMUFW

* tag 'zynqmp-soc-for-v6.3' of https://github.com/Xilinx/linux-xlnx:
  firmware: xilinx: Clear IOCTL_SET_SD_TAPDELAY using PM_MMIO_WRITE
  firmware: xilinx: Remove kernel-doc marking in the code
  driver: soc: xilinx: fix memory leak in xlnx_add_cb_for_notify_event()

Link: https://lore.kernel.org/r/42be5129-3ca2-ddbc-ac3b-6448245b61c2@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:14:09 +01:00
Arnd Bergmann
27aaad0e7c ARM: Zynq SoC changes for v6.3
- Fix refcount leak in zynq_early_slcr_init
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCY9j3AgAKCRDKSWXLKUoM
 Ic+RAJ9eNDS8bOodVBbFNcoMK0V0IAlwkQCfScUXY7VptkcPYjQ9aikcxrQ2GEw=
 =xoPl
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmPaj6cACgkQmmx57+YA
 GNm5PhAAkSSF2lLOpsSmZfPEp/ctti8lJYK/rhMQBoqCL8NKj8HShkLWlrX6ES+N
 Z1a3um4Hl1PyvBpwktmVjwjs77GwavtbVuAoHCKrqYXWspy4DQiwkujVqqLxAmx1
 ioL4t5edVV7Y9gYxw8a01+4T50P9aqdSElQyKcMd5Vvw106zdXu27+QKZIKI4Fs+
 o3Mu+8cBd4pOlvYN4ID3gGsQQP2vffqob4+dVPBV2hTtiJHApk7kgM4si5Zi2I3K
 r4f/xDUua+RNUiS5Z34HaxQbkmQSwNf8QKDqAggsHxQ7SED2RwGLTHZAagImyO9r
 VL/xwv9AS/fkamz/tP9CLKpGUT3Pda1aPIO1yWWZ1L8AP8KQlQDRPF5VxFyMWN0Y
 PKIQo1eg4kFJYZ3TZNqD8T2Ue4ndEzi1H3arohaOUqxz0RT8n/tr184SLmxKbqfA
 eHIqBcJElFl1pNyJjMfmE4jn2kCoJ5zbJWvCMYFO2mAR70jY6xHNEOkgUy2MRvct
 BESaqjXEHGhbFJbXxVqEFS33+uNJdy6xJmhTTnmvi1cbvMiJoWEppM5oFUqErvhx
 O6v3mE+7ehPIK41hNciibMBwG2iFAs5CWHLcgla9vLRryF3J4ZyUhsynfxqVU6Kj
 2XqwG5Jwuuovbe8HISze/WmLzrEHRcMUfmKEF05EAVQCPD/ezg4=
 =yn8Z
 -----END PGP SIGNATURE-----

Merge tag 'zynq-soc-for-v6.3' of https://github.com/Xilinx/linux-xlnx into arm/soc

ARM: Zynq SoC changes for v6.3

- Fix refcount leak in zynq_early_slcr_init

* tag 'zynq-soc-for-v6.3' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: Fix refcount leak in zynq_early_slcr_init

Link: https://lore.kernel.org/r/5d7785ca-7fe0-1597-c56a-7a0f4d230db8@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:13:27 +01:00
Christophe Branchereau
36acae192d
ASoC: codecs/jz4760: add digital gain controls
Both the DAC and ADC have digital gain controls available
for their mixers, which go from -31 to 0db by step of 1db.

Signed-off-by: Christophe Branchereau <cbranchereau@gmail.com>
Link: https://lore.kernel.org/r/20230122210703.2552384-1-cbranchereau@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-02-01 16:13:08 +00:00
Jonathan Neuschäfer
7dbb4a38bf
soc: nuvoton: Add SoC info driver for WPCM450
Add a SoC information driver for Nuvoton WPCM450 SoCs. It provides
information such as the SoC revision.

Usage example:

  # grep . /sys/devices/soc0/*
  /sys/devices/soc0/family:Nuvoton NPCM
  /sys/devices/soc0/revision:A3
  /sys/devices/soc0/soc_id:WPCM450

Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Link: https://lore.kernel.org/r/20221031223926.241641-1-j.neuschaefer@gmx.net
Signed-off-by: Joel Stanley <joel@jms.id.au>
Link: https://lore.kernel.org/r/20230201051717.1005938-1-joel@jms.id.au
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:11:36 +01:00
Jonathan Neuschäfer
5efb648042
ARM: dts: wpcm450: Add nuvoton,shm = <&shm> to FIU node
The Flash Interface Unit (FIU) should have a reference to the Shared
Memory controller (SHM) so that flash access from the host (x86 computer
managed by the WPCM450 BMC) can be blocked during flash access by the
FIU driver.

Fixes: 38abcb0d68 ("ARM: dts: wpcm450: Add FIU SPI controller node")
Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Link: https://lore.kernel.org/r/20230129112611.1176517-1-j.neuschaefer@gmx.net
Signed-off-by: Joel Stanley <joel@jms.id.au>
Link: https://lore.kernel.org/r/20230201044158.962417-1-joel@jms.id.au
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:10:45 +01:00
Matthias Brugger
b459861783
MAINTAINERS: Update entry for MediaTek SoC support
The linux-mediatek IRC channel has moved to liber.chat for quite some
time. Apart from that, not all patches are also send to LKML, so add
this ML explicitly.

And last but not least:
Angelo does a wunderfull job in reviewing patches for all kind of
devices from MediaTek.

Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
Link: https://lore.kernel.org/r/20230201152256.19514-1-matthias.bgg@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 17:10:34 +01:00
Arnd Bergmann
61f1b48445 ARM: Zynq DT changes for v6.3
- Fix node names to be aligned with dt schema
 - Describe qspi controller
 - Use xlnx prefix for ethernet IP
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCY9j0LAAKCRDKSWXLKUoM
 If4RAJ4qG47/s2+ruYOBtJ768Mn2rsyMyACffZHmzulPBHD2zqjKNLgXZ7x5r4Y=
 =wLDO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmPaidkACgkQmmx57+YA
 GNm5xg//VMMgoqE89SJD/ZVf7Eq8S3Ya9nvoSLht4fZ364Un4qkBsb3dQpvgn3PC
 C7O8eEom8IkUQ4QdN7E/XStY9gjv7h1H9smkOuVOxFWdR/jGR2pnr8rjLawfx3A+
 uSfPbXKPwVT0/jGnzxWvttbDSU6GNQH2pqgyqv0wMb68TFAUzOYvZ0lbD4Lw7OBT
 mXDbKGkokpLIKYY0YdIf0glzExMlYgzougdrKAf4ETl7XwidSVFA8L5pPWbNmybS
 J4fjwQ2hwp12HtrPMgB0Zr+EQn8nmt/3wuvVudIC5UhhUdtNqsj5t0EJ5053gIic
 6UNgpA8d0AIpL++Dfmyoi4Ak3PJdbgJI+BaUJ5v+awvTzmo282QrrVSKzI1YpItd
 1Kbt1mf1Vi/ZzboqJGXoemIFbo64lKUwhc0tQyCZEL9oCKfUxGDmle2cV4pFg92L
 hOcf+4+v/KLzT+poZEzHVjblN2GRtkx8dYQa9/ReA3u/C8Y7l6ALMbLU+dPIc6ja
 oxC0AN6JbRi6Z2C11dOY/JlwE3ncjHI6zd/1OUMd/ZmlmTP2l9wKo29uTCyT+hbn
 x55HDo017NzrXobxfgOTTqidyjJkmQd/OQf0U6vhHpdRiz/jMlxnuncw3wTO4ezS
 hwjHwF/G7BKo2hnGyag1XTXrQYPLbsxiEGlMHCAui0nQw8zVrvg=
 =mwT+
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-v6.3' of https://github.com/Xilinx/linux-xlnx into arm/dt

ARM: Zynq DT changes for v6.3

- Fix node names to be aligned with dt schema
- Describe qspi controller
- Use xlnx prefix for ethernet IP

* tag 'zynq-dt-for-v6.3' of https://github.com/Xilinx/linux-xlnx:
  ARM: zynq: Use recommended dma-controller name instead of dmac
  ARM: dts: zynq: Add xlnx prefix to GEM compatible string
  ARM: zynq: Comment interrupt names IRQs for pl330
  ARM: dts: zynq: add QSPI controller node

Link: https://lore.kernel.org/r/850bb18f-ca22-f3d7-71a7-f367bfef4ccc@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 16:48:41 +01:00
Arnd Bergmann
777d90d5f2 arm64: ZynqMP SOC changes for v6.3
- Fix node names to be aligned with dt schema
 - Rename DT overlay files to dtso
 - Add snps,resume-hs-terminations to usb nodes
 - Describe gpio-modepin node
 - Use xlnx prefix for ethernet IP
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCY9jy1gAKCRDKSWXLKUoM
 IT+vAKCVTcn7wn+16lIoHeatapAnrJnBxwCfQfjJhTvlZmQWfAoACGTNSmo1D1A=
 =cEL0
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmPaiXMACgkQmmx57+YA
 GNkKoQ/+IboD/uIi+xHWMPfzLPontKLWpt2wlDrQASKi1TxezghsvJUwsOwT1Gt5
 06Zvacrb/Iwd5IsGwGBrxeLgz92QckfLAdva5sZdu5U4OCKfpZBfU0cFCLpI9jY3
 cPvfyaoYQhBM2q4Ma86FpWP30/9trc+BAtdxQtilvHZSBbMnMzRxC4MH1IngSwr/
 pqHEOE53Xudx83A1ekxgcJ2CEQmZFH1wyarUC9tNdjyOtglx1E2p28dcyQndCUVN
 IONL/ByaX6PpFdV4yLbQnUlMtmf2ozaFVU/M6XpzuHOY3FI3Ps6YR2VUzHryOlTz
 nCIsl4hm9aN6IploxddqfNIvN1EJfVkZvnJoTEM2GKuv36HXDXz8OYbnTG7ZlqOB
 TyoYljogeg2uGfPdx/uJECD5Ok2pOsjnE5JHuc2Uxem3O3Pv6DYZyyv5XF3iTg6i
 q+CjuSqRidzEp0ze2uMiB8g0fAXWIXnW5f1SHIr8O8wLB2kUhy4a4UVl1G+s8CWb
 F1JWIdeGW42wAkq9lFcYb/YyI5s1/h4fU4WVVXepVEQO86BXO/qUVkVp7VDt06IZ
 KACWwFnRFYyG9vBkMqOcxgRwbrtPWZL6f9nNQyqFJaorpashDL425z1dbF7NIgQK
 yXAfF/tD18Aj25n6unQT5zVwnZUknhl9dZcBAPF4/aQLINop1KY=
 =ZvvT
 -----END PGP SIGNATURE-----

Merge tag 'zynqmp-dt-for-v6.3' of https://github.com/Xilinx/linux-xlnx into arm/dt

arm64: ZynqMP SOC changes for v6.3

- Fix node names to be aligned with dt schema
- Rename DT overlay files to dtso
- Add snps,resume-hs-terminations to usb nodes
- Describe gpio-modepin node
- Use xlnx prefix for ethernet IP

* tag 'zynqmp-dt-for-v6.3' of https://github.com/Xilinx/linux-xlnx:
  arm64: dts: zynqmp: Add xlnx prefix to GEM compatible string
  arm64: dts: zynqmp: Remove clock-names from GEM in zynqmp-clk-ccf.dtsi
  arm64: dts: zynqmp: Add mode-pin GPIO controller DT node
  arm64: zynqmp: Enable hs termination flag for USB dwc3 controller
  arm64: dts: xilinx: Rename DTB overlay source files from .dts to .dtso
  arm64: xilinx: Fix opp-table-cpu
  arm64: dts: xilinx: align LED node names with dtschema

Link: https://lore.kernel.org/r/89d82a7e-6b42-97ce-2912-aa7dec965ff2@monstr.eu
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2023-02-01 16:46:59 +01:00
Randy Dunlap
84cc4c7aec drm/client: fix kernel-doc warning in drm_client.h
scripts/kernel-doc complains about the comment for hotplug_failed,
so fix it:

include/drm/drm_client.h:111: warning: Incorrect use of kernel-doc format:          * @hotplug failed:

Fixes: 6a9d5ad3af ("drm/client: Add hotplug_failed flag")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: David Airlie <airlied@gmail.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20230131012107.20943-1-rdunlap@infradead.org
2023-02-01 16:32:35 +01:00
Paul Cercueil
6b05266a0d drm/etnaviv: Remove #ifdef guards for PM related functions
Use the RUNTIME_PM_OPS() and pm_ptr() macros to handle the
.runtime_suspend/.runtime_resume callbacks.

These macros allow the suspend and resume functions to be automatically
dropped by the compiler when CONFIG_PM is disabled, without having
to use #ifdef guards.

This has the advantage of always compiling these functions in,
independently of any Kconfig option. Thanks to that, bugs and other
regressions are subsequently easier to catch.

Some #ifdef CONFIG_PM guards were protecting simple statements, and were
also converted to "if (IS_ENABLED(CONFIG_PM))".

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Lucas Stach
764be12345 drm/etnaviv: convert user fence tracking to XArray
This simplifies the driver code a bit, as XArray already provides
internal locking. IDRs are implemented using XArrays anyways, so
this drops one level of unneeded abstraction.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
2023-02-01 16:32:26 +01:00
Lucas Stach
2cd5bd98a5 drm/etnaviv: split fence lock
The fence lock currently protects two distinct things. It protects the fence
IDR from concurrent inserts and removes and also keeps drm_sched_job_arm and
drm_sched_entity_push_job in one atomic section to guarantee the fence seqno
monotonicity. Split the lock into those two functions.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
2023-02-01 16:32:26 +01:00
Christian Gmeiner
b4bc0e7493 drm/etnaviv: print MMU exception cause
The MMU tells us the fault status. While the raw register value is
already printed, it's a bit more user friendly to translate the
fault reasons into human readable format.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Lucas Stach
50f79da49e drm/etnaviv: update hardware headers from rnndb
Update the state HI header from the rnndb commit
640a009e7e66 ("rnndb: fix AXI1_TOTAL_REQUEST_COUNT").

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Tomeu Vizoso
49b5ff4c11 drm/etnaviv: add HWDB entry for VIPNano-QI.7120.0055
This is a compute-only module marketed towards AI and vision
acceleration. This particular version can be found on the Amlogic A311D
SoC.

The feature bits are taken from the Khadas downstream kernel driver
6.4.4.3.310723AAA.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Tomeu Vizoso
d801e6f4e1 drm/etnaviv: Warn when probing on NPUs
Userspace is still not making full use of the hardware, so we don't know
yet if changes to the UAPI won't be needed. Warn about it.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Tomeu Vizoso
ab3d7b6d48 drm/etnaviv: Add nn_core_count to chip feature struct
We will use these for differentiating between GPUs and NPUs, as the
downstream driver does.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
2023-02-01 16:32:26 +01:00
Bart Van Assche
e152a05fa0 loop: Improve the hw_queue_depth kernel module parameter implementation
Make the following minor changes which were reported by colleagues
while reviewing this code:
- Remove the parentheses from around the LOOP_DEFAULT_HW_Q_DEPTH
  definition since these are superfluous.
- Accept other number formats than decimal, e.g. hexadecimal.
- Do not set hw_queue_depth to an out-of-range value, even if that value
  won't be used.
- Use the LOOP_DEFAULT_HW_Q_DEPTH macro in the kernel module parameter
  description to prevent that the description gets out of sync.

This patch has been tested as follows:

 # modprobe -r loop
 # modprobe loop hw_queue_depth=-1
 modprobe: ERROR: could not insert 'loop': Invalid argument
 # modprobe loop hw_queue_depth=0
 modprobe: ERROR: could not insert 'loop': Invalid argument
 # modprobe loop hw_queue_depth=1; cat /sys/module/loop/parameters/hw_queue_depth
 1
 # modprobe -r loop; modprobe loop; cat /sys/module/loop/parameters/hw_queue_depth hw_queue_depth=0x10
 16
 # modprobe -r loop; modprobe loop; cat /sys/module/loop/parameters/hw_queue_depth hw_queue_depth=128
 128
 # modprobe -r loop; modprobe loop hw_queue_depth=129; cat /sys/module/loop/parameters/hw_queue_depth
 129
 # modprobe -r loop; modprobe loop hw_queue_depth=$((1<<32))
 modprobe: ERROR: could not insert 'loop': Numerical result out of range

See also commit ef44c50837 ("loop: allow user to set the queue
depth").

Cc: Chaitanya Kulkarni <kch@nvidia.com>
Cc: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/r/20230130211347.832110-1-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2023-02-01 08:16:11 -07:00
Shin'ichiro Kawasaki
bd97a59da6 nvme-auth: use workqueue dedicated to authentication
NVMe In-Band authentication uses two kinds of works: chap->auth_work and
ctrl->dhchap_auth_work. The latter work flushes or cancels the former
work. However, the both works are queued to the same workqueue nvme-wq.
It results in the lockdep WARNING as follows:

 WARNING: possible recursive locking detected
 6.2.0-rc4+ #1 Not tainted
 --------------------------------------------
 kworker/u16:7/69 is trying to acquire lock:
 ffff902d52e65548 ((wq_completion)nvme-wq){+.+.}-{0:0}, at: start_flush_work+0x2c5/0x380

 but task is already holding lock:
 ffff902d52e65548 ((wq_completion)nvme-wq){+.+.}-{0:0}, at: process_one_work+0x210/0x410

To avoid the WARNING, introduce a new workqueue nvme-auth-wq dedicated
to chap->auth_work.

Reported-by: Daniel Wagner <dwagner@suse.de>
Link: https://lore.kernel.org/linux-nvme/20230130110802.paafkiipmitwtnwr@carbon.lan/
Fixes: f50fff73d6 ("nvme: implement In-Band authentication")
Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Tested-by: Daniel Wagner <dwagner@suse.de>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2023-02-01 16:11:20 +01:00
Keith Busch
baff649144 nvme: mask CSE effects for security receive
The nvme driver will freeze the IO queues in response to an admin
command with CSE bits set. These bits notify the host that the command
that's about to be executed needs to be done exclusively, hence the
freeze.

The Security Receive command is often reported by multiple vendors with
CSE bits set. The reason for this is that the result depends on the
previous Security Send. This has nothing to do with IO queues, though,
so the driver is taking an overly cautious response to seeing this
passthrough command, while unable to fufill the intended admin queue
action.

Rather than freeze IO during this harmless command, mask off the
effects. This freezing is observed to cause IO latency spikes when host
software periodically validates the security state of the drives.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2023-02-01 16:10:10 +01:00
Keith Busch
cc115cbe12 nvme: always initialize known command effects
Instead of appending command effects flags per IO, set the known effects
flags the driver needs to react to just once during initial setup.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Kanchan Joshi <joshi.k@samsung.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2023-02-01 16:10:09 +01:00
Amit Kumar Mahapatra
303feb3cc0
spi: Add APIs in spi core to set/get spi->chip_select and spi->cs_gpiod
Supporting multi-cs in spi core and spi controller drivers would require
the chip_select & cs_gpiod members of struct spi_device to be an array.
But changing the type of these members to array would break the spi driver
functionality. To make the transition smoother introduced four new APIs to
get/set the spi->chip_select & spi->cs_gpiod and replaced all
spi->chip_select and spi->cs_gpiod references in spi core with the API
calls.
While adding multi-cs support in further patches the chip_select & cs_gpiod
members of the spi_device structure would be converted to arrays & the
"idx" parameter of the APIs would be used as array index i.e.,
spi->chip_select[idx] & spi->cs_gpiod[idx] respectively.

Suggested-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Reviewed-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20230119185342.2093323-2-amit.kumar-mahapatra@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2023-02-01 15:08:37 +00:00
Guillaume Pinot
bd401fd730 ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360
Samsung Galaxy Book2 Pro 360 (13" 2022 NP930QED-KA1FR) with codec SSID
144d:ca03 requires the same workaround for enabling the speaker amp
like other Samsung models with ALC298 codec.

Cc: <stable@vger.kernel.org>
Signed-off-by: Guillaume Pinot <texitoi@texitoi.eu>
Link: https://lore.kernel.org/r/20230129171338.17249-1-texitoi@texitoi.eu
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2023-02-01 16:06:44 +01:00
Allen-KH Cheng
6bbd124170 arm64: dts: mediatek: mt8516: Fix the watchdog node name
The proper name is 'watchdog', not 'toprgu' and remove the unused
label.

Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20221108033209.22751-5-allen-kh.cheng@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2023-02-01 14:54:57 +01:00
Allen-KH Cheng
70d24df30d arm64: dts: mediatek: mt7986: Fix watchdog compatible
MT7986's watchdog embeds a reset controller and needs only the
mediatek,mt7986-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 50137c150f ("arm64: dts: mediatek: add basic mt7986 support")
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20221108033209.22751-4-allen-kh.cheng@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2023-02-01 14:54:56 +01:00
AngeloGioacchino Del Regno
02938f460c arm64: dts: mediatek: mt8195: Fix watchdog compatible
MT8195's watchdog embeds a reset controller and needs only the
mediatek,mt8195-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 37f2582883 ("arm64: dts: Add mediatek SoC mt8195 and evaluation board")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20221108033209.22751-3-allen-kh.cheng@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2023-02-01 14:54:56 +01:00
AngeloGioacchino Del Regno
e5e961628d arm64: dts: mediatek: mt8186: Fix watchdog compatible
MT8186's watchdog embeds a reset controller and needs only the
mediatek,mt8186-wdt compatible string as the MT6589 one is there
for watchdogs that don't have any reset controller capability.

Fixes: 2e78620b13 ("arm64: dts: Add MediaTek MT8186 dts and evaluation board and Makefile")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Signed-off-by: Allen-KH Cheng <allen-kh.cheng@mediatek.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20221108033209.22751-2-allen-kh.cheng@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
2023-02-01 14:54:56 +01:00