Commit graph

1,267,977 commits

Author SHA1 Message Date
Stefan Binding
6214e24cae ALSA: hda/realtek: Add quirks for Lenovo Thinkbook 16P laptops
These models use 2 CS35L41 amps with HDA using I2C.
Both models have _DSD support inside cs35l41_hda_property.c.

Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218437

Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20240301160154.158398-3-sbinding@opensource.cirrus.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2024-03-04 09:12:23 +01:00
Stefan Binding
37d9d5ff52 ALSA: hda: cs35l41: Support Lenovo Thinkbook 16P
Adds sound support for 2 Lenovo Thinkbook 16P laptops using CS35L41
HDA with External Boost.

SSIDs:
- 17AA38A9
- 17AA38AB

Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218437

Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20240301160154.158398-2-sbinding@opensource.cirrus.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2024-03-04 09:11:57 +01:00
Kailang Yang
34ab5bbc6e ALSA: hda/realtek - Add Headset Mic supported Acer NB platform
It will be enable headset Mic for Acer NB platform.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/fe0eb6661ca240f3b7762b5b3257710d@realtek.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2024-03-04 09:10:06 +01:00
Marc Kleine-Budde
79f7319908 can: mcp251xfd: __mcp251xfd_get_berr_counter(): use CAN_BUS_OFF_THRESHOLD instead of open coding it
Since 3f9c26210c ("can: error: add definitions for the different CAN
error thresholds") we have proper defines for the various CAN error
thresholds. So make use of it and replace 256 by
CAN_BUS_OFF_THRESHOLD.

Link: https://lore.kernel.org/all/20240304074503.3584662-1-mkl@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2024-03-04 08:47:04 +01:00
Marc Kleine-Budde
ef488e47e0 can: gs_usb: gs_cmd_reset(): use cpu_to_le32() to assign mode
The structure gs_device_mode dm::mode is a __le32, use cpu_to_le32()
to assign GS_CAN_MODE_RESET.

As GS_CAN_MODE_RESET is 0x0, this is basically a no-op.

Link: https://lore.kernel.org/all/20240304074540.3584842-1-mkl@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2024-03-04 08:46:56 +01:00
Arnd Bergmann
b3c6f1ff32 Qualcomm ARM32 DeviceTree changes for v6.9
Support for the Samsung Galaxy Tab 4 10.1 LTE is added.
 
 On MSM8226 CPU, SAW and ACC nodes are introduced to enable SMP support.
 Watchdog definition is also added, and all nodes are sorted and cleaned
 up.
 rmtfs memory is defined on HTC One Mini 2, vibrator support is addedto
 LG G Watch R, touch keycodes are defined for Samsung Galaxy Tab 4.
 The Samsung Galaxy Tab 4 DeviceTree is refactored to allow more variants
 to be introduced easily.
 
 The SAW nodes across APQ8064, IPQ8064, MSM8960 and MSM8974 are updated
 based on recent work on the binding and driver.
 
 On IPQ8064 SAW nodes are cleaned up, and unused reset-names is dropped
 from DWC3.
 
 On MSM8960 GSBI3 and the I2C bus therein is introduced, in order to
 introduce touchscreen support on the Samsung Galaxy Express SGH-I437.
 gpio-keys are introduced on the same.
 
 On MSM8974 the QFPROM register size is corrected. The order of the
 clocks in the SDX65 DWC3 node is corrected to match the binding.
 
 For a variety of platforms interrupt-related constants are replaced
 with defined.
 
 The mach-qcom Kconfig options are cleaned up, to avoid unnecessary
 per-platform options.
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCAAzFiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmXavAMVHGFuZGVyc3Nv
 bkBrZXJuZWwub3JnAAoJEAsfOT8Nma3FndcQANuQ+ke3slX7Qn0qPz3Nu6DMjljN
 2sJcHXHvHrajbYrPNb99zq9gx3JzMR52Eh6a9Ph83rThChnqxrRJovdxIbIqFxja
 7vsnSA0pchF0tSzCvAdKWaQaPMrMjvEX4wfpuiUC0NrXuWR6oqOyKEvlWtUn9I7f
 H4Y9MlKNHOzAEKVLUyJ8ozVpS670vYtUFyWrKT2RZpWWjHj2sVEXjjrDlr3n1Nls
 mLM/sLpjCHcKzmCLiuBtzSNaTFoeWWLhj6Bz69l79pW0PLlnV1xaGXP9g69WBpAn
 Bx6p9sGmlGACDQ6X1Wzz2P78nQU4Dnsard30yWXjS2Pxv6jpzy8UCC05iWTYuJdp
 gYbfIO/71l3hOZUle75D2kS3LV9Fig3iBl+YIIoariRyrWAwGxc7RZEYlBzwfh3d
 c77/2OK8WDCgxuKF6HhTTEaBDYSoXZA1j5q+8fM9Us94ETH2SPK42GafpHrk50Tf
 G6uSRY60bwHT1kFtEBjsX9AvcrGhW0GcvFCigatTeDNVnFTzyWjRrRh+NBX5ZtXX
 djWz/Kf8aUlEZvqBVaXGTS4bRpnq9GUJclSkkvz8mAaVvbitorbde0teZaQOJ31s
 PKYR0BKEEckReZPuTwdUvUYqRYQdMLDPlFqibxw9jmAvF67z5aqDf9wRD7owPnTa
 sg97zJuHpldwvxVz
 =DIsx
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXleo4ACgkQYKtH/8kJ
 UieFWhAAjLr2d0tdh2dG9O9mXuMNmbSpc3PnMh8CnXtxupIhqzqCpp7iEI+9oppI
 nDT9Ys3t++RbFx2Jf4Rl9AlKmkOvTfIijujLJQoUl9RthiFbb2bhpgbbgOBqjX+C
 DDCcpb2Rq3IYeAshcoVTJffmRcnctPvq/gpNn9GCK8H6XRcQIUjUBt+GKj0d4MoT
 f4MLnpN72py2I6SXSI6fNuSEg7rYT2QXrpZ14wN1NJHUokjowwV94N0qDocVIUaW
 YPXv9o79Fjks7Wjk6R5yq4zy1mk5P+j5E64Cp8ZUo3D4zTDIGesP+nxKSm3pXxuY
 IlZH6L2Qpwojavq+jX0YAlKoyM2oUmO04gqEK6tRVm3uth8T6K9yoVkOk2Li5Mk6
 SXjbOHMFt+AAkZwQJWkIWjsx6Vm4c8oBaBrza7WpBDYaZ6UJFJNVB+TW5+rYRK/R
 HbTnykQ9OJCWWA05MdyCfYogE4J627oWpBpXaJQ6j9e45GimyLqD9yzQmmGMoo5F
 JsCM8YirwY3MBaBQB3G/OHwsY9+Gngf/aC+Ijin66bf1oOtq2LFD5gQryw9cp7iV
 2qK44LAejG6oOypdmrFUR9C9fJlzp0NgA8/4BmUGYj65T53YabgWdEP5lsgNr/GG
 /a4MBV+/PxJhK5LPKxOmHx+eRTGOPULMsrL/ZPeSRk3Fu+D1Rrc=
 =Qs5q
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm32-for-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into soc/dt

Qualcomm ARM32 DeviceTree changes for v6.9

Support for the Samsung Galaxy Tab 4 10.1 LTE is added.

On MSM8226 CPU, SAW and ACC nodes are introduced to enable SMP support.
Watchdog definition is also added, and all nodes are sorted and cleaned
up.
rmtfs memory is defined on HTC One Mini 2, vibrator support is addedto
LG G Watch R, touch keycodes are defined for Samsung Galaxy Tab 4.
The Samsung Galaxy Tab 4 DeviceTree is refactored to allow more variants
to be introduced easily.

The SAW nodes across APQ8064, IPQ8064, MSM8960 and MSM8974 are updated
based on recent work on the binding and driver.

On IPQ8064 SAW nodes are cleaned up, and unused reset-names is dropped
from DWC3.

On MSM8960 GSBI3 and the I2C bus therein is introduced, in order to
introduce touchscreen support on the Samsung Galaxy Express SGH-I437.
gpio-keys are introduced on the same.

On MSM8974 the QFPROM register size is corrected. The order of the
clocks in the SDX65 DWC3 node is corrected to match the binding.

For a variety of platforms interrupt-related constants are replaced
with defined.

The mach-qcom Kconfig options are cleaned up, to avoid unnecessary
per-platform options.

* tag 'qcom-arm32-for-6.9' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (40 commits)
  ARM: dts: qcom: samsung-matisse-common: Add UART
  ARM: dts: qcom: Add support for Samsung Galaxy Tab 4 10.1 LTE (SM-T535)
  ARM: dts: qcom: samsung-matisse-common: Add initial common device tree
  ARM: dts: qcom: ipq8064: drop 'regulator' property from SAW2 devices
  ARM: dts: qcom: ipq4019: drop 'regulator' property from SAW2 devices
  ARM: dts: qcom: msm8974: drop 'regulator' property from SAW2 device
  ARM: dts: qcom: apq8084: drop 'regulator' property from SAW2 device
  ARM: dts: qcom: msm8960: declare SAW2 regulators
  ARM: dts: qcom: apq8064: declare SAW2 regulators
  ARM: dts: qcom: ipq8064: rename SAW nodes to power-manager
  ARM: dts: qcom: ipq4019: rename SAW nodes to power-manager
  ARM: dts: qcom: msm8974: rename SAW nodes to power-manager
  ARM: dts: qcom: msm8960: rename SAW nodes to power-manager
  ARM: dts: qcom: apq8084: rename SAW nodes to power-manager
  ARM: dts: qcom: apq8064: rename SAW nodes to power-manager
  ARM: dts: qcom: ipq8064: use SoC-specific compatibles for SAW2 devices
  ARM: dts: qcom: ipq4019: use SoC-specific compatibles for SAW2 devices
  ARM: dts: qcom: msm8960: use SoC-specific compatibles for SAW2 devices
  ARM: dts: qcom: msm8974: use new compat string for L2 SAW2 unit
  ARM: dts: qcom: apq8084: use new compat string for L2 SAW2 unit
  ...

Link: https://lore.kernel.org/r/20240304033507.89751-1-andersson@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:38:54 +01:00
Martin Jocić
9b221ba452 can: kvaser_pciefd: Add support for Kvaser PCIe 8xCAN
Add support for new Kvaser pciefd device, PCIe 8xCAN, based on Xilinx FPGA.

Signed-off-by: Martin Jocic <martin.jocic@kvaser.com>
Link: https://lore.kernel.org/all/2b2c720a788e1904283e354abb320adb5b631d26.camel@kvaser.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2024-03-04 08:38:34 +01:00
Jimmy Assarsson
0b40cd9b4e can: kvaser_usb: Add support for Leaf v3
Add support for Kvaser Leaf v3, based on the hydra platform.

Signed-off-by: Jimmy Assarsson <extja@kvaser.com>
Link: https://lore.kernel.org/all/20240223095217.43783-1-extja@kvaser.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2024-03-04 08:38:34 +01:00
Arnd Bergmann
73022d5f02 Small Sonoff iHost improvements (wifi and mmc aliases)
-----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmXjEMEQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgckBB/95Xc1YA/RntT+1aVGJoMaug9lskFWFtlzS
 VOD106NHkbWixRqfdCMz/LAPFwKtSscUrFMa+jL8iaOLIxUxeGB3BgsuUg3fLCT9
 0ErkysKe/9fPawxzBBbaSOHFQVoqHQiXNFXCDDqbB7h9aJNa9T08h5KPA/uQO8FY
 /pJsSSahyvuKPhl11LXBeLnRu7ef2diFMzQuui5r3IIJUyHlcWwn+vhksVBbq64n
 0+cn5Uq+zhQkWSfhkGgQQnL2uT6IaLbwbhOJ3UGJXyo9V4Xzz7o3NpXirgH6WWmu
 yZxyX9tsQF3VRpRGoYgyJed1/zeoHqhuDPRPNMr8Q3sW56V9I3R4
 =rF09
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXlecAACgkQYKtH/8kJ
 UieVLBAAy81LXtRneEsJ1s39PmOUReJ/9MPQGULf7T7ECXudipPX5M7Z/S2KUpVG
 9uVE/z0IYyfSx+EBLIgtLrsWxq1okLznhSzPyuV1GgzA3N+Mf/nBJZBlp96nxtU2
 tO5VUcyNSBR3Cg7+OqTLPqzLCEOlmxGttObv4bLKS+if2tHFAixDJBr3lj6m/oFZ
 4z9+eenn7WXlkQZJ4EB2jXrAqmGBf78QkcS9T3XMa4maeSorcAP/RgQGzmptnLdL
 9cayL4d6F4W8dlp14JjX4VmwhWKikR709Xk+MB8QHQ8BiwfJgJyiY/VOLTQbKK9G
 3A5bQtLZ4/iIrvrZK2HVoJvO8I2TMOgQXUcfrhWGsL27pBqaStzJ3dZpkifINNT6
 edSFXWjAvUTxPfmsu8u0sJOVhnQgqjH1EM5Knv/Nhgg3srycZamWrW4LpdkBOjZm
 8Vhx/w29BbdYN/9x072MfI728qjgcrmbHY7+JVe1YdCeS34WfVcC6dtASiGdo32K
 ZkObSg1qobjcBN7kXL0UFymzmeVAkR5qBgjtnJx0CQmeLk6ePjAbBwZmtB9Qa6yp
 TFP77HB/THjnXkGkR0yn6yxLtaTbvgapu9bx2hP5yLwPetiYKA+08RnNORV+0CE/
 oSMlz8g7qNEvmglK0cyfIcKmSG4H6M/H6OGon5o6REpdokARv9k=
 =IxoZ
 -----END PGP SIGNATURE-----

Merge tag 'v6.9-rockchip-dts32-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

Small Sonoff iHost improvements (wifi and mmc aliases)

* tag 'v6.9-rockchip-dts32-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: Wifi improvements for Sonoff iHost
  ARM: dts: rockchip: mmc aliases for Sonoff iHost

Link: https://lore.kernel.org/r/3258282.tdWV9SEqCh@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:35:28 +01:00
Arnd Bergmann
b74638bbda Initial support for the rk3568 Qnap TS433 NAS, the rk3588-based Tiger SoM
from Theobroma-Systems and the rk3588-based Toybrick TB-RK3588X.
 Some fixes to conform to dt-bindings for i2s (rk3588, rk356x) and
 rk356x video-decoder (missing interrupt-names).
 
 Correcting the vendor in the compatible for OrangePi RK3399 and BananaPi
 R2 Pro (discussed with DT-maintainers beforehand of course).
 
 The VO1-GRF syscon needs its clock to work, and that clock also needed to
 be actually exported forst, so we're sharing a branch with the Rockchip
 clock-tree (that already got merged into the main clock-tree for 6.9) for
 this small shared code.
 
 And as another step on the long road to graphics output on rk3588, 6.9 will
 get the hdmi-phy via the phy-tree, so here the dts node is added.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmXjFSEQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgZ12CACL8EGrdL32f+Yg+4pgKiC79C0WFh05F56I
 KAgK4nRs3IjOR8zRUx5Wez3uKd7vbH/3GhqSurJQ894FNqpOKYJ48cnokaG/hUV3
 dimEr5dPcSZGVdRcaQRH+B7Pe5hFmw98dZxIDfWOZzZ4XwShcfDYFx6xlGmcba+e
 KyMwjrVHyjh3M384yDx14oJw8bqn2b+oFFaZxCoz93zX9g1FUFbF6IuOsJ0KXXDR
 SRHP+s2jGxUyBltsXyQc4sa4e9i8hDbAZuBwgozLReSgTy+GJqxj87pcsc/4uCAE
 w8MW9RW/xwuFrU+BLs0UNOtdSn8BdHjEyEFc0SEtFAW9HVtoCozP
 =awlr
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXleR4ACgkQYKtH/8kJ
 UifN5w//dcJ1v6HXK31S0Egneku8WUV4ytQuLXvYeg41zIIIEv36sBeqDQxd5taa
 z2/Vy4plHCECvXWjZFEGfK44Hn/0KevrG3rHOzhNUhZV10M1KBHP5uxUYVtrmcYr
 crZsLGy90ZLnZqdKjep1bSxMv1o5QdU9LUjBZmclZEeMky4CH3ZB+sMY9shN6YZM
 wWewSwsLSoa2pAxP9g3izJjFKcwALDjNapmuXe/KFWOIOfJrm3kvASu993sfILYA
 /Wx3IRMerM9tsxAz1/KfKyKYnfT4HbF2RlNTf8OaYdypXU4eLpMboL31k8jCBoTT
 TNVkY5M722r9rbg5hTM4LTRRuEC4rfuDJEyEdHWEgqPIdXK4pwMncQDBVwimunIN
 sEG5TajVI34e9ZInptJQ/ZBCKCllC5gpAPcLw9GrRw7guuCfIbpQj0F+2lDFR9Ob
 FtYW7Ua6Nbw7jPbOCW6qrF/ujnbG3X317aYugpuqiakPW/G+kv11CtRsWZV+OBTv
 SXgRqtYTKprFJxOY5nMnlkG7+ps/B2ctgOGuq1mjcoodsZDF8WW6q00U9Jf9IbVF
 f78ed9DOJ+M70NKJ1QLBIXDLhcZ/Mlv2m9akG8YqmVvBs9efRPQc0mnFQUvWiMDq
 7xFXZRl2i2xe5IX0JIE7Ujvox/APZARrHhQldHfkC9S5jSlCi0E=
 =SbMB
 -----END PGP SIGNATURE-----

Merge tag 'v6.9-rockchip-dts64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into soc/dt

Initial support for the rk3568 Qnap TS433 NAS, the rk3588-based Tiger SoM
from Theobroma-Systems and the rk3588-based Toybrick TB-RK3588X.
Some fixes to conform to dt-bindings for i2s (rk3588, rk356x) and
rk356x video-decoder (missing interrupt-names).

Correcting the vendor in the compatible for OrangePi RK3399 and BananaPi
R2 Pro (discussed with DT-maintainers beforehand of course).

The VO1-GRF syscon needs its clock to work, and that clock also needed to
be actually exported forst, so we're sharing a branch with the Rockchip
clock-tree (that already got merged into the main clock-tree for 6.9) for
this small shared code.

And as another step on the long road to graphics output on rk3588, 6.9 will
get the hdmi-phy via the phy-tree, so here the dts node is added.

* tag 'v6.9-rockchip-dts64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: Fix name for UART pin header on qnap-ts433
  arm64: dts: rockchip: Add basic support for QNAP TS-433
  dt-bindings: arm: rockchip: Add QNAP TS-433
  arm64: dts: rockchip: add Haikou baseboard with RK3588-Q7 SoM
  arm64: dts: rockchip: add RK3588-Q7 (Tiger) SoM
  dt-bindings: arm: rockchip: Add Theobroma-Systems RK3588 Q7 with baseboard
  arm64: dts: rockchip: drop rockchip,trcm-sync-tx-only from rk3588 i2s
  arm64: dts: rockchip: fix reset-names for rk356x i2s2 controller
  arm64: dts: rockchip: add missing interrupt-names for rk356x vdpu
  arm64: dts: rockchip: add clock to vo1-grf syscon on rk3588
  dt-bindings: arm: rockchip: Add Toybrick TB-RK3588X
  arm64: dts: rockchip: Add devicetree support for TB-RK3588X board
  arm64: dts: rockchip: adjust vendor on orangepi rk3399 board
  arm64: dts: rockchip: adjust vendor on Banana Pi R2 Pro board
  dt-bindings: arm: rockchip: Correct vendor for Banana Pi R2 Pro
  dt-bindings: arm: rockchip: Correct vendor for Orange Pi RK3399 board
  arm64: dts: rockchip: Add HDMI0 PHY to rk3588
  dt-bindings: clock: rk3588: add missing PCLK_VO1GRF
  dt-bindings: clock: rk3588: drop CLK_NR_CLKS
  clk: rockchip: rk3588: fix CLK_NR_CLKS usage

Link: https://lore.kernel.org/r/3695004.ElGaqSPkdT@phil
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:32:45 +01:00
Arnd Bergmann
f9c59f2482 RISC-V Devicetrees for v6.9
Sophgo:
 Added reset support for SG2042.
 Also updated maintainer information for SOPHGO vendor support.
 
 Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
 -----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEEyXBewyFOIoMq4pDN7RKLaY1m8IIFAmXdMCsACgkQ7RKLaY1m
 8IKX+Av7B1kOwnjziIpP6TEMz2/mY6LEPyLWwC3uHeoAR4pPw96fbaANqmopkWwB
 dD8lZ8hvpsl/vi8eWbYajhAP9mzlgJzIqSalszdn0J2v/f8S0/4jVeBt56vW70sz
 28r83drHLNeSwtGQX78WDrSvz/f0Q1Awgirl+/7DcI4sTg46rBQvJ22GAHrLnSQ9
 rKxGz86ozGIWOfMwnM/GFzOXtMqK4htJHaVcKWTSjwvIxH4pKOyCnaf4ODJ7XX3k
 W4PvX+DY98tjdpzGLrdS9+n06y+uNIxUSO8XvCwWqcWOELw34xd3yEXAeDFidEHk
 DE52uYoKeZMzmMcZtKPE0oatkjoQg0UiSFadafzh7BsofSoRvF0cFT4BFdiWIjr4
 KkooGnWpRujX0K4Ydba68e1Nk9sSE7e/p7jLUJ9bPgpStH6vuHEcmm6Cdokb7Tyb
 E2a8EO6utlQJghJNkVLUbEjeoD+HawDW52gQDxBX8CJcjfT2ppBFu41x2/d22lP9
 kXFRPb6j
 =Hb4v
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXleOAACgkQYKtH/8kJ
 Uid2xhAA2AOfPFQQMnlpzatq7cRkoJqVTEkX/Vuv/jNDndNCaw3og/uhpjJO54Oz
 3HggpzTdKCKWzpGo8iOWvZPVBBodPXKupwMTvZPA37h3bEmmX591MlmAzRf9lZmi
 BiWyBEaP+gYJ4CY0g2KKAfzmpqzLFYx6rE4IYuuyQapgPdbu0qrB+1M7VwQ2PJXp
 00xIBTM3wAJYwkvsv9ykiiTuNOtnEslseVELYAJ7Z7QEfYekMpC5UgMeRPZpcdS7
 zKnKraN6SH7L0FEtcBVgAIMQxZ3nunJ2ow8ISxdCZXf9KQpYVEF/xGsxqcjaLhmH
 vjFtur3IJD19SxnP4fHw5d+qLu8ENR0kRWjLHLX+x2yut/EHs/7bZmZj/CGCTmV2
 KhK9HDrwE3ETXSHbKbB4dojSjsubsRkaqgKmYeVScf/meXMChQndVuysfX9EbxyT
 70KfIitx1Y5AXPLBvtckVxyfV44tcTGxMSs9V4Fb/+VM5XMc+83/f+mWFfbPUHF1
 LaXN5v3dQNT0Rd2xcc1gx8U6TjptlE9fGpcJziJMgFWtzGocrN+e2TE42znAxlee
 fnXSA5oKNxd9IGjqqkmXDF+wvwqptDyzhCQwWdpkXZ/gvYWbIs1SwdkJl0IiKN0y
 yBNpRI6psd9ZM3V9q8ciia6TPxVpCvxC4m9PKiARgZZ+z/XU6JU=
 =Q+OV
 -----END PGP SIGNATURE-----

Merge tag 'riscv-sophgo-dt-for-v6.9' of https://github.com/sophgo/linux into soc/dt

RISC-V Devicetrees for v6.9

Sophgo:
Added reset support for SG2042.
Also updated maintainer information for SOPHGO vendor support.

Signed-off-by: Chen Wang <unicorn_wang@outlook.com>

* tag 'riscv-sophgo-dt-for-v6.9' of https://github.com/sophgo/linux:
  MAINTAINERS: Setup proper info for SOPHGO vendor support
  riscv: dts: add resets property for uart node
  riscv: dts: add reset generator for Sophgo SG2042 SoC

Link: https://lore.kernel.org/r/MA0P287MB2822315119DA51FF95EE3071FE5D2@MA0P287MB2822.INDP287.PROD.OUTLOOK.COM
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:31:44 +01:00
Arnd Bergmann
3a591d5f44 mvebu dt64 for 6.9 (part 1)
Add mmc support for AC5
 Reorder crypto interrupts on Armada 3720
 Use the correct thermal coefficients for the Armada AP807 dies
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCZeH6zwAKCRALBhiOFHI7
 1TA2AJsH7gju8yblpbWaKqTQ2JEW2PNXfQCgqO/AL5wXAUQbZ3VuXztF0is1zK8=
 =gF/G
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXleDIACgkQYKtH/8kJ
 UifeOw//Ro9y+N4g/1OlKPedwE0L5TmoZu+8vtV+b9Ug8VIKZ1AVzY3a24Wr+DnO
 uqWEcaCVSSES793oZehR6hjtYbHY9P1eQ39RZ23m22V+DD9NGuXknjYvHC/S5rYa
 aRuvaG6SS+UWpqBEWnqlgbB/ukBqN2ug96Tbe4frLACSFVmETgHMBIza30CmFZOo
 IT+ko+A3oGY4ni7fi/3wNscHpcq7GUbC4vGzYZbuTcNGF1SKq2aMH2V34oHVX6T9
 3qlT3YPcNV4QKeeXp/cz5f0TXGEfwUjiHWKalKa9eX2nTgHF0qmMrN2pOLYlBB28
 X6/VT/f9LsUQBAMJMTrHW6PTPAwZkfFEmq53oBzEq6/gXNK6SQyFgIOKS0kRMPIj
 6vzhyJeMACpmDf5yrfJ99Alr0DAn9OggN3f074S/C6S51gjfA7+cMQzYap6Ciwvv
 yl5RBJIXojdYzX7tS8RiiJ7X3ckxwGaDGyIdu6Azcl5rGTcA5Q4izOTHDh7A7+4Y
 AhPEt5t87YQJRFn32YOXLI3uBuQhtniXKSqXgE6aFE6Il7Y7QxhgR5aQj+KZyIVC
 lc5bt5UBYEe8lPzzvfpWlMskU9C+0TmBDYYzG5xmWGL736IYNyU7Yl30iZyuT/K9
 tPjN/iCT4YgqB5Guv/vljyNs/fans5FtOf/qD0EglOXw2WaxEQQ=
 =kYOG
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt64-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into soc/dt

mvebu dt64 for 6.9 (part 1)

Add mmc support for AC5
Reorder crypto interrupts on Armada 3720
Use the correct thermal coefficients for the Armada AP807 dies

* tag 'mvebu-dt64-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  arm64: dts: armada-ap807: update thermal compatible
  arm64: dts: marvell: reorder crypto interrupts on Armada SoCs
  arm64: dts: ac5: add mmc node and clock

Link: https://lore.kernel.org/r/87a5nihr8g.fsf@BL-laptop
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:28:50 +01:00
Arnd Bergmann
ada123939e mvebu dt for 6.9 (part 1)
a38x: improve solidrun armada 388 clearfog GTR device support:
 
 Initial device-tree merge for Clearfog GTR devices had issues causing
 problems with sfp connectors. The fixes are:
  - Converted armada-38x dt-bindings to yaml and replaced invalid
    compatibles.
  - Added pinctrl nodes for all referenced gpios and removed invalid io
    from first sfp connector.
  - Added descriptions for secondary sfp connector and updated labels
    of dsa switch ports.
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCZeH6DQAKCRALBhiOFHI7
 1fKjAKCg3i8QgETGp25vDrsXGRjoGWYu5wCgk5Be8nJCv9RCANR/mEsi9L82fE8=
 =MqJ8
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXldy8ACgkQYKtH/8kJ
 UidZDg/7BcjI72RpD5ObwjN9m4p5ccSah4ngzszMfmHob2B3QLKzab1g3ZLs6AtX
 EfrRnlJXZJHQrQ1/cX6RokkSO44QX/M9T6TaT04QyaH7M23EYvB2CwzoNHLp7Tcf
 qyu4cP7zgvQ27c2zvnA0prkmm3c5tDlGHhZIdjpz2g4wEu8CQJbIchg4LH2DMRFm
 ntY73xVL7l3hImNmDZXvYH97Fn+QRxtLVUej6ANtVeM0Bd8gsspyl4tszDrWB2xd
 cSTXJc4hyJ8bKtdAtTkXDZ4itMPwKxLihbVpS2MEVt1ffLG1tD34x+DJZUm9p4dY
 Qy3+lXD4Wc0ZxHDxZr0UIV2EXIlONLHOAIqaS12PSQTECqWoI6/seD0Tm/DCSvUp
 mYV+1akoQ39YzK5ogynDwD7zRcgaKXpkOb8fpLTnvyjmAz5G40JFJOuUbA8MhH21
 1O4ieyJzFzjGz7VW6hfr3atC/TOTm3uFNBuHREgd8MHqBV1PBvOG1QyAcc/MspY5
 zc0eI6iufmZVh46ZznTqsnsMquSAIVyK/SldrKsu7zA5er/1173Nk7yPTHQAEoI4
 xuiUVgfy2RVwBVOxIEUrI5D1n5VrXXEqrpEXFvcOGDZsL4JDl5DGdpxuxTaMnFbd
 yvHGENgfBBFyYSKfxDpGWInyuRK90W9KkOBeXWX2pcTlUdl/sLc=
 =Q958
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into soc/dt

mvebu dt for 6.9 (part 1)

a38x: improve solidrun armada 388 clearfog GTR device support:

Initial device-tree merge for Clearfog GTR devices had issues causing
problems with sfp connectors. The fixes are:
 - Converted armada-38x dt-bindings to yaml and replaced invalid
   compatibles.
 - Added pinctrl nodes for all referenced gpios and removed invalid io
   from first sfp connector.
 - Added descriptions for secondary sfp connector and updated labels
   of dsa switch ports.

* tag 'mvebu-dt-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  arm: dts: marvell: clearfog-gtr-l8: align port numbers with enclosure
  arm: dts: marvell: clearfog-gtr-l8: add support for second sfp connector
  arm: dts: marvell: clearfog-gtr: add missing pinctrl for all used gpios
  arm: dts: marvell: clearfog-gtr: sort pinctrl nodes alphabetically
  arm: dts: marvell: clearfog-gtr: add board-specific compatible strings
  arm: dts: marvell: clearfog: add pro variant compatible in legacy dts
  dt-bindings: marvell: a38x: add solidrun armada 385 clearfog gtr boards
  dt-bindings: marvell: a38x: add kobol helios-4 board
  dt-bindings: marvell: a38x: add solidrun armada 388 clearfog boards
  dt-bindings: marvell: a38x: convert soc compatibles to yaml

Link: https://lore.kernel.org/r/87cysehr9k.fsf@BL-laptop
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 08:24:31 +01:00
Hans de Goede
ac3e038407 misc: lis3lv02d_i2c: Fix regulators getting en-/dis-abled twice on suspend/resume
When not configured for wakeup lis3lv02d_i2c_suspend() will call
lis3lv02d_poweroff() even if the device has already been turned off
by the runtime-suspend handler and if configured for wakeup and
the device is runtime-suspended at this point then it is not turned
back on to serve as a wakeup source.

Before commit b1b9f7a494 ("misc: lis3lv02d_i2c: Add missing setting
of the reg_ctrl callback"), lis3lv02d_poweroff() failed to disable
the regulators which as a side effect made calling poweroff() twice ok.

Now that poweroff() correctly disables the regulators, doing this twice
triggers a WARN() in the regulator core:

unbalanced disables for regulator-dummy
WARNING: CPU: 1 PID: 92 at drivers/regulator/core.c:2999 _regulator_disable
...

Fix lis3lv02d_i2c_suspend() to not call poweroff() a second time if
already runtime-suspended and add a poweron() call when necessary to
make wakeup work.

lis3lv02d_i2c_resume() has similar issues, with an added weirness that
it always powers on the device if it is runtime suspended, after which
the first runtime-resume will call poweron() again, causing the enabled
count for the regulator to increase by 1 every suspend/resume. These
unbalanced regulator_enable() calls cause the regulator to never
be turned off and trigger the following WARN() on driver unbind:

WARNING: CPU: 1 PID: 1724 at drivers/regulator/core.c:2396 _regulator_put

Fix this by making lis3lv02d_i2c_resume() mirror the new suspend().

Fixes: b1b9f7a494 ("misc: lis3lv02d_i2c: Add missing setting of the reg_ctrl callback")
Reported-by: Paul Menzel <pmenzel@molgen.mpg.de>
Closes: https://lore.kernel.org/regressions/5fc6da74-af0a-4aac-b4d5-a000b39a63a5@molgen.mpg.de/
Cc: stable@vger.kernel.org
Cc: regressions@lists.linux.dev
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Paul Menzel <pmenzel@molgen.mpg.de> # Dell XPS 15 7590
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Link: https://lore.kernel.org/r/20240220190035.53402-1-hdegoede@redhat.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-03-04 07:59:43 +01:00
Nuno Das Neves
0e3f7d1200 hyperv-tlfs: Change prefix of generic HV_REGISTER_* MSRs to HV_MSR_*
The HV_REGISTER_ are used as arguments to hv_set/get_register(), which
delegate to arch-specific mechanisms for getting/setting synthetic
Hyper-V MSRs.

On arm64, HV_REGISTER_ defines are synthetic VP registers accessed via
the get/set vp registers hypercalls. The naming matches the TLFS
document, although these register names are not specific to arm64.

However, on x86 the prefix HV_REGISTER_ indicates Hyper-V MSRs accessed
via rdmsrl()/wrmsrl(). This is not consistent with the TLFS doc, where
HV_REGISTER_ is *only* used for used for VP register names used by
the get/set register hypercalls.

To fix this inconsistency and prevent future confusion, change the
arch-generic aliases used by callers of hv_set/get_register() to have
the prefix HV_MSR_ instead of HV_REGISTER_.

Use the prefix HV_X64_MSR_ for the x86-only Hyper-V MSRs. On x86, the
generic HV_MSR_'s point to the corresponding HV_X64_MSR_.

Move the arm64 HV_REGISTER_* defines to the asm-generic hyperv-tlfs.h,
since these are not specific to arm64. On arm64, the generic HV_MSR_'s
point to the corresponding HV_REGISTER_.

While at it, rename hv_get/set_registers() and related functions to
hv_get/set_msr(), hv_get/set_nested_msr(), etc. These are only used for
Hyper-V MSRs and this naming makes that clear.

Signed-off-by: Nuno Das Neves <nunodasneves@linux.microsoft.com>
Reviewed-by: Wei Liu <wei.liu@kernel.org>
Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Link: https://lore.kernel.org/r/1708440933-27125-1-git-send-email-nunodasneves@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Message-ID: <1708440933-27125-1-git-send-email-nunodasneves@linux.microsoft.com>
2024-03-04 06:59:18 +00:00
Ian Rogers
7bfc84b23e perf threads: Reduce table size from 256 to 8
The threads data structure is an array of hashmaps, previously
rbtrees. The two levels allows for a fixed outer array where access is
guarded by rw_semaphores. Commit 91e467bc56 ("perf machine: Use
hashtable for machine threads") sized the outer table at 256 entries
to avoid future scalability problems, however, this means the threads
struct is sized at 30,720 bytes. As the hashmaps allow O(1) access for
the common find/insert/remove operations, lower the number of entries
to 8. This reduces the size overhead to 960 bytes.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-8-irogers@google.com
2024-03-03 22:52:13 -08:00
Ian Rogers
412a2ff473 perf threads: Switch from rbtree to hashmap
The rbtree provides a sorting on entries but this is unused. Switch to
using hashmap for O(1) rather than O(log n) find/insert/remove
complexity.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-7-irogers@google.com
2024-03-03 22:52:04 -08:00
Ian Rogers
93bb5b0d93 perf threads: Move threads to its own files
Move threads out of machine and into its own file.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-6-irogers@google.com
2024-03-03 22:51:55 -08:00
Ian Rogers
d436f90a64 perf machine: Move machine's threads into its own abstraction
Move thread_rb_node into the machine.c file. This hides the
implementation of threads from the rest of the code allowing for it to
be refactored.

Locking discipline is tightened up in this change. As the lock is now
encapsulated in threads, the findnew function requires holding it (as
it already did in machine). Rather than do conditionals with locks
based on whether the thread should be created (which could potentially
be error prone with a read lock match with a write unlock), have a
separate threads__find that won't create the thread and only holds the
read lock. This effectively duplicates the findnew logic, with the
existing findnew logic only operating under a write lock assuming
creation is necessary as a previous find failed. The creation may
still fail with the write lock due to another thread. The duplication
is removed in a later next patch that delegates the implementation to
hashtable.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-5-irogers@google.com
2024-03-03 22:51:44 -08:00
Ian Rogers
45ac4960d7 perf machine: Move fprintf to for_each loop and a callback
Avoid exposing the threads data structure by switching to the callback
machine__for_each_thread approach. machine__fprintf is only used in
tests and verbose >3 output so don't turn to list and sort. Add
machine__threads_nr to be refactored later.

Note, all existing *_fprintf routines ignore fprintf errors.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-4-irogers@google.com
2024-03-03 22:51:31 -08:00
Ian Rogers
f178ffdf7e perf trace: Ignore thread hashing in summary
Commit 91e467bc56 ("perf machine: Use hashtable for machine
threads") made the iteration of thread tids unordered. The perf trace
--summary output sorts and prints each hash bucket, rather than all
threads globally. Change this behavior by turn all threads into a
list, sort the list by number of trace events then by tids, finally
print the list. This also allows the rbtree in threads to be not
accessed outside of machine.

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-3-irogers@google.com
2024-03-03 22:51:18 -08:00
Ian Rogers
2f1e20feb9 perf report: Sort child tasks by tid
Commit 91e467bc56 ("perf machine: Use hashtable for machine
threads") made the iteration of thread tids unordered. The perf report
--tasks output now shows child threads in an order determined by the
hashing. For example, in this snippet tid 3 appears after tid 256 even
though they have the same ppid 2:

```
$ perf report --tasks
%      pid      tid     ppid  comm
         0        0       -1 |swapper
         2        2        0 | kthreadd
       256      256        2 |  kworker/12:1H-k
    693761   693761        2 |  kworker/10:1-mm
   1301762  1301762        2 |  kworker/1:1-mm_
   1302530  1302530        2 |  kworker/u32:0-k
         3        3        2 |  rcu_gp
...
```

The output is easier to read if threads appear numerically
increasing. To allow for this, read all threads into a list then sort
with a comparator that orders by the child task's of the first common
parent. The list creation and deletion are created as utilities on
machine.  The indentation is possible by counting the number of
parents a child has.

With this change the output for the same data file is now like:
```
$ perf report --tasks
%      pid      tid     ppid  comm
         0        0       -1 |swapper
         1        1        0 | systemd
       823      823        1 |  systemd-journal
       853      853        1 |  systemd-udevd
      3230     3230        1 |  systemd-timesyn
      3236     3236        1 |  auditd
      3239     3239     3236 |   audisp-syslog
      3321     3321        1 |  accounts-daemon
...
```

Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-2-irogers@google.com
2024-03-03 22:50:55 -08:00
Sandipan Das
498d348637 perf vendor events amd: Fix Zen 4 cache latency events
L3PMCx0AC and L3PMCx0AD, used in l3_xi_sampled_latency* events, have a
quirk that requires them to be programmed with SliceId set to 0x3.
Without this, the events do not count at all and affects dependent
metrics such as l3_read_miss_latency.

If ThreadMask is not specified, the amd-uncore driver internally sets
ThreadMask to 0x3, EnAllCores to 0x1 and EnAllSlices to 0x1 but does
not set SliceId. Since SliceId must also be set to 0x3 in this case,
specify all the other fields explicitly.

E.g.

  $ sudo perf stat -e l3_xi_sampled_latency.all,l3_xi_sampled_latency_requests.all -a sleep 1

Before:

   Performance counter stats for 'system wide':

                   0      l3_xi_sampled_latency.all
                   0      l3_xi_sampled_latency_requests.all

         1.005155399 seconds time elapsed

After:

   Performance counter stats for 'system wide':

             921,446      l3_xi_sampled_latency.all
              54,210      l3_xi_sampled_latency_requests.all

         1.005664472 seconds time elapsed

Fixes: 5b2ca349c3 ("perf vendor events amd: Add Zen 4 uncore events")
Signed-off-by: Sandipan Das <sandipan.das@amd.com>
Reviewed-by: Ian Rogers <irogers@google.com>
Cc: ananth.narayan@amd.com
Cc: ravi.bangoria@amd.com
Cc: eranian@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301084431.646221-1-sandipan.das@amd.com
2024-03-03 22:49:37 -08:00
James Clark
507ad2bde3 perf version: Display availability of OpenCSD support
This is useful for scripts that work with Perf and ETM trace. Rather
than them trying to parse Perf's error output at runtime to see if it
was linked or not.

Signed-off-by: James Clark <james.clark@arm.com>
Reviewed-by: Ian Rogers <irogers@google.com>
Cc: al.grant@arm.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301133829.346286-1-james.clark@arm.com
2024-03-03 22:48:40 -08:00
Arnd Bergmann
ba5b25bbac Renesas DT binding updates for v6.9 (take three)
- Add missing gray-hawk pattern to list of preferred compatible names.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCZeH0JgAKCRCKwlD9ZEnx
 cGcIAQCMquizzQhRrsFmzcRXziP0FiLf+vJxJfU9qqMv1KUszwEAkJxT8CYDteQw
 W/c1F7QmK13iDMj9MBV0SKzcjnQGgQo=
 =dqFO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXlbsIACgkQYKtH/8kJ
 UicU7w//fLk0IKDqjZIexdXUoITT1IZu5zTMET2HoiFYrxJro730jEY2PHb/xoRs
 4qbt/NL7r+1vi3Xc37ZlrUdtEV1d1GicKQbZc993a30ffWJpUT6Xb1rd1iHMm/XE
 P61nzjDVTMkIfSKEDESS0+Fadpemjiso2sHHalGcRqASYEGco0rp9VWNZquUUsnQ
 cjgJM4CXXAC1dnKbrcGCYYJSaBSAJeM95abyuzT46yauBGnG4zDxtVMcTq2ZD4ed
 NS2+n45FtLnc+j8FiJTt+LyuvHN4oZvRlcWHX1af6ZmYtDCgP7dyYZWWIlQ3bW4C
 9516sMrqxufWrEx0W/GnIQaWlWWmD4GMgIRwIMfEp6CfxTDqKEg1G3hsWH+HdXco
 uTLNLSPEERTjTI67EdUEjpuVdtkcu27dZBM9IJBAwLWanqxoig+90lBG+ZvyccQb
 XibHOD3mx27bg0DLWM7IrmkFYXQyNhA8OEh3CSiznoFzPEG8iDUssSaaPZGdtZW2
 tDSeMxSsObi7eAL949ncvUOa7Ed+OmW4UQ570mAZgncY5JYPUz9Gy12p6spKxSJM
 d5ZEnYL5lxZC/TSH8kINrMGoLaDa5c3pYfG5iJguLP3+xNDLdKGBN37bx/hFZ1HX
 GjdwqcAFwLFc9sUMe4ixDbYFvTwerqpJrkLhLX/+qjCX51R0UD8=
 =WCz2
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt-bindings-for-v6.9-tag3' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DT binding updates for v6.9 (take three)

  - Add missing gray-hawk pattern to list of preferred compatible names.

* tag 'renesas-dt-bindings-for-v6.9-tag3' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: soc: renesas: renesas-soc: Add pattern for gray-hawk

Link: https://lore.kernel.org/r/cover.1709307006.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 07:48:34 +01:00
Arnd Bergmann
f011770485 STM32 DT for v6.9, round 1
Highlights:
 ----------
 
 - MCU:
   - Add DSI support on stm32f769.
   - Add display support on stm32f769-disco.
   - Add stm32f769-disco-mb1166-reva09 board support which belongs to
     the novatek NT35510 panel.
 
 - MPU:
   - STM32MP13:
     - Add CRC support an enable it on stm32mp135f-dk.
     - Enable CRYP on stm32mp135f-dk.
 
   - STMP32MP15:
    - Fix DSI peripheral clock: use bus clock instead of kernel clock
      for pclk.
 
    - LXA: driver powerboard lines as open drain.
    - LXA: reduce RGMII drive strenght to reduce EMI emmissions.
 
   - STM32MP25:
     - Add video encoder / video decoder support.
 -----BEGIN PGP SIGNATURE-----
 
 iQJRBAABCgA7FiEEctl9+nxzUSUqdELdf5rJavIecIUFAmXgVQ8dHGFsZXhhbmRy
 ZS50b3JndWVAZm9zcy5zdC5jb20ACgkQf5rJavIecIXNVA/+PqcJRmO1aWmj/1HY
 DSwmCZ9W8kIVuUT1X/oAcb2UwiDOvNNSelAKARs4KWmc54sH7LW7xek7iEes127a
 xaqdnCShFdHYtqfrVsiPTncRjplNzKrvINvKDdkPvFHp0qgQ7IjwWlkZY2JOssya
 9iorKAu846fxD8/1QJUDmnJOpXY4lvl4XczMICw5NKEAV5L6oIf4jiND59h/jd0d
 5vYO99wy5f4Gf0uSJSgGPDJxtyJwjff2HaNZJGL5dHstd7VF8gUV/Nvd6rMhaAEv
 dpkITRnmS7aF3+BBXDM3pa8zVuXwnNd/6w5OWSUJNRL+LQEmeS3aUSJ3BxrsGXtL
 75drVHdLhqHtxYrEJlRSWnAUNJMrG/SDN6nfcTPV5F0Mlj8B790K6E9c5YA5iYAH
 9yeGaOPj3EcTo2nzfvZMdpuO6Dw0wn3ahzGjBWg24F4QfSqKvfuok0A6FgXQEKvj
 b98HLiywy3hBZGnupxHzGRFp+LO41o1uVzCMMoSZoXSNH0JIm/3de3lFcpmxlkmG
 p0/+5scL1f3Jfc9x4D6Xa7pwZOrfZiZ8JM8DOCVEO2LQ5d/p0mcR4zMLVCYS8LQA
 6GQseDUR+egEpRpnejIPvWm06CSKBm5PuZLByWPKmkEXMMPQM07wQfMeyIwWJ/cO
 MGwMoAU2qaerBYlhSb87d2eFJ44=
 =CSVX
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXlblUACgkQYKtH/8kJ
 UieUzw//VkCNYTje/5+dZ19wa9Rw5upL9awkgKvIfzs7lwmVivPRVUHoCpGNSsNc
 AFHc+AdLFynwowShOR4oMDyT4f50b4+1OXfUXIRI6vDkg42vbqBoMrYrSFqtMJRt
 RbRaMRm9QrInHzoQzJgKIvq+Jo57TCXuEeE7tPMVhR48h2yB8rlwkP74oEnvVFgl
 iLtU9ScXZe0dS/inBadKF7tSv57I7FTFMCQ5wSqvwPF3QAT21EaXdp5daE0Vf71f
 r1Jgy1AAm4JWrMexAtDJCuSx2stYMK7n8VKZBB6AZ4321TFlrIGnY4GGVU5vJXRS
 X2sfWKK/YHucfSC1w+Mwr8pVGicjZy+4izNDyqDcTivkSohLDsf74UDNZqjzs0gT
 yvzH1MwIqKHgkcjWo5ZP/Sf2M8DU8L65IwFn9Yf5l7LaEIT9ZZGGLDgosz4gTR2b
 aRiz5g1S2gsodJgsFQhFFebjtI5cxmnZC9rRxdDMT8KHS8RE2h7WuJt102NkFKNO
 pReg5RPEcJ6JYoQk/4lBN6L4ls5o8txu1YMeS9uxq5kt8tiejz1ZzT97FfD+yWBg
 sizT6AW+FojLsWiSeRUtsTjvzfkI0/gCGx8AorzG8nWJCDWSq1qIxUoucqTk0naM
 vTQDLi4Lf6g2USSwl/cXaaTOVJ8QYVzCbwqwDjgNceReP9FEpkE=
 =p/sn
 -----END PGP SIGNATURE-----

Merge tag 'stm32-dt-for-v6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32 into soc/dt

STM32 DT for v6.9, round 1

Highlights:
----------

- MCU:
  - Add DSI support on stm32f769.
  - Add display support on stm32f769-disco.
  - Add stm32f769-disco-mb1166-reva09 board support which belongs to
    the novatek NT35510 panel.

- MPU:
  - STM32MP13:
    - Add CRC support an enable it on stm32mp135f-dk.
    - Enable CRYP on stm32mp135f-dk.

  - STMP32MP15:
   - Fix DSI peripheral clock: use bus clock instead of kernel clock
     for pclk.

   - LXA: driver powerboard lines as open drain.
   - LXA: reduce RGMII drive strenght to reduce EMI emmissions.

  - STM32MP25:
    - Add video encoder / video decoder support.

* tag 'stm32-dt-for-v6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32:
  arm64: dts: st: add video encoder support to stm32mp255
  arm64: dts: st: add video decoder support to stm32mp255
  ARM: dts: stm32: enable crypto accelerator on stm32mp135f-dk
  ARM: dts: stm32: enable CRC on stm32mp135f-dk
  ARM: dts: stm32: add CRC on stm32mp131
  ARM: dts: add stm32f769-disco-mb1166-reva09
  ARM: dts: stm32: add display support on stm32f769-disco
  ARM: dts: stm32: rename mmc_vcard to vcc-3v3 on stm32f769-disco
  ARM: dts: stm32: add DSI support on stm32f769
  dt-bindings: mfd: stm32f7: Add binding definition for DSI
  dt-bindings: nt35510: document 'port' property
  ARM: dts: stm32: lxa-tac: reduce RGMII interface drive strength
  ARM: dts: stm32: fix DSI peripheral clock on stm32mp15 boards
  ARM: dts: stm32: lxa-tac: drive powerboard lines as open-drain

Link: https://lore.kernel.org/r/a7ae1058-e24d-4a6b-900f-401f0e3ae17c@foss.st.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2024-03-04 07:46:45 +01:00
Jianhua Lu
2219626708 arm64: dts: qcom: sm8250-xiaomi-elish: set rotation
Xiaomi Pad 5 Pro has a 2560x1600 portrait screen, set RIGHT_UP rotation
to make it look like a landscape screen.

Signed-off-by: Jianhua Lu <lujianhua000@gmail.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20240227121744.10918-1-lujianhua000@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:06:13 -08:00
Krzysztof Kozlowski
9f378a6216 soc: qcom: aoss: add missing kerneldoc for qmp members
Add missing kerneldoc to silence:

  qcom_aoss.c:93: warning: Function parameter or struct member 'debugfs_root' not described in 'qmp'
  qcom_aoss.c:93: warning: Function parameter or struct member 'debugfs_files' not described in 'qmp'

Fixes: d51d984c55 ("soc: qcom: aoss: Add debugfs interface for sending messages")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240225202545.59113-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:01:51 -08:00
Krzysztof Kozlowski
87edd944ff soc: qcom: geni-se: drop unused kerneldoc struct geni_wrapper param
Drop description of non-existing 'struct geni_wrapper' member:

  qcom-geni-se.c:99: warning: Excess struct member 'to_core' description in 'geni_wrapper'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240225202545.59113-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:01:51 -08:00
Gabor Juhos
7d474b4308 clk: qcom: gcc-ipq5018: fix register offset for GCC_UBI0_AXI_ARES reset
The current register offset used for the GCC_UBI0_AXI_ARES reset
seems wrong. Or at least, the downstream driver uses [1] the same
offset which is used for other the GCC_UBI0_*_ARES resets.

Change the code to use the same offset used in the downstream
driver and also specify the reset bit explicitly to use the
same format as the followup entries.

1. https://git.codelinaro.org/clo/qsdk/oss/kernel/linux-ipq-5.4/-/blob/NHSS.QSDK.12.4.r4/drivers/clk/qcom/gcc-ipq5018.c?ref_type=heads#L3773

Fixes: e3fdbef1ba ("clk: qcom: Add Global Clock controller (GCC) driver for IPQ5018")
Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Kathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Link: https://lore.kernel.org/r/20240225-gcc-ipq5018-register-fixes-v1-3-3c191404d9f0@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:00:49 -08:00
Gabor Juhos
11b752ac5a clk: qcom: gcc-ipq5018: fix 'halt_reg' offset of 'gcc_pcie1_pipe_clk'
The following table shows the values of the 'halt_reg' and the
'enable_reg' fields from the pcie clocks defined in the current
driver:

  clock                        halt_reg    enable_reg

  gcc_pcie0_ahb_clk            0x75010     0x75010
  gcc_pcie0_aux_clk            0x75014     0x75014
  gcc_pcie0_axi_m_clk          0x75008     0x75008
  gcc_pcie0_axi_s_bridge_clk   0x75048     0x75048
  gcc_pcie0_axi_s_clk          0x7500c     0x7500c
  gcc_pcie0_pipe_clk           0x75018     0x75018

  gcc_pcie1_ahb_clk            0x76010     0x76010
  gcc_pcie1_aux_clk            0x76014     0x76014
  gcc_pcie1_axi_m_clk          0x76008     0x76008
  gcc_pcie1_axi_s_bridge_clk   0x76048     0x76048
  gcc_pcie1_axi_s_clk          0x7600c     0x7600c
  gcc_pcie1_pipe_clk                 8*    0x76018

Based on the table, it is quite likely that the pcie0 and the pci1
clocks are using the same register layout, however it seems that
the value of the 'halt_reg' field in the 'gcc_pcie1_pipe_clk' clock
is wrong.

In the downstream driver [1], the same '0x76018' value is used for
both the 'halt_reg' and for the 'enable_reg' fields of the
'gcc_pcie1_pipe_clk' clock.

Update the current driver to use the same value used downstream as
probably that is the correct value.

1. https://git.codelinaro.org/clo/qsdk/oss/kernel/linux-ipq-5.4/-/blob/NHSS.QSDK.12.4.r4/drivers/clk/qcom/gcc-ipq5018.c?ref_type=heads#L2316

Fixes: e3fdbef1ba ("clk: qcom: Add Global Clock controller (GCC) driver for IPQ5018")
Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Kathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Link: https://lore.kernel.org/r/20240225-gcc-ipq5018-register-fixes-v1-2-3c191404d9f0@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:00:49 -08:00
Gabor Juhos
f982adcc1b clk: qcom: gcc-ipq5018: fix 'enable_reg' offset of 'gcc_gmac0_sys_clk'
The value of the 'enable_reg' field in the 'gcc_gmac0_sys_clk'
clock definition seems wrong as it is greater than the
'max_register' value defined in the regmap configuration.
Additionally, all other gmac specific branch clock definitions
within the driver uses the same value both for the 'enable_reg'
and for the 'halt_reg' fields.

Due to the lack of documentation the correct value is not known.
Looking into the downstream driver does not help either, as that
uses the same (presumably wrong) value [1].

Nevertheless, change the 'enable_reg' field of 'gcc_gmac0_sys_clk'
to use the value from the 'halt_reg' field so it follows the pattern
used in other gmac clock definitions. The change is based on the
assumption that the register layout of this clock is the same
as the other gmac clocks.

1. https://git.codelinaro.org/clo/qsdk/oss/kernel/linux-ipq-5.4/-/blob/NHSS.QSDK.12.4.r4/drivers/clk/qcom/gcc-ipq5018.c?ref_type=heads#L1889

Fixes: e3fdbef1ba ("clk: qcom: Add Global Clock controller (GCC) driver for IPQ5018")
Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Kathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Link: https://lore.kernel.org/r/20240225-gcc-ipq5018-register-fixes-v1-1-3c191404d9f0@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 20:00:49 -08:00
Arnd Bergmann
26a526c256 soc: qcom: spm: fix building with CONFIG_REGULATOR=n
The newly added code causes a build failure when -Werror is set:

drivers/soc/qcom/spm.c:388:12: error: 'spm_get_cpu' defined but not used [-Werror=unused-function]

Remove the #ifdef and instead use an IS_ENABLED() check that lets the
compiler perform dead code elimination instead of the preprocessor.

Fixes: 6496dba142 ("soc: qcom: spm: add support for voltage regulator")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20240221154457.2007420-1-arnd@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 19:54:47 -08:00
Abel Vesa
a4f82b8045 arm64: dts: qcom: sm8650: Fix SPMI channels size
The actual size of the channels registers region is 4MB, according to the
documentation. This issue was not caught until now because the driver was
supposed to allow same regions being mapped multiple times for supporting
multiple buses. Thie driver is using platform_get_resource_byname() and
devm_ioremap() towards that purpose, which intentionally avoids
devm_request_mem_region() altogether.

Fixes: 10e0246712 ("arm64: dts: qcom: sm8650: add interconnect dependent device nodes")
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8650-QRD
Link: https://lore.kernel.org/r/20240221-dts-qcom-sm8550-fix-spmi-chnls-size-v2-2-72b5efd9dc4f@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 19:53:44 -08:00
Abel Vesa
77dd1e50ff arm64: dts: qcom: sm8550: Fix SPMI channels size
The actual size of the channels registers region is 4MB, according to the
documentation. This issue was not caught until now because the driver was
supposed to allow same regions being mapped multiple times for supporting
multiple buses. Thie driver is using platform_get_resource_byname() and
devm_ioremap() towards that purpose, which intentionally avoids
devm_request_mem_region() altogether.

Fixes: ffc50b2d38 ("arm64: dts: qcom: Add base SM8550 dtsi")
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550-QRD
Link: https://lore.kernel.org/r/20240221-dts-qcom-sm8550-fix-spmi-chnls-size-v2-1-72b5efd9dc4f@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 19:53:44 -08:00
Dmitry Baryshkov
4f423c4cbe Revert "arm64: dts: qcom: msm8996: Hook up MPM"
Commit 09896da073 ("arm64: dts: qcom: msm8996: Hook up MPM") has
hooked up the MPM irq chip on the MSM8996 platform. However this causes
my Dragonboard 820c crash during bootup (usually when probing IOMMUs).
Revert the offending commit for now. Quick debug shows that making
tlmm's wakeup-parent point to the MPM is enough to trigger the crash.

Fixes: 09896da073 ("arm64: dts: qcom: msm8996: Hook up MPM")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240221-msm8996-revert-mpm-v1-1-cdca9e30c9b4@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-03-03 19:49:51 -08:00
Rob Clark
177bce60cd drm-misc-next for v6.9:
UAPI Changes:
 
 Cross-subsystem Changes:
 
 backlight:
 - corgi: include backlight header
 
 fbdev:
 - Cleanup includes in public header file
 - fbtft: Include backlight header
 
 Core Changes:
 
 edid:
 - Remove built-in EDID data
 
 dp:
 - Avoid AUX transfers on powered-down displays
 - Add VSC SDP helpers
 
 modesetting:
 - Add sanity checks for polling
 - Cleanups
 
 scheduler:
 - Cleanups
 
 tests:
 - Add helpers for mode-setting tests
 
 Driver Changes:
 
 i915:
 - Use shared VSC SDP helper
 
 mgag200:
 - Work around PCI write bursts
 
 mxsfb:
 - Use managed mode config
 
 nouveau:
 - Include backlight header where necessary
 
 qiac:
 - Cleanups
 
 sun4:
 - HDMI: updates to atomic mode setting
 
 tegra:
 - Fix GEM refounting in error paths
 
 tidss:
 - Fix multi display
 - Fix initial Z position
 
 v3d:
 - Support display MMU page size
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEchf7rIzpz2NEoWjlaA3BHVMLeiMFAmXgRIMACgkQaA3BHVML
 eiMk1Qf+Is19K+5tihgNUQdb30Skxcf+AFfM/t4Cr+aYu6XbmcKtghLGRdoHI73P
 zEbQBuuF4pu1TH/Ls6i5TmPeAzWMFTf1eBTrgfLZG4Gn0VTu/gBMt+yOFj7AMST2
 RP91VpIeq0XHqTt20m4lJhcDw4L0qni2Yyyubqy8TgZz1yTnmbZgLNaZvrShvP8E
 OBE9IrkZjHSy6S8hjlaWEl2YkxzzeQAUSapIG2xS6LDLiJjZhuIIjkJvK6stgIm+
 JXUwBPdipoHwAswOz5ye9GZiYlUWb99azgtDXEp3G6iNWvZp8oB30wOeUksLFTDu
 7vr5r2/ppnymwutPt8EEAyKMAIsBDA==
 =CC7X
 -----END PGP SIGNATURE-----

Merge tag 'drm-misc-next-2024-02-29' into msm-next

Merge to pick up commit 47f419e071 ("drm/dp: move
intel_dp_vsc_sdp_pack() to generic helper")

drm-misc-next for v6.9:

UAPI Changes:

Cross-subsystem Changes:

backlight:
- corgi: include backlight header

fbdev:
- Cleanup includes in public header file
- fbtft: Include backlight header

Core Changes:

edid:
- Remove built-in EDID data

dp:
- Avoid AUX transfers on powered-down displays
- Add VSC SDP helpers

modesetting:
- Add sanity checks for polling
- Cleanups

scheduler:
- Cleanups

tests:
- Add helpers for mode-setting tests

Driver Changes:

i915:
- Use shared VSC SDP helper

mgag200:
- Work around PCI write bursts

mxsfb:
- Use managed mode config

nouveau:
- Include backlight header where necessary

qiac:
- Cleanups

sun4:
- HDMI: updates to atomic mode setting

tegra:
- Fix GEM refounting in error paths

tidss:
- Fix multi display
- Fix initial Z position

v3d:
- Support display MMU page size

Signed-off-by: Rob Clark <robdclark@chromium.org>
2024-03-03 18:32:11 -08:00
David Howells
8985f2b09b rxrpc: Use rxrpc_txbuf::kvec[0] instead of rxrpc_txbuf::wire
Use rxrpc_txbuf::kvec[0] instead of rxrpc_txbuf::wire to gain access to the
Rx protocol header.  In future, the wire header will be stored in a page
frag, not in the rxrpc_txbuf struct making it possible to use
MSG_SPLICE_PAGES when sending it.

Similarly, access the ack header as being immediately after the wire header
when filling out an ACK packet.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: "David S. Miller" <davem@davemloft.net>
cc: Eric Dumazet <edumazet@google.com>
cc: Jakub Kicinski <kuba@kernel.org>
cc: Paolo Abeni <pabeni@redhat.com>
cc: linux-afs@lists.infradead.org
cc: netdev@vger.kernel.org
2024-03-03 23:41:54 +00:00
Ricardo B. Marliere
fbd5f5008f Input: serio - make serio_bus const
Now that the driver core can properly handle constant struct bus_type,
move the serio_bus variable to be a constant structure as well,
placing it into read-only memory which can not be modified at runtime.

Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
Link: https://lore.kernel.org/r/20240210-bus_cleanup-input2-v1-2-0daef7e034e0@marliere.net
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 15:06:58 -08:00
Ricardo B. Marliere
d1278c91fe Input: synaptics-rmi4 - make rmi_bus_type const
Now that the driver core can properly handle constant struct bus_type,
move the variable rmi_bus_type to be a constant structure as well,
placing it into read-only memory which can not be modified at runtime.

Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
Link: https://lore.kernel.org/r/20240210-bus_cleanup-input2-v1-1-0daef7e034e0@marliere.net
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 15:06:58 -08:00
Yang Li
d49193be63 Input: xilinx_ps2 - fix kernel-doc for xps2_of_probe function
The existing comment block above the xps2_of_probe function
does not conform to the kernel-doc standard. This patch fixes the
documentation to match the expected kernel-doc format, which includes
a structured documentation header with param and return value.

Signed-off-by: Yang Li <yang.lee@linux.alibaba.com>
Reviewed-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20240301092115.123092-1-yang.lee@linux.alibaba.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 15:02:55 -08:00
Karel Balej
90cb57a6c5 input/touchscreen: imagis: add support for IST3032C
IST3032C is a touchscreen chip used for instance in the
samsung,coreprimevelte smartphone, with which this was tested. Add the
chip specific information to the driver.

Reviewed-by: Markuss Broks <markuss.broks@gmail.com>
Signed-off-by: Karel Balej <balejk@matfyz.cz>
Link: https://lore.kernel.org/r/20240301164659.13240-6-karelb@gimli.ms.mff.cuni.cz
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:58:20 -08:00
Karel Balej
d88f84bfcc dt-bindings: input/touchscreen: imagis: add compatible for IST3032C
IST3032C is a touchscreen IC which seems mostly compatible with IST3038C
except that it reports a different chip ID value.

Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Karel Balej <balejk@matfyz.cz>
Link: https://lore.kernel.org/r/20240301164659.13240-5-karelb@gimli.ms.mff.cuni.cz
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:58:20 -08:00
Markuss Broks
10ad7d7a42 input/touchscreen: imagis: Add support for Imagis IST3038B
Imagis IST3038B is another variant of Imagis IST3038 IC, which has
a different register interface from IST3038C (possibly firmware defined).
This should also work for IST3044B (though untested), however other
variants using this interface/protocol(IST3026, IST3032, IST3026B,
IST3032B) have a different format for coordinates, and they'd need
additional effort to be supported by this driver.

Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
Signed-off-by: Karel Balej <balejk@matfyz.cz>
Link: https://lore.kernel.org/r/20240301164659.13240-4-karelb@gimli.ms.mff.cuni.cz
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:58:20 -08:00
Markuss Broks
c53d309a42 dt-bindings: input/touchscreen: Add compatible for IST3038B
Imagis IST3038B is a variant (firmware?) of Imagis IST3038 IC
differing from IST3038C in its register interface. Add the
compatible for it to the IST3038C bindings.

Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
[balejk@matfyz.cz: elaborate chip differences in the commit message]
Signed-off-by: Karel Balej <balejk@matfyz.cz>
Link: https://lore.kernel.org/r/20240301164659.13240-3-karelb@gimli.ms.mff.cuni.cz
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:58:20 -08:00
Markuss Broks
54a62ed17a input/touchscreen: imagis: Correct the maximum touch area value
As specified in downstream IST3038B driver and proved by testing,
the correct maximum reported value of touch area is 16.

Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
Signed-off-by: Karel Balej <balejk@matfyz.cz>
Link: https://lore.kernel.org/r/20240301164659.13240-2-karelb@gimli.ms.mff.cuni.cz
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:58:20 -08:00
Max Nguyen
dd50f771af Input: xpad - add additional HyperX Controller Identifiers
Add additional HyperX device identifiers to xpad_device and xpad_table.

Suggested-by: Chris Toledanes<chris.toledanes@hp.com>
Reviewed-by: Carl Ng <carl.ng@hp.com>
Signed-off-by: Max Nguyen <maxwell.nguyen@hp.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/44ad5ffa-76d8-4046-94ee-2ef171930ed2@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:46:20 -08:00
Heiner Kallweit
849c34e63c Input: leds - change config symbol dependency for audio mute trigger
In a follow-up patch implementation of the LED audio trigger will be
moved to sound/core/snd_ctl_led, including removal of config symbol
LEDS_AUDIO_TRIGGER. Also as of today the audio mute LED trigger
is effectively a no-op w/o config symbol SND_CTL_LED being defined.
Therefore switch the dependency to this config symbol.

Suggested-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/6011ca63-187c-42dd-a5fd-7dd733d6257c@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2024-03-03 14:46:06 -08:00
Linus Torvalds
90d35da658 Linux 6.8-rc7 v6.8-rc7 2024-03-03 13:02:52 -08:00
Linus Torvalds
58c806d867 phy second set of fixes for 6.8
- Driver fixes for
    - qcom: m31 pointer err fix, eusb2 fix redundant zero-out loop and v3
      offset fix on qmp-usb
    - freescale: fix for dphy alias
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmXkq3wACgkQfBQHDyUj
 g0fl7g//ZtyACrr3ngykyKoLfSP31lnye6fDgoo5h80Qx37hTTtn7a5JepiSyFj1
 UzeCE11MI9kpDgYL5hF2agNipb7K04jOgH8RQsAcBuUNGNWSdLnSXMU3yC6amdQM
 XiPuM8IARrHaWMP2KLXo/CC/qLFquq6M9GBY11wFE9gg4rt/HDeiYAin9lv2REdy
 C3yAoXxPTOEv8B8MvbVrZTciybFSWFONpBR/qCnXFKC5f+ieXGjKcjiQXGaKQBZJ
 mqHpl5Qg2RbTBqCfRAS9S7ldONzp317K4Hm3ehdVMJnY+VoqoNKg0nS+35OU0I+P
 EO62h7JEIBzVUu2HUJ6UZsBpu7GD/kG5s32Tlig3/i3YaP7pGaBXp18//t6F6ViV
 d9rLLaCLdMrVVFHJwHVwLinT/y5kydIKdGUQSWf1gisa+69dto806OqSQvl0YgAk
 XuvKBti0mTSXK8GbQCqYQtvjPNPFZLpdDgST6L81CawmudD/KbLK3KMUJHYiRaBi
 i6qlCpSfKcjb531tdNSytmX0GARcwYeMkGTUxjI4CjB0B4fXrlfIjd+ruu9GyiZx
 AxyChrMGqx0GWKq4cmjZ5H53n7a6cN4bHIiaEAtTWXfxAWrqb5r2brePy75m9UUx
 xuRMdzEzph/6fyT1OygRWh4jNuIkc0pyT0DcQiEySjAzNfQC1VA=
 =jXqZ
 -----END PGP SIGNATURE-----

Merge tag 'phy-fixes2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy

Pull phy fixes from Vinod Koul:

  - qcom: m31 pointer err fix, eusb2 fix redundant zero-out loop and v3
    offset fix on qmp-usb

  - freescale: fix for dphy alias

* tag 'phy-fixes2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy:
  phy: qcom-qmp-usb: fix v3 offsets data
  phy: qualcomm: eusb2-repeater: Rework init to drop redundant zero-out loop
  phy: qcom: phy-qcom-m31: fix wrong pointer pass to PTR_ERR()
  phy: freescale: phy-fsl-imx8-mipi-dphy: Fix alias name to use dashes
2024-03-03 09:56:49 -08:00