Commit Graph

1351991 Commits

Author SHA1 Message Date
Arnd Bergmann
070d04f002 mvebu fixes for 6.15 (part 1)
Fix uDPU board LEDs by correcting pinctrl state
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCaCdKwAAKCRALBhiOFHI7
 1X73AJ4lr6ca0VUEMawO/sOXy0z5otYdGQCeO/A9wbfON8/Zpd9yRPehRbfPFjk=
 =dOG5
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguRR4ACgkQmmx57+YA
 GNm93RAAq0exyi6jmYc1iF7rYek1PMN4uurSygLsicNv5DuePu45EectkmkHcIFD
 tlkx/6D9HsWw+7JAUQuXGuU7jziSOtnPsuCSWRou1H3W25wton+AlcVVIk0mRJXb
 abkFZsVBNp4z3TQdIaoPpeHaET0Ke++tGGzeMUshIzdogg2EV79G4U2SZQXanJpr
 svhZpaj0PrAfXHuCc4fQjHtszfN+jFvzRRXP/bn6tRoyAyI0HlBV0ZUXpDDRbh30
 hRngfKkWgdbR0WA4aWf5LfVqjFCBQPAZcMRiIF3JDN2SdmwZo0B2ElEwwVOUtuAQ
 AasnDZvSs1wKJ5CcmhunjgQ95QzL0ALpX5Hvggo4AQpLjA+o0ET7YkBl0Om0DcmI
 +5KYUkagHLPi+o9BWtA438d3AtKjO9XE1vshGLfIWy+/H1D2TP6Y9mprVnIA2mcW
 xCgZTkLZhsYqlloh1RcDJodenGcW8b94KH6xIICGRAFdgq10f/eb5okDgwgsi4FH
 HSqouQmCCHXB7EXgc+nJBAlo+K61n5oe3c9/KyPrQ9GXlyv6Y4P/TwpwcAyUBLjY
 Nou0JFfMCOWx6qQB2ZBGqS/obNU5S5T7RlVdZRpqIf4MTYi1864g3X5n8XIhVxWJ
 3Ai1pJAOD3WQA+20OKAcgIaH19a5YU2TfsMkmPRR3/Z9/f3dzcI=
 =QFDp
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-fixes-6.15-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu into arm/fixes

mvebu fixes for 6.15 (part 1)

Fix uDPU board LEDs by correcting pinctrl state

* tag 'mvebu-fixes-6.15-1' of https://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu:
  arm64: dts: marvell: uDPU: define pinctrl state for alarm LEDs

Link: https://lore.kernel.org/r/87wmagpr0a.fsf@BLaptop.bootlin.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:26:54 +02:00
Arnd Bergmann
4e3d2c4b7f Allwinner fixes for 6.15
Only one fix:
 
 Switch back to I2C for PMICs on Allwinner H6 devices. Apparently using
 Allwinner's proprietary bus ended up causing issues when the PMIC was
 sharing the bus with other devices.
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCgAsFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmgmnNcOHHdlbnNAY3Np
 ZS5vcmcACgkQOJpUIZwPJDBKrQ//aNNkYfxU8OqM8fqTDgv51mBS6P6mQGP7WHQp
 N8/P+xOdDEM4MqXfB+jQnOUtwZ27pdyRpshldnd4+2oHk75ZkTV8wAFfRogJQdQy
 MEFcfhd1VVbCURxiF4Arxry8tBM6X+rIrxtBib8BMVpmy6BstEAfykPyCVQtxhRo
 qrdYVHR862l7RsVTK/2qmJzC4DCOS8d1mKeoNfhnwdGJ59Stm4dFNRD7oeuLcHZI
 oMIG2Fsd7aFPK1+zIAS+cKQo7xSfTlmTAwOhCuEnqclPy/R05oqmbCzOfPSxnjnr
 ctsX7Q2UDE0pfmIDAonDC8CZ1M5RXtCmkias+d2y9A9P8WDYeyq8H/fo8Zd0HNd3
 D+DeYV26YvIZIgCZaV0sxQb0BORN9fZjn3lQcNAptWW/0lFLde2zGFh1slO5zd1i
 cum4mIEPCvcntkg9hD52WOqXCu2116SRsvRRNNExutyM88MMdT08sfa+bzd5hs+V
 LMmcVREJpw0au3PlSSOzN1yZS8YzTOsPfW01OF3jmz/ji9gq6ROIhjavKWjFfPdM
 NIb6jXQNuPOgFAyJvHBUP3qhNK5wo8b1fEkBxJ048R0UTi0BAqdapWjUQADei2GS
 nwX/I1FuLfd6LFCHw6htCTBhglpX3fTYX4/RRBVFQ8sQsappHqj53fRDRciGKDNw
 eab1NRc=
 =QGmB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguRQ8ACgkQmmx57+YA
 GNnLYQ/9E+zivoTzNcPo1Fre5Gp0Z3GvdOshRQwqvk4yWpkmVw87LsT0nNPdLvjq
 xispQJq/gmiVKCZx69wQx/bNYNnLXsNBtNUSioM5XKXtS9Fz80qPOQYnHJzApiOM
 v6vFmdjtYM0mOE2Ykki0egEZWMAMFsI2ODUooBs/npEf/yw1YR/oRHAtT0E+F+q6
 3qWdKB61/6I/iQzLjSENL9Brpw1N6x9Mu114G8fAkOBYiFHzo/jBukTVoczF9Jgq
 SL1Y8KNw6exKcZ2W9KJr5W2Hqp+2Z17FBSR8XHwuYPEJXtXTbw7BgPwhbo/JdSaF
 ERv9vq16qspLthS0s7Yvvvb8Xbl3JROlD3O07XppKrOeiZb0LuCbkcURf2gJMd4d
 A4PRfU3yxtIcIg445hmRNKW8oWmulHLENA/ldnC9EAZAholmBEJ2AfFn9Kh3BuTa
 zEy9obYsy1btiR9Opu+4ZVYARf/z7t0mX7oLNfh2Ef9whYfzNtURmw828AkHR+v+
 nEdRMmfuRgTalBPQqd5mw6CNRg7btNBOLk4n8oBC4c23eL5pV0QJCwDVqvRtNWkG
 Q6loGBxZRsfPuWBneaM42nMeNSZfapZf/hA+ZHn2SeDJnAXCA3qxJXEOWu55waLc
 75UmIuIy2w+8d5CiuhCS44wTAj27+dm1Ns1yeBiyeXAKf3max0M=
 =sdy+
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-fixes-for-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/fixes

Allwinner fixes for 6.15

Only one fix:

Switch back to I2C for PMICs on Allwinner H6 devices. Apparently using
Allwinner's proprietary bus ended up causing issues when the PMIC was
sharing the bus with other devices.

* tag 'sunxi-fixes-for-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  Revert "arm64: dts: allwinner: h6: Use RSB for AXP805 PMIC connection"

Link: https://lore.kernel.org/r/aCaeLgjZllV7bauX@wens.tw
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:26:39 +02:00
Fabio Estevam
6c9ab81187
arm64: defconfig: Ensure CRYPTO_CHACHA20_NEON is selected
Since commit 17ec3e71ba ("crypto: lib/Kconfig - Hide arch options from
user"), the CRYPTO_CHACHA20_NEON option is no longer selected by default
due to changes in how crypto library options are exposed and selected.

To restore the previous behavior and ensure CRYPTO_CHACHA20_NEON is
enabled, explicitly select CONFIG_CRYPTO_CHACHA20 in the defconfig. This
pulls in CRYPTO_LIB_CHACHA_INTERNAL and allows CRYPTO_CHACHA20_NEON to be
selected automatically as before.

Fixes: 17ec3e71ba ("crypto: lib/Kconfig - Hide arch options from user")
Signed-off-by: Fabio Estevam <festevam@denx.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 23:25:49 +02:00
Arnd Bergmann
7c1bda0993 Samsung SoC driver fixes for v6.15
1. Exynos ACPM driver (used on Google GS101): Fix timeout due to missing
    responses from the firmware part.
 
 2. Samsung USI (serial engines) driver: Correct ineffective
    unconfiguring of the interface during probe removal.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgjGfUQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD14NGD/oC9CelppV3M+ISqAb+o5XjyoTTgNTcsp4Q
 Dvpv/x4OWwatTAGuCn775dCAFW+MvkQC3w5/m7wJo+SiIYhB+3JFzdaFm/BrkPFJ
 yEsrKEvXuAUoV1NPLpHr6FT/IVaYuJtBQR8kYYRQCQYmlBnxSyZEP9O1nBMl8LyT
 uU7LmdsLSzGGx1dfvPdJBffmDQyUtrYdK7Gq73GN6mDxbJgSTiDaflLf9nJiaeAq
 A2P1N/lDmLoF/Tqs6LRJHxEc4VXTrP1mAytHUTsignpsrdvrvYAnU2mhMp/4Fa9P
 Ecbh2dwfKAP7+vFjdbeNV7yeS/gd4dhWwb+iGH7de4iUU4PUK6nQ/eH8h6fJKJOH
 K8OaWWiVUkvwDktSl5tkRswdGYKNoCgn9B8f6YhqjmhOkNdluaSxVPjuD6ZCmw3u
 8ICRyubNAx1ExIG4wXzdsIcVUHHqtwT3cQDyORJbwgGQvSzJ+iALNvUpXE+ZhyIU
 zZ9uTKfm61bBbD3nXwVcXktK4HdC+4o6DUSgQfKrl/P6V2FpDqeVR4b93SFN4qDO
 OzVVC1AhdHFcQO+qRzJ+Yv9T700AmzwkUTELDNygg6qLiLUs9QCpHC4wpW74hf3Z
 sdhSs1mT9jLa0jsWSbp3JF8LOERyXdNa+5X8c40QG1UcKWU+cg1QGMivSIBU9oCz
 CeZzLb5l1Q==
 =k9cZ
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmguBygACgkQmmx57+YA
 GNmsKhAAmRvMpJdhwP3JzTvA+F44c3Ib10daRcinGzYqZMxSdWOQqcCbtfM8q1LI
 UMOd1z2SacjEPIaavBQaX9+8YYjRtMgfG1rCSA9/Z+7BXE48E4o3f6rHtDcppE0N
 5i1bL00oO+wMDM9u7ocvSAPVxuIWykqa5gee5tUE+6bBklYai2U/zvyBXYEzo9iQ
 KRyqyO/rVUhDCekEPvXi7UZOKBFdVYfdsfBSKLVMrxJnpLIqdeKtypAOtVnNfqWX
 uUDgKDIRUGm5H/4z4qO+R+K4bC/tJCTKMIFct6GSyqYd5paJeFU8u57swy9Dqh+u
 c6QTPl3LIegAr9OClqQDwotMeJP7hpSIUeIlfZDTljRi9gWJk/pvgccqVYAieaxe
 iJ3Vl1TSi+ikb1nA56oybJnoIP2l0uKI0w8Cog5MwtyaYyCAObtfkuAclQwQGKxL
 9j3qDbv834MXs3z9beRIn91CHzeVjP666il3wrpfdEUI5Ap9cbkrQm4AbQWUrH2g
 DOQL4dtl8PRGB7pLI8PHqxo94KkxWrntaJYD6mqFwkAsMQbEtI3IZ7TJXcXioq1g
 0gD+8lltlkBDBm+PHz0G74HuPlD/78wQU743n/Vh8AZ5vh/3PnLYEOBfk0KgF++Y
 jdcQNMv6Kn0QqvwUQa+TGDKkXHbsk3cY2wBXboC6ZEvuqtVszX0=
 =/aFj
 -----END PGP SIGNATURE-----

Merge tag 'samsung-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into arm/fixes

Samsung SoC driver fixes for v6.15

1. Exynos ACPM driver (used on Google GS101): Fix timeout due to missing
   responses from the firmware part.

2. Samsung USI (serial engines) driver: Correct ineffective
   unconfiguring of the interface during probe removal.

* tag 'samsung-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  soc: samsung: usi: prevent wrong bits inversion during unconfiguring
  firmware: exynos-acpm: check saved RX before bailing out on empty RX queue

Link: https://lore.kernel.org/r/20250513101023.21552-5-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-21 19:02:32 +02:00
Gabor Juhos
b04f0d89e8 arm64: dts: marvell: uDPU: define pinctrl state for alarm LEDs
The two alarm LEDs of on the uDPU board are stopped working since
commit 78efa53e71 ("leds: Init leds class earlier").

The LEDs are driven by the GPIO{15,16} pins of the North Bridge
GPIO controller. These pins are part of the 'spi_quad' pin group
for which the 'spi' function is selected via the default pinctrl
state of the 'spi' node. This is wrong however, since in order to
allow controlling the LEDs, the pins should use the 'gpio' function.

Before the commit mentined above, the 'spi' function is selected
first by the pinctrl core before probing the spi driver, but then
it gets overridden to 'gpio' implicitly via the
devm_gpiod_get_index_optional() call from the 'leds-gpio' driver.

After the commit, the LED subsystem gets initialized before the
SPI subsystem, so the function of the pin group remains 'spi'
which in turn prevents controlling of the LEDs.

Despite the change of the initialization order, the root cause is
that the pinctrl state definition is wrong since its initial commit
0d45062cfc ("arm64: dts: marvell: Add device tree for uDPU board"),

To fix the problem, override the function in the 'spi_quad_pins'
node to 'gpio' and move the pinctrl state definition from the
'spi' node into the 'leds' node.

Cc: stable@vger.kernel.org # needs adjustment for < 6.1
Fixes: 0d45062cfc ("arm64: dts: marvell: Add device tree for uDPU board")
Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2025-05-14 13:01:47 +02:00
Arnd Bergmann
15eaaa71e8 i.MX fixes for 6.15, 2nd round:
- One more i.MX8MP nominal drive mode DT fix from Ahmad Fatoum to use
   800MHz NoC OPP
 - A imx8mp-var-som DT change from Himanshu Bhavani to fix SD card
   timeout caused by LDO5
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmgeoVAACgkQUFdYWoew
 fM7Ghgf6AgpSMZdzAmotrbhb7SRt38WRT9VJY8wfPTc8JSr4CB39EfjzzoJNyE7K
 pNJyS5psljbKFj8UovMOIgrkpvvTevNGJATPXxDnuCLIngTM47uH4MpXTxy1a3MV
 L1T4DfTljB1U6mDalrhjjwWwHfBR8cGb53Vv/A1OSn0jFCrvRnS6QEPorq5A/QaA
 Gco9WeDh481HeN74n/H1vmNwtl2rlYNF0+c4HkWhb97DO7e3u+t2vWwe0WdF6NyL
 1ZVNEaYNNWVYtdSRAz/AYcKS5cID1rfF3Iz6i3CDzN487VtwS7ogea7VSZTPn1l7
 AxrvaZ/FYsdOmz12SDCYHaFR1znx+w==
 =qSBA
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgfGA4ACgkQYKtH/8kJ
 UifjBg//QslEUfifNF0vUtDtHcXfX4dHdo59+guso9j8OEz4geoyvgDQ7ztxbcOF
 mrZhaEOcUgNc3Komso92XBZ6dnd7uvuFnCO3uyscA50RWzhY3fbg0wLFifXA4wqj
 LeSTztTXZeGpIV5peqcGyXLqogR/4T6Y7blisn4vB75zDDcRiayDTy/VNx48lpVq
 5auNg3wPghoGS5BSOzAeveP0oTUDXK2Tr98EhxJWGRs35cMwTsGmaYXKZU/SSALG
 ARFQWka3ziuU8dcaBa9mMwOxGcrgfDdrcEKAJC+FyN6Za4+KTO771phS3u9KQebV
 kbA64hYyCtqQy/7nAmq4FLJAlM3kP2tShs+FRG1JyhvG+rrU7WGoWQiqxa3r0MNR
 648c1XxFwfB55OF/ScPxRv6ct7MBmE5mjlnEdZNeHo9A4YAV64P7AaiLTcbWasxs
 dj0H6tDIE2vix028g8EnWswXnJRfeit6kF6GaUJZRsDBL5NAbh4sV23nRtSa+S3F
 rjAnDrjQcrk9+rAuEHA8zsRFuI0OQQl94xD9ai8JpIlKLjqZmMskPnFlKFi3HeTh
 kpjvT/WmTiqWGPMrm4xC/2UydJg6glmd0cm/e6bRc5nLA4mv4KqaOWzBDnSlTJQh
 kifenqC6/c++hEYafQ+TDSia6f4zhGVw1AQgvZk4/ExOKX2E4n0=
 =1v2Z
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-6.15-2' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 6.15, 2nd round:

- One more i.MX8MP nominal drive mode DT fix from Ahmad Fatoum to use
  800MHz NoC OPP
- A imx8mp-var-som DT change from Himanshu Bhavani to fix SD card
  timeout caused by LDO5

* tag 'imx-fixes-6.15-2' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout
  arm64: dts: imx8mp: use 800MHz NoC OPP for nominal drive mode

Link: https://lore.kernel.org/r/aB6h/woeyG1bSo12@dragon
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-10 11:10:38 +02:00
Rob Herring (Arm)
09acc3266c
arm64: dts: amazon: Fix simple-bus node name schema warnings
Fix a couple of node name warnings from the schema checks:

arch/arm64/boot/dts/amazon/alpine-v2-evp.dt.yaml: io-fabric: $nodename:0: 'io-fabric' does not match '^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$'
arch/arm64/boot/dts/amazon/alpine-v3-evp.dt.yaml: io-fabric: $nodename:0: 'io-fabric' does not match '^(bus|soc|axi|ahb|apb)(@[0-9a-f]+)?$'

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20250409210255.1541298-1-robh@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 22:28:46 +02:00
Wolfram Sang
3238532ba5
MAINTAINERS: delete email for Shiraz Hashim
The email address bounced. I couldn't find a newer one in recent git
history (last activity 9 years ago), so delete this email entry.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/20250331190731.5094-2-wsa+renesas@sang-engineering.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 22:27:27 +02:00
Arnd Bergmann
33e79299f9 Apple SoC fixes for 6.15
This tag contains two small commits since rc1:
 - Add a .mailmap entry requested by Asahi Lina to better filter her
   emails
 - Mark the power domains for the touchbar support introduced with 6.15
   as always on since the driver cannot initialize the touchbar from
   scratch after the domains are powered off (e.g. during suspend).
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQS3vz815OHsEaWy0u9EEX0kKnUe6QUCaAj9TQAKCRBEEX0kKnUe
 6UqPAP9Qjep3S12BKIReeAmjICirSP+Psp+n9G7mGMucEvw99QEAiSqYJ632k3rb
 fYOgTvf0GNF5TNCwfhmqIqu/fNOKfA8=
 =21TP
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeJwgACgkQYKtH/8kJ
 UicHYg//bnjMWhuwJYovQzboqJqHLXlgCpdsSl7PnIdUeOu6SlUjFLAmRBYcmdGH
 tErKv1MbiC1k9qyZH0f4M6kaPQ2NVrYjZZ5q77/E+m0XV9Y8JMk/EZqpOW5xwoUC
 fTJ7VNu/8J/9iXK7GJKjG5PVdqa9l4Tpid8BNRU6iX4vEMsOfMIRTBldTAOG2olu
 rrusybMng/MUfTTGKzM9iZBgbLSJWQaQMraLzF0/SAGCuiCZqAtCdILToHr9vCXR
 cs9PiV5hhgDqH15E/jKZhApgT4p+NE4UcxVPtwsmWvJLUSFPybO0I+lBkY23uJ8k
 Kxggis4/qiEET7mMpvcorjF0rfEEJcM/ib0+OURBAH5Vbi85N43HeRwlSzNdqxKm
 Z968cWyePq8M/XIDpkZCujPqar1jUFsmDIjTwRFtN04Xn83vSC5OEkRpKpNWj0gA
 /AwgZ7BSM/hv9z/p9Aixi7MXcf5nq4qrXJ0nvzfp6nwkYwbbcbqwKks8LViNKtpq
 mgpS/T7cvWx156+7S1WmGfoqnfPRrOdSMod0PIiFj2EE7iIb1elMEy1jHX52LmTy
 JeTqktQ4MxgfDy4/EdAv+f1D4fL04n+zKYEoW42DCYq7/BYP3Ua645ZtFo5LA2QC
 UxwcQxjq0mJlnPHI4MGq9+DUemEt6IldxZOM+Y3qVdOPsXHNZ30=
 =j+tN
 -----END PGP SIGNATURE-----

Merge tag 'asahi-soc-fixes-6.15' of https://github.com/AsahiLinux/linux into arm/fixes

Apple SoC fixes for 6.15

This tag contains two small commits since rc1:
- Add a .mailmap entry requested by Asahi Lina to better filter her
  emails
- Mark the power domains for the touchbar support introduced with 6.15
  as always on since the driver cannot initialize the touchbar from
  scratch after the domains are powered off (e.g. during suspend).

* tag 'asahi-soc-fixes-6.15' of https://github.com/AsahiLinux/linux:
  arm64: dts: apple: touchbar: Mark ps_dispdfr_be as always-on
  mailmap: Update email for Asahi Lina

Link: https://lore.kernel.org/r/20250423145047.3098-1-sven@svenpeter.dev
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 18:02:16 +02:00
Arnd Bergmann
6053915252 RISC-V Sophgo Devicetree fixes for v6.15-rc1
Just one minor fix to correct DMA data-width
 configuration for CV18xx.
 
 Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
 -----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEEdoBX2jyDC9ZCTwZjDCzASqG0i0IFAmgRzJcACgkQDCzASqG0
 i0JxJgv7B6wAej6oTDhLuAfWINmET17+vsmLLvdGIw4fonIqO0CbCQAB6Zco8tW8
 63WikULIsLiaoreLlQ1k/ydENj2cL6VQj4VyficDMt8zxBbs6Hfm1l8w+iz6+K5Q
 5bOm8yGnR8AFnCeCu1eDsKFYe4ZxIzG1Ya07NPSDAu28f/AvwGd5YqCUos55GCOQ
 AuXvsFSr8EwTEVXGhkaYt7jqfwWgUAkQfzeOXpvPojqbnVMKp1+oH1PH1s3S251t
 XfBgssQjiCYAJtDoKeYaChzniisdwgyd1QovSeoeTeciZUc31TzNBt19z5aXuIpp
 CH3b1enGRVAvKIzEyvDSJWNs8NVQl5Q+0peiaYzQ3Ql0iuFjhFYLd4K5kbwbpMRv
 bduUXvTledr27KtQ7O+IjjpxcF55yj5bbKimk6FM+Pmb0+bNZzyXeihs3FGHm7tx
 gKsF0+MHonybB/47FGqjnKhq9wnpRvFKCJeWmAsIBtzMmrc209+VPaa3hKveS2AN
 AY8LGJTH
 =4v7N
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeJsMACgkQYKtH/8kJ
 Uieg+xAA2ckAQkuxTtGYVKimTgJAOhzBcg9QRBeYbFaQUSG/rF1/uov0/WlJWCsx
 4GjETNmmA4+C0JXtud6gyqld2gVZU7Fa9hFylv4s7DZJSfS8EGbdjTKGDmUNamQv
 LTiCmoRtODAQnWaB+pTBCjuyWzBwDl3PS//3Q58Kql/Gha+CrQBZTiMz6S3dnNV5
 2czwWGwCxvI29aI7mpx7MXKoDGlqiGbAFQDOjvdYT4bVBjHcHc/hZKwv/HTM3L9x
 ioUF6KYo8jVvjJQ8P1IlBqTmxMZwHKFiJHMkNELf/Xw9h7OIIsTaPnjW7Af5p9Z3
 bCXoZTH9blkDCs0xSCdrzweBLrRnZjN32qFYSk5rBJ1kP/Nri3bWlBtqykgEoo43
 SMkITWSNZjHCfbGmgGo/HcIPeaMLPyTqle7BS8w7Z/5yubCbdjvI/ItYOfggp7UU
 CYR0Nd5UDB8XwDI1NpN/U1dsovtahgedTIDK+t3furjGRDlsrXKwaPr4OYgR8To3
 BwNMtNlN5bOFe0C+UuBoWik5npNM8jjN/6N/ARbAecqnv8EV0svbIb0PPalEwLYA
 IqKcIiaxIgxmYvzOWynQ0xwYWFgIIJAI/Vw0EVJlm8tZAfA0hfQGH+LoWf6DuQ6e
 zmAFyEekNp4nHUZvz+duUIVce9ozbW78AW33046nlR4LiRKel9M=
 =3e4j
 -----END PGP SIGNATURE-----

Merge tag 'riscv-sophgo-dt-fixes-for-v6.15-rc1' of https://github.com/sophgo/linux into arm/fixes

RISC-V Sophgo Devicetree fixes for v6.15-rc1

Just one minor fix to correct DMA data-width
configuration for CV18xx.

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

* tag 'riscv-sophgo-dt-fixes-for-v6.15-rc1' of https://github.com/sophgo/linux:
  riscv: dts: sophgo: fix DMA data-width configuration for CV18xx

Link: https://lore.kernel.org/r/MA0P287MB2262454C19B8899BC1694D04FE832@MA0P287MB2262.INDP287.PROD.OUTLOOK.COM
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 18:01:07 +02:00
Arnd Bergmann
e36f6de6ad Amlogic Fixes for v6.15:
- fix reference to unknown/untested PWM clock on ARM/ARM64 boards
 - fix missing clkc_audio node on dreambox ARM64 DT
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPVPGJshWBf4d9CyLd9zb2sjISdEFAmgeIpwACgkQd9zb2sjI
 SdEUTg/9HOXZ3ZOI8XJtUWvctWK3fYuxIjbie1xxnQP8BBLany3tzOBuQdFJyLOc
 PHqZiEebMh4tbV+iMlMDrFa/Jgn8ItlGD6S5CzSbXLHKtMLdNykQd4TmCwv87Im2
 4/yAbEoTVL5Xf/9UL7nPAeDSjFwGGbbs4ELpwErw0FdSyVF3iy0ibw5mI4NJuLJL
 /0A9pqim4blofOIOiJYxZ4O7snieWbyUsGw94lbaWK6DtCAQHcH/mbfcmib1MQGT
 xuRScQaXyU2oK3k2QBmFLq4wt4+N+XS+qWXU0TMBWbGY6pEvD9uMG8n8/N/cCD7m
 QveS7Op5O4A9f2YR8PuEWhYog5hg94uyH+GBRgYcgZR2JEi5Ciic4QCfYqrVu9ED
 sf2MaICt/DmfuMTo8hw9w3ub5uop5roY6zsFAscHc5WPgfH2BJB2s4s+3Naal5a4
 9uUzp+b3KpcOlxaXg/plMg+vmxyWpaY3vIJu4TvUkSJ5Gqtb6edJ6uwpiltObcYg
 mO/GAPixZw09b2UXul0lxUt5OUGYmgf/kNY4LIj54A0DQ5bOI1Kw5kbSB339c5LD
 32Bs8jeyUDefztuMRdUIFEiD+AVo+5hsqI67/9X7Konci+GL7pLcCLgMDqf9t+k+
 9+KwtDvMp8a28eepFHG7Kku7e8eUa+SFN8emk4V55+yrW3V7iTY=
 =+2k5
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeJoMACgkQYKtH/8kJ
 UicXaBAAgr23eId9qQWtDpgpYvERUhMY0IOSp817IyoruFTaWIRizg01Ud1JDpgz
 j0W7VDqX1PrTv2GXOkyoFyxC+Df5a+QGK785bJNSbG7vLFI5WIWrnd2NyG78uxJ6
 1gN8phQPT6pNmm2m191Qyv92ZunUGzS5A6kF5EgKKLBbfneUU+ReRaLIF9Uc7Wty
 4ozHT6WVOGdpS9kHD2CW+bpoDnJrE/7Ba8Qu6pKNncDlP+ytsVeegiKFt67/HA3x
 G7z4yz4DdJLBgJsQyYGMB0tZtzYfH2CPLiXDzv4pjHrBUUIsk3tucqohL5L/PH1+
 3Grd8pA2kEhZIjeEsHWPropy9F02EUDs4ejxPWPCBu7Z4W+wDcR7v4DEU3Ywmcuo
 P7mGssMLwyzBTEk6JZgHogDrSh4Q+31BQ4G2obroNPcGHSb/3jlL4/m2bzi7xvn1
 yZbbrjuczyOgmf9w4aXjaosM9/yDLoX7GXBQUp5Fs/Hb+1RPtctof67thcboDm2f
 davuIMkGGK3END0WBkSmS92WZsu09KqXK6yfEae6sPN3BmuHDtnPtlgvCOSU337A
 dIpEDTWaItQMpWoZSu9j7P5FZza0KdPGvN4QbqYTBE1/G6hjs/mBgInY4/jBhmTE
 Oo6xszx2QBmrnLx5SRlTSGssDFD/ldceyDzZ83/Y2YSephAB/LQ=
 =zuUo
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-fixes-for-v6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux into arm/fixes

Amlogic Fixes for v6.15:
- fix reference to unknown/untested PWM clock on ARM/ARM64 boards
- fix missing clkc_audio node on dreambox ARM64 DT

* tag 'amlogic-fixes-for-v6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux:
  arm64: dts: amlogic: dreambox: fix missing clkc_audio node
  arm64: dts: amlogic: g12: fix reference to unknown/untested PWM clock
  arm64: dts: amlogic: gx: fix reference to unknown/untested PWM clock
  ARM: dts: amlogic: meson8b: fix reference to unknown/untested PWM clock
  ARM: dts: amlogic: meson8: fix reference to unknown/untested PWM clock

Link: https://lore.kernel.org/r/e9c520a1-b986-49e1-b9b1-67511c187716@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 18:00:03 +02:00
Arnd Bergmann
81b7cf868a Removal of operating-points above what the rk3588j soc is rated for, and
a number of smaller fixes: Turing RK1 fan can spin down again, fixed pins,
 pinmuxing and clocks and some devicetree-correctnes improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmgXxVwQHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgVHzB/wJZ0ztk8moYIK/6OVk7lPxkfIPuD59frHt
 EAz7COX8WqLni3q18FfqkjlONkXXbnRY//9cuw6ReLaFDJw3l5LcNtv1xLzxFi84
 Z2O/mzeotTnoJN5PRhQXKn+aqU+zb4GRaJQvUAXKVgwJJSpOLS49j68108Pd8ckv
 miv/X9iaLM6eZNjfixSaZjAlbE72npSATNi+HmKLWg/KceiZgSAoyV5Ar1pZqnDh
 slgMScCfUu80sYRzYit9jGBDQWlP8iBSch/9RF9j00TDG8EkZ2Q+VYbu4wX/LzFB
 78R1X4ZWj3b+0J8vYwGZc8Aa/oC5yI969SSS+WypL0N8XJojKkDV
 =+au0
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeJfMACgkQYKtH/8kJ
 UidWyA//VWKbAAuYfiRVt8e+Quml7v/ISmWvGlrnGxgfJd6pXlOihEaeMFxKwU/h
 uUl6xvsuRuIEPNq6hgVuKG6BFI8rc3LKK/mnsD2CkEphgBuXPfJd2YI6gBpyZiZ8
 MRbUZcZHctDwlcUL8Q+Po6nrLrffV2sehw6LwRVWNAfXQ3qOnuZix8k5lHtbslvY
 k3OWANpdDyb/BEA8cT0x4Izl4uC1ltEzm/Xi3Mv54Jx+ioFkUZ75PHFiD1BKjWNH
 Eugv1rAVaHw7VBmweDB8Y2SYJR5ZMhERLRWoo+s2ALXYNXcKeMxGTMxu6gZj9Z7p
 YYFe+4QWCLXqExPEp54Nd5wyvFfsf7PxsMfx2LkcnDuCSe63x7XQkbF0xiuRhOHB
 PpqfSfgfI2s8PENBlIZGDzxwWgJHMurve+mf4hIyoLg0QiHmo50Lh24cNkErpXwO
 KNkIDyIHcdJruDUSGglX2QEb6DF8RbuhZ+pSY+Dn1fNtCYSw8dneF9IdKgPS/+sE
 c77+2u5Otby8cDLcPPwyJzzFdRIPZp7Etw8AnebnEzoSMEgTO3OFZp4RcA8PY1m0
 94T/c81IqsCbOTI51XQ3pObBWZRYPX2jl8aupIO3XbOqsM73gbFMmeVIlt+2vuyi
 dQSIowB72v9oHVLKjvBq13CbTvhCVijam0z+WrYtf+6K0KxW1Sg=
 =+lfn
 -----END PGP SIGNATURE-----

Merge tag 'v6.15-rockchip-dtsfixes1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/fixes

Removal of operating-points above what the rk3588j soc is rated for, and
a number of smaller fixes: Turing RK1 fan can spin down again, fixed pins,
pinmuxing and clocks and some devicetree-correctnes improvements.

* tag 'v6.15-rockchip-dtsfixes1' of https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: fix Sige5 RTC interrupt pin
  arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588
  arm64: dts: rockchip: Align wifi node name with bindings in CB2
  arm64: dts: rockchip: Fix mmc-pwrseq clock name on rock-pi-4
  arm64: dts: rockchip: Use "regulator-fixed" for btreg on px30-engicam for vcc3v3-btreg
  arm64: dts: rockchip: Add pinmuxing for eMMC on QNAP TS433
  arm64: dts: rockchip: Remove overdrive-mode OPPs from RK3588J SoC dtsi
  arm64: dts: rockchip: Allow Turing RK1 cooling fan to spin down

Link: https://lore.kernel.org/r/2923598.88bMQJbFj6@diego
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 17:57:39 +02:00
Himanshu Bhavani
c688898313 arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout
Fix SD card timeout issue caused by LDO5 regulator getting disabled
after boot.

The kernel log shows LDO5 being disabled, which leads to a timeout
on USDHC2:
[   33.760561] LDO5: disabling
[   81.119861] mmc1: Timeout waiting for hardware interrupt.

To prevent this, set regulator-boot-on and regulator-always-on for
LDO5. Also add the vqmmc regulator to properly support 1.8V/3.3V
signaling for USDHC2 using a GPIO-controlled regulator.

Fixes: 6c2a1f4f71 ("arm64: dts: imx8mp-var-som-symphony: Add Variscite Symphony board and VAR-SOM-MX8MP SoM")
Signed-off-by: Himanshu Bhavani <himanshu.bhavani@siliconsignals.io>
Acked-by: Tarang Raval <tarang.raval@siliconsignals.io>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-05-09 22:48:35 +08:00
Ahmad Fatoum
9379508f06 arm64: dts: imx8mp: use 800MHz NoC OPP for nominal drive mode
When running in nominal drive mode, the maximum allowed frequency for
the NoC is 800MHz, but the OPP table for the i.MX8MP interconnect device
listed the 1GHz operating point for the NoC, regardless of the active
mode.

The newly introduced imx8mp-nominal.dtsi header reconfigures the clock
controller to observe nominal drive mode limits, so have it modify the
maximum NoC OPP as well.

Fixes: 255fbd9eab ("arm64: dts: imx8mp: Add optional nominal drive mode DTSI")
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-05-09 17:53:20 +08:00
Christian Hewitt
0f67578587 arm64: dts: amlogic: dreambox: fix missing clkc_audio node
Add the clkc_audio node to fix audio support on Dreambox One/Two.

Fixes: 83a6f4c62c ("arm64: dts: meson: add initial support for Dreambox One/Two")
CC: stable@vger.kernel.org
Suggested-by: Emanuel Strobel <emanuel.strobel@yahoo.com>
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Link: https://lore.kernel.org/r/20250503084443.3704866-1-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-05-05 14:35:46 +02:00
Ze Huang
3e6244429b riscv: dts: sophgo: fix DMA data-width configuration for CV18xx
The "snps,data-width" property[1] defines the AXI data width of the DMA
controller as:

    width = 8 × (2^n) bits

(0 = 8 bits, 1 = 16 bits, 2 = 32 bits, ..., 6 = 512 bits)
where "n" is the value of "snps,data-width".

For the CV18xx DMA controller, the correct AXI data width is 32 bits,
corresponding to "snps,data-width = 2".

Test results on Milkv Duo S can be found here [2].

Link: https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/dma/snps%2Cdw-axi-dmac.yaml#L74 [1]
Link: https://gist.github.com/Sutter099/4fa99bb2d89e5af975983124704b3861 [2]

Fixes: 514951a81a ("riscv: dts: sophgo: cv18xx: add DMA controller")
Co-developed-by: Yu Yuan <yu.yuan@sjtu.edu.cn>
Signed-off-by: Yu Yuan <yu.yuan@sjtu.edu.cn>
Signed-off-by: Ze Huang <huangze@whut.edu.cn>
Link: https://lore.kernel.org/r/20250428-duo-dma-config-v1-1-eb6ad836ca42@whut.edu.cn
Signed-off-by: Inochi Amaoto <inochiama@gmail.com>
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
2025-04-30 14:51:43 +08:00
Nicolas Frattaroli
4bf593be2e arm64: dts: rockchip: fix Sige5 RTC interrupt pin
Someone made a typo when they added the RTC to the Sige5 DTS, which
resulted in it using interrupts from GPIO0 B0 instead of GPIO0 A0. The
pinctrl entry for it wasn't typoed though, curiously enough.

The Sige5 v1.1 schematic was used to verify that GPIO0 A0 is the correct
pin for the RTC wakeup interrupt, so let's change it to that.

Fixes: 40f742b07a ("arm64: dts: rockchip: Add rk3576-armsom-sige5 board")
Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Link: https://lore.kernel.org/r/20250429-sige5-rtc-oopsie-v1-1-8686767d0f1f@collabora.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-04-29 23:21:49 +02:00
Christian Bruel
2ef5c66cba arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp23 SoCs
Adjust the size of 8kB GIC regions to 128kB so that each 4kB is mapped 16
times over a 64kB region.
The offset is then adjusted in the irq-gic driver.

see commit 12e14066f4 ("irqchip/GIC: Add workaround for aliased GIC400")

Fixes: e9b03ef213 ("arm64: dts: st: introduce stm32mp23 SoCs family")
Suggested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Link: https://lore.kernel.org/r/20250415111654.2103767-7-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Christian Bruel
3a1e108209 arm64: dts: st: Adjust interrupt-controller for stm32mp23 SoCs
Use gic-400 compatible and remove address-cells = <1> for aarch64

Fixes: e9b03ef213 ("arm64: dts: st: introduce stm32mp23 SoCs family")
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Link: https://lore.kernel.org/r/20250415111654.2103767-6-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Christian Bruel
1bc229e9bb arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp21 SoCs
Adjust the size of 8kB GIC regions to 128kB so that each 4kB is mapped
16 times over a 64kB region.
The offset is then adjusted in the irq-gic driver.

see commit 12e14066f4 ("irqchip/GIC: Add workaround for aliased GIC400")

Fixes: 7a57b1bb1a ("arm64: dts: st: introduce stm32mp21 SoCs family")
Suggested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Link: https://lore.kernel.org/r/20250415111654.2103767-5-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Christian Bruel
02dc83f09c arm64: dts: st: Adjust interrupt-controller for stm32mp21 SoCs
Use gic-400 compatible for aarch64

Fixes: 7a57b1bb1a ("arm64: dts: st: introduce stm32mp21 SoCs family")
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Link: https://lore.kernel.org/r/20250415111654.2103767-4-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Christian Bruel
06c231fe95 arm64: dts: st: Use 128kB size for aliased GIC400 register access on stm32mp25 SoCs
Adjust the size of 8kB GIC regions to 128kB so that each 4kB is mapped 16
times over a 64kB region.
The offset is then adjusted in the irq-gic driver.

see commit 12e14066f4 ("irqchip/GIC: Add workaround for aliased GIC400")

Fixes: 5d30d03aaf ("arm64: dts: st: introduce stm32mp25 SoCs family")
Suggested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20250415111654.2103767-3-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Christian Bruel
de2b2107d5 arm64: dts: st: Adjust interrupt-controller for stm32mp25 SoCs
Use gic-400 compatible and remove address-cells = <1> on aarch64

Fixes: 5d30d03aaf ("arm64: dts: st: introduce stm32mp25 SoCs family")
Signed-off-by: Christian Bruel <christian.bruel@foss.st.com>
Link: https://lore.kernel.org/r/20250415111654.2103767-2-christian.bruel@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-04-29 18:16:28 +02:00
Arnd Bergmann
128795bdbe i.MX fixes for 6.15:
- An i.MX8MP change from Ahmad Fatoum to fix the broken nominal device
   tree caused by commit 9f7595b3e5 ("arm64: dts: imx8mp: configure
   GPU and NPU clocks to overdrive rate")
 - A MAINTAINERS update from Michael Riesch to exclude Sony IMX image
   sensor drivers from i.MX entry
 - A i.MX95 device tree change from Richard Zhu to correct the range of
   PCIe app-reg region
 - An opos6ul device tree change from Sébastien Szymanski to fix
   an Ethernet regression caused by commit c7e73b5051 ("ARM: imx:
   mach-imx6ul: remove 14x14 EVK specific PHY fixup")
 - An imx8mm-verdin device tree change from Wojciech Dubowik to fix
   a SD card regression caused by commit f5aab0438e ("regulator:
   pca9450: Fix enable register for LDO5")
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmgPPxkUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM50Twf9Eyj8zsNr7RPTPxJmo/tfWPHKGyRF
 9l3oKgCYtdO8E0zck/aR/XgYkRY3Y3JdP7Mh4SKmw7mCb6+PHL9UnN72bxPKUuIj
 FrvguIjuf8d9iYdQvfncGUv0IZE95M0BBcP9TjKELf4l4N7floZAc32YVItzCQx1
 ZKGLnSAD133YR4j1CbAenxBogoiczN628iuklYqTzJm2B7sJBvwrXSa5BKZruFdC
 jjtpKamPPb6I1aMqTkgz2Ofbk4KuauAcK1ixgvIAelJXrXngmPcIf+L2rOU0gCZv
 XsyVUT2FwFIeHo9aQmQxxZr5v+xFmrRrbTxXZqvmcWMrUWruHm82A2wN9Q==
 =YGnN
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 6.15:

- An i.MX8MP change from Ahmad Fatoum to fix the broken nominal device
  tree caused by commit 9f7595b3e5 ("arm64: dts: imx8mp: configure
  GPU and NPU clocks to overdrive rate")
- A MAINTAINERS update from Michael Riesch to exclude Sony IMX image
  sensor drivers from i.MX entry
- A i.MX95 device tree change from Richard Zhu to correct the range of
  PCIe app-reg region
- An opos6ul device tree change from Sébastien Szymanski to fix
  an Ethernet regression caused by commit c7e73b5051 ("ARM: imx:
  mach-imx6ul: remove 14x14 EVK specific PHY fixup")
- An imx8mm-verdin device tree change from Wojciech Dubowik to fix
  a SD card regression caused by commit f5aab0438e ("regulator:
  pca9450: Fix enable register for LDO5")

* tag 'imx-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2
  MAINTAINERS: add exclude for dt-bindings to imx entry
  ARM: dts: opos6ul: add ksz8081 phy properties
  arm64: dts: imx95: Correct the range of PCIe app-reg region
  arm64: dts: imx8mp: configure GPU and NPU clocks in nominal DTSI
2025-04-29 18:14:39 +02:00
Arnd Bergmann
7771f41d39 Armv8 Morello fix for v6.15
Just a single fix addressing the cache node inconsistencies. It removed
 unnecessary CPU number from L2 cache node names since they are local to
 CPU nodes and should simply be named "l2-cache" and relocates the shared
 L3 cache node from under cpu@0/l2-cache to the /cpus node, which is the
 standard location for shared caches.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmf3wzcACgkQAEG6vDF+
 4piBUA/9GkJ4bwDnROaiucfVCK63xArxLEDpC9GE2TccLBS/uSCp9cSmJzPrsiXN
 gKUOSaBMH8RbhQt0YJl06/MJTdhrI3yu64gGfvLDf0zPMyEXmbRSeU2ZSwVxVHLM
 vzUwKQW2nw2yx/6DGm7GWL5iH8s+ib23H/2T5oTkKJEhpZ/ZdmLUV1OdL4Xx7euR
 ZKlFZ4oNFPfDEknv+n1TXQPgne6OappM6Pn5ZQ/CUU5jjPmOChL2oFjKTdNrXUzA
 xdKBWDZeiobrHf7jt7603pQWQX1ae/0wNpQVWkqxo4HbWRShwIeKgvAkvUy2hfx3
 DAxJxtoAJX+xdNR0+2K49TG94Bwaj10q/Ft94TDL7cdhYfAT8NnJ+N0CVrP8zQ6/
 s9s5ejTD5ntBWriKLJobx9CW/p+W4o3eNmxDNQQK0n4HY2ZPf9DI1V/r/p+hUc3R
 EhsUe5dv+5o6qmdZidxm5KJsgBJDmNoGzf/GZawcIOgoQYIh64yXxb2FRTKd90hf
 1irElg1QByWWNkhnsQ179qaLb8TMsIDkDHNVClrTGxs/YkURtJE8UcxHoWCg40/u
 Soa31RIGPoftgDxqMxMMut4WuEOcohLhEk3KWmgF7U/wsH+FL9yeZuWi+FgB2n2T
 H5EV02VhlGg7z40b4xa0muvuEXw7VgbQ3O/Bs1qlZQQlM283sUQ=
 =QUJb
 -----END PGP SIGNATURE-----

Merge tag 'juno-fix-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/fixes

Armv8 Morello fix for v6.15

Just a single fix addressing the cache node inconsistencies. It removed
unnecessary CPU number from L2 cache node names since they are local to
CPU nodes and should simply be named "l2-cache" and relocates the shared
L3 cache node from under cpu@0/l2-cache to the /cpus node, which is the
standard location for shared caches.

* tag 'juno-fix-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  arm64: dts: morello: Fix-up cache nodes
2025-04-29 18:14:29 +02:00
Arnd Bergmann
fbefe1c45d Arm FF-A fix for v6.15
A fix that addresses incorrect release of Rx buffer ownership in the
 driver. The fix specificially avoids releasing Rx buffer ownership with
 FFA_RX_RELEASE if it wasn’t acquired during a FFA_PARTITION_INFO_GET call
 that only requested the partition count. This prevents unnecessary errors
 like FFA_RET_DENIED from firmware when buffers are not actually owned by
 the driver.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmf3xDIACgkQAEG6vDF+
 4ph+YRAAu+EXYDSopYHSjmFQ+pY7KUncSE4sG2MPJL06jPO6ldaQ71amQkxm7bW3
 KyqXaMBX1mlyHH6RSIY1/cIM3D0a3ubfbS6pjVpz9z5ZteNyYob5MGtE7eho6Swa
 pVa/OuNEfF6lXKb8O1eY1xHWGTs/573bVnvqfqKtZnIjNiYAo+pHJzEv+m53U9oF
 l0HoaSC6BNgPnVtFdd0z6fCOcCjw9DCluo5j9cvdMGsG6pG+F3mn4iT+7P6uvcFl
 XFhuO15+uItbRbZ1QZynZklCa1u99wMCo/+N0FpZiStqC22X6IpAs8FiaqaGpiBY
 27znwncqyW3U2lwl0ZYWdMKjlvzUoaZroM7pwu9Kcjtlvb4gF0MzJWSfWTRAMSbK
 tAeqQb5zvkiogoDLp3HfQTf+xpqvU6Qn90jpzkawhmyFgcAzR3xHuHX1t2VHY6ye
 SfydmOvcz48sS+BxHl3/T2p6zGximT3oZ8gO9uSe0IvRgw2ZJE1RZzoSCJrZTDF0
 +ktjDJtMembjSzuNpmOXdGjk2PCWQT/7bmjKe1tg2v2qvD+MEXMiryahQoeovgME
 FJR9VvOlL4JVN3ouE5wppqey6ViZmt+bu6Pg3Y6/oNQNt9gJvB7yqODGPHwfEo8r
 Z4y9EoDr6qy7r03ihLEa84KMh/LBBCj3dF4SJRWxT/GVJm5K2q4=
 =e5sa
 -----END PGP SIGNATURE-----

Merge tag 'ffa-fix-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/fixes

Arm FF-A fix for v6.15

A fix that addresses incorrect release of Rx buffer ownership in the
driver. The fix specificially avoids releasing Rx buffer ownership with
FFA_RX_RELEASE if it wasn’t acquired during a FFA_PARTITION_INFO_GET call
that only requested the partition count. This prevents unnecessary errors
like FFA_RET_DENIED from firmware when buffers are not actually owned by
the driver.

* tag 'ffa-fix-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  firmware: arm_ffa: Skip Rx buffer ownership release if not acquired
2025-04-29 18:14:19 +02:00
Arnd Bergmann
94ddc14095 Arm SCMI fixes for v6.15
Couple of fixes addressing issues with timeout in the polling path
 and device reference count imbalance detected by kmemleak.
 
 1. The change fixes a timeout issue in the polling path of SCMI transactions
    where false positives could occur if the polling thread was pre-empted,
    causing it to appear as though a timeout occurred when it hadn't. The fix
    ensures that the polling result is verified before reporting a timeout,
    accounting for potential pre-emption or out-of-order replies.
 
 2. It also corrects a device reference count imbalance caused by
    device_find_child() during device destruction, which prevented proper
    cleanup and triggered memory leaks detected by KMemleak.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmf3xWIACgkQAEG6vDF+
 4pjBlQ/9GMfp/FSSVLoUOqUypjkV0U6if1hLHWmqS0EaSi+2eA1oeFms91/KJm5x
 s3KHH/YOcdwn7Xej+CJNugTdvp44nUAkkgq0FNoIkSliHznpWJutIH9C0uDe1pLI
 wdIHrwXbsvtW4jK0uSL8ZOZWVDpMV3fFjJX+HZqlP7mQTUIo0lh7oIn02X0vrmYE
 tNZGYBH2SOv0SPqcI1rcRj5VzroRk6eOK81MJMqWRzkfjDRkTRRaigPojZKHlHaL
 jHGYBualK7Qz8rExVtrJ1EaraBQsxXBixYQct0pck7bDQrUlUwZjLr75Jc1aCHnI
 fXmkS8nvuLnuXOJ/BWxdqS5cLlP8vycBYfOcOd0Say6VVrhBp38lpbunZWKsq9rX
 LgnBWqEUouOvYM+p923xsISj1r0SZu0y+jfummDGandHFzH9zEi+mwEnylQuFROz
 1MPtZ6qSstxRXBdqaszoNlTiXIb26LPA5ywomLDln/SLgsYgTIQErqTH7w8yauQq
 zPW0I1NQL/+goIa9q12Qc4lu2hQotYpoPBJK2oTgTf7fKlCgjukrFX7Q+vIstNfd
 IEOSskgDeCJ8Rc81ZBPb7fhxKY4RzIsgtoplFRNjAIUOE4dZvYD47k7e2+jMVemT
 YUWSP3ILSSBBGjJNv6TRIaMj11e2SsR4wc9eF4giHxRTrrTEXTA=
 =JEKv
 -----END PGP SIGNATURE-----

Merge tag 'scmi-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into arm/fixes

Arm SCMI fixes for v6.15

Couple of fixes addressing issues with timeout in the polling path
and device reference count imbalance detected by kmemleak.

1. The change fixes a timeout issue in the polling path of SCMI transactions
   where false positives could occur if the polling thread was pre-empted,
   causing it to appear as though a timeout occurred when it hadn't. The fix
   ensures that the polling result is verified before reporting a timeout,
   accounting for potential pre-emption or out-of-order replies.

2. It also corrects a device reference count imbalance caused by
   device_find_child() during device destruction, which prevented proper
   cleanup and triggered memory leaks detected by KMemleak.

* tag 'scmi-fixes-6.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  firmware: arm_scmi: Fix timeout checks on polling path
  firmware: arm_scmi: Balance device refcount when destroying devices
2025-04-29 18:14:03 +02:00
Wojciech Dubowik
5591ce0069 arm64: dts: imx8mm-verdin: Link reg_usdhc2_vqmmc to usdhc2
Define vqmmc regulator-gpio for usdhc2 with vin-supply
coming from LDO5.

Without this definition LDO5 will be powered down, disabling
SD card after bootup. This has been introduced in commit
f5aab0438e ("regulator: pca9450: Fix enable register for LDO5").

Fixes: 6a57f224f7 ("arm64: dts: freescale: add initial support for verdin imx8m mini")
Fixes: f5aab0438e ("regulator: pca9450: Fix enable register for LDO5")
Tested-by: Manuel Traut <manuel.traut@mt.com>
Reviewed-by: Philippe Schenker <philippe.schenker@impulsing.ch>
Tested-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Cc: stable@vger.kernel.org
Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@mt.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-04-27 21:49:30 +08:00
Jernej Skrabec
573f99c758 Revert "arm64: dts: allwinner: h6: Use RSB for AXP805 PMIC connection"
This reverts commit 531fdbeede.

Hardware that uses I2C wasn't designed with high speeds in mind, so
communication with PMIC via RSB can intermittently fail. Go back to I2C
as higher speed and efficiency isn't worth the trouble.

Fixes: 531fdbeede ("arm64: dts: allwinner: h6: Use RSB for AXP805 PMIC connection")
Link: https://github.com/LibreELEC/LibreELEC.tv/issues/7731
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://patch.msgid.link/20250413135848.67283-1-jernej.skrabec@gmail.com
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
2025-04-27 13:38:14 +08:00
Tom Vincent
5e6a4ee979 arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588
The Realtek RT5616 audio codec on the FriendlyElec CM3588 module fails
to probe correctly due to the missing clock properties. This results
in distorted analogue audio output.

Assign MCLK to 12.288 MHz, which allows the codec to advertise most of
the standard sample rates per other RK3588 devices.

Fixes: e23819cf27 ("arm64: dts: rockchip: Add FriendlyElec CM3588 NAS board")
Signed-off-by: Tom Vincent <linux@tlvince.com>
Link: https://lore.kernel.org/r/20250417081753.644950-1-linux@tlvince.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-04-26 23:39:36 +02:00
Krzysztof Kozlowski
7ec0987da2 arm64: dts: rockchip: Align wifi node name with bindings in CB2
Since commit 3c3606793f ("dt-bindings: wireless: bcm4329-fmac: Use
wireless-controller.yaml schema"), bindings expect 'wifi' as node name:

  rk3566-bigtreetech-cb2-manta.dtb: sdio-wifi@1: $nodename:0: 'sdio-wifi@1' does not match '^wifi(@.*)?$'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20250424084729.105182-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
2025-04-26 23:39:36 +02:00
Michael Riesch
1526a735a7 MAINTAINERS: add exclude for dt-bindings to imx entry
Since the IMX (as in i.MX, the NXP SoCs) MAINTAINERS entry claims
everything that contains the name "imx", hanges to device tree
bindings for any Sony IMX image sensor are likely to be sent to the
maintainers listed therein. Add the missing exclude to fix that.

Fixes: da8b7f0fb0 ("MAINTAINERS: add all files matching "imx" and "mxs" to the IMX entry")
Suggested-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Signed-off-by: Michael Riesch <michael.riesch@collabora.com>
Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-04-25 09:36:25 +08:00
Martin Blumenstingl
a08b28c1ed arm64: dts: amlogic: g12: fix reference to unknown/untested PWM clock
Device-tree expects absent clocks to be specified as <0> (instead of
using <>). This fixes using the FCLK4/FCLK3 clocks as they are now
seen at their correct index (while before they were recognized, but at
the correct index - resulting in the hardware using a different clock
than what the kernel sees).

Fixes: e6884f2e41 ("arm64: dts: amlogic: g12: switch to the new PWM controller binding")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250420164801.330505-5-martin.blumenstingl@googlemail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 09:00:20 +02:00
Martin Blumenstingl
511d388a40 arm64: dts: amlogic: gx: fix reference to unknown/untested PWM clock
Device-tree expects absent clocks to be specified as <0> (instead of
using <>). This fixes using the FCLK4/FCLK3 clocks as they are now
seen at their correct index (while before they were recognized, but at
the correct index - resulting in the hardware using a different clock
than what the kernel sees).

Fixes: a526eeef9a ("arm64: dts: amlogic: gx: switch to the new PWM controller binding")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250420164801.330505-4-martin.blumenstingl@googlemail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 09:00:20 +02:00
Martin Blumenstingl
a994b58f9d ARM: dts: amlogic: meson8b: fix reference to unknown/untested PWM clock
Device-tree expects absent clocks to be specified as <0> (instead of
using <>). This fixes using the FCLK4/FCLK3 clocks as they are now
seen at their correct index (while before they were recognized, but at
the correct index - resulting in the hardware using a different clock
than what the kernel sees).

Fixes: dbf9218619 ("ARM: dts: amlogic: meson8b: switch to the new PWM controller binding")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250420164801.330505-3-martin.blumenstingl@googlemail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 09:00:19 +02:00
Martin Blumenstingl
3409f843c0 ARM: dts: amlogic: meson8: fix reference to unknown/untested PWM clock
Device-tree expects absent clocks to be specified as <0> (instead of
using <>). This fixes using the FCLK4/FCLK3 clocks as they are now
seen at their correct index (while before they were recognized, but at
the correct index - resulting in the hardware using a different clock
than what the kernel sees).

Fixes: 802cff460a ("ARM: dts: amlogic: meson8: switch to the new PWM controller binding")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250420164801.330505-2-martin.blumenstingl@googlemail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2025-04-22 09:00:19 +02:00
Sébastien Szymanski
6e1a7bc838 ARM: dts: opos6ul: add ksz8081 phy properties
Commit c7e73b5051 ("ARM: imx: mach-imx6ul: remove 14x14 EVK specific
PHY fixup") removed a PHY fixup that setted the clock mode and the LED
mode.
Make the Ethernet interface work again by doing as advised in the
commit's log, set clock mode and the LED mode in the device tree.

Fixes: c7e73b5051 ("ARM: imx: mach-imx6ul: remove 14x14 EVK specific PHY fixup")
Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-04-22 10:44:18 +08:00
Richard Zhu
02e4232998 arm64: dts: imx95: Correct the range of PCIe app-reg region
Correct the range of PCIe app-reg region from 0x2000 to 0x4000 refer to
SerDes_SS memory map of i.MX95 Rerference Manual.

Fixes: 3b1d5deb29 ("arm64: dts: imx95: add pcie[0,1] and pcie-ep[0,1] support")
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-04-22 10:35:23 +08:00
Ahmad Fatoum
4b98bf3bff arm64: dts: imx8mp: configure GPU and NPU clocks in nominal DTSI
Commit 255fbd9eab ("arm64: dts: imx8mp: Add optional nominal drive
mode DTSI") added imx8mp-nominal.dtsi, which overrides all overdrive
clock rates in imx8mp.dtsi to the nominal rates.

At the same time, commit 9f7595b3e5 ("arm64: dts: imx8mp: configure
GPU and NPU clocks to overdrive rate") went in, which changed some
clock rates away from the nominal values.

Resolve the discrepancy by effectively reverting the changes in the
latter commit inside imx8mp-nominal.dtsi. This is required for proper
operation of the imx8mp-skov boards, which are currently
imx8mp-nominal.dtsi's only users and lets all other boards that don't
include it benefit from the new higher frequencies.

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2025-04-22 10:18:41 +08:00
Linus Torvalds
9c32cda43e Linux 6.15-rc3 2025-04-20 13:43:47 -07:00
Linus Torvalds
ac71fabf15 gcc-15: work around sequence-point warning
The C sequence points are complicated things, and gcc-15 has apparently
added a warning for the case where an object is both used and modified
multiple times within the same sequence point.

That's a great warning.

Or rather, it would be a great warning, except gcc-15 seems to not
really be very exact about it, and doesn't notice that the modification
are to two entirely different members of the same object: the array
counter and the array entries.

So that seems kind of silly.

That said, the code that gcc complains about is unnecessarily
complicated, so moving the array counter update into a separate
statement seems like the most straightforward fix for these warnings:

  drivers/net/wireless/intel/iwlwifi/mld/d3.c: In function ‘iwl_mld_set_netdetect_info’:
  drivers/net/wireless/intel/iwlwifi/mld/d3.c:1102:66: error: operation on ‘netdetect_info->n_matches’ may be undefined [-Werror=sequence-point]
   1102 |                 netdetect_info->matches[netdetect_info->n_matches++] = match;
        |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~

  drivers/net/wireless/intel/iwlwifi/mld/d3.c:1120:58: error: operation on ‘match->n_channels’ may be undefined [-Werror=sequence-point]
   1120 |                         match->channels[match->n_channels++] =
        |                                         ~~~~~~~~~~~~~~~~~^~

side note: the code at that second warning is actively buggy, and only
works on little-endian machines that don't do strict alignment checks.

The code casts an array of integers into an array of unsigned long in
order to use our bitmap iterators.  That happens to work fine on any
sane architecture, but it's still wrong.

This does *not* fix that more serious problem.  This only splits the two
assignments into two statements and fixes the compiler warning.  I need
to get rid of the new warnings in order to be able to actually do any
build testing.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2025-04-20 11:57:54 -07:00
Linus Torvalds
05e8d261a3 gcc-15: add '__nonstring' markers to byte arrays
All of these cases are perfectly valid and good traditional C, but hit
by the "you're not NUL-terminating your byte array" warning.

And none of the cases want any terminating NUL character.

Mark them __nonstring to shut up gcc-15 (and in the case of the ak8974
magnetometer driver, I just removed the explicit array size and let gcc
expand the 3-byte and 6-byte arrays by one extra byte, because it was
the simpler change).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2025-04-20 11:57:54 -07:00
Linus Torvalds
be913e7c40 gcc-15: get rid of misc extra NUL character padding
This removes two cases of explicit NUL padding that now causes warnings
because of '-Wunterminated-string-initialization' being part of -Wextra
in gcc-15.

Gcc is being silly in this case when it says that it truncates a NUL
terminator, because in these cases there were _multiple_ NUL characters.

But we can get rid of the warning by just simplifying the two
initializers that trigger the warning for me, so this does exactly that.

I'm not sure why the power supply code did that odd

    .attr_name = #_name "\0",

pattern: it was introduced in commit 2cabeaf151 ("power: supply: core:
Cleanup power supply sysfs attribute list"), but that 'attr_name[]'
field is an explicitly sized character array in a statically initialized
variable, and a string initializer always has a terminating NUL _and_
statically initialized character arrays are zero-padded anyway, so it
really seems to be rather extraneous belt-and-suspenders.

The zero_uuid[16] initialization in drivers/md/bcache/super.c makes
perfect sense, but it isn't necessary for the same reasons, and not
worth the new gcc warning noise.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2025-04-20 11:57:54 -07:00
Linus Torvalds
4b4bd8c50f gcc-15: acpi: sprinkle random '__nonstring' crumbles around
This is not great: I'd much rather introduce a typedef that is a "ACPI
name byte buffer", and use that to mark these special 4-byte ACPI names
that do not use NUL termination.

But as noted in the previous commit ("gcc-15: make 'unterminated string
initialization' just a warning") gcc doesn't actually seem to support
that notion, so instead you have to just mark every single array
declaration individually.

So this is not pretty, but this gets rid of the bulk of the annoying
warnings during an allmodconfig build for me.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2025-04-20 11:57:54 -07:00
Linus Torvalds
d5d45a7f26 gcc-15: make 'unterminated string initialization' just a warning
gcc-15 enabling -Wunterminated-string-initialization in -Wextra by
default was done with the best intentions, but the warning is still
quite broken.

What annoys me about the warning is that this is a very traditional AND
CORRECT way to initialize fixed byte arrays in C:

	unsigned char hex[16] = "0123456789abcdef";

and we use this all over the kernel.  And the warning is fine, but gcc
developers apparently never made a reasonable way to disable it.  As is
(sadly) tradition with these things.

Yes, there's "__attribute__((nonstring))", and we have a macro to make
that absolutely disgusting syntax more palatable (ie the kernel syntax
for that monstrosity is just "__nonstring").

But that attribute is misdesigned.  What you'd typically want to do is
tell the compiler that you are using a type that isn't a string but a
byte array, but that doesn't work at all:

	warning: ‘nonstring’ attribute does not apply to types [-Wattributes]

and because of this fundamental mis-design, you then have to mark each
instance of that pattern.

This is particularly noticeable in our ACPI code, because ACPI has this
notion of a 4-byte "type name" that gets used all over, and is exactly
this kind of byte array.

This is a sad oversight, because the warning is useful, but really would
be so much better if gcc had also given a sane way to indicate that we
really just want a byte array type at a type level, not the broken "each
and every array definition" level.

So now instead of creating a nice "ACPI name" type using something like

	typedef char acpi_name_t[4] __nonstring;

we have to do things like

	char name[ACPI_NAMESEG_SIZE] __nonstring;

in every place that uses this concept and then happens to have the
typical initializers.

This is annoying me mainly because I think the warning _is_ a good
warning, which is why I'm not just turning it off in disgust.  But it is
hampered by this bad implementation detail.

[ And obviously I'm doing this now because system upgrades for me are
  something that happen in the middle of the release cycle: don't do it
  before or during travel, or just before or during the busy merge
  window period. ]

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2025-04-20 11:57:54 -07:00
Linus Torvalds
6fea5fabd3 16 hotfixes. 2 are cc:stable and the remainder address post-6.14 issues
or aren't considered necessary for -stable kernels.
 
 All patches are basically for MM although five are alterations to
 MAINTAINERS.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCaAR3JgAKCRDdBJ7gKXxA
 jtmLAP9d1h4Y7BnjJ876oPm8s3GQoasiAP6AJw3hbK7rX880vwD8DqU1IM3bTBDu
 Z9ro41MvytxWKRMEaaYUMcrh04l1IQk=
 =Fcx+
 -----END PGP SIGNATURE-----

Merge tag 'mm-hotfixes-stable-2025-04-19-21-24' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull misc hotfixes from Andrew Morton:
 "16 hotfixes. 2 are cc:stable and the remainder address post-6.14
  issues or aren't considered necessary for -stable kernels.

  All patches are basically for MM although five are alterations to
  MAINTAINERS"

[ Basic counting skills are clearly not a strictly necessary requirement
  for kernel maintainers.     - Linus ]

* tag 'mm-hotfixes-stable-2025-04-19-21-24' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
  MAINTAINERS: add section for locking of mm's and VMAs
  mm: vmscan: fix kswapd exit condition in defrag_mode
  mm: vmscan: restore high-cpu watermark safety in kswapd
  MAINTAINERS: add Pedro as reviewer to the MEMORY MAPPING section
  mm/memory: move sanity checks in do_wp_page() after mapcount vs. refcount stabilization
  mm, hugetlb: increment the number of pages to be reset on HVO
  writeback: fix false warning in inode_to_wb()
  docs: ABI: replace mcroce@microsoft.com with new Meta address
  mm/gup: fix wrongly calculated returned value in fault_in_safe_writeable()
  MAINTAINERS: add memory advice section
  MAINTAINERS: add mmap trace events to MEMORY MAPPING
  mm: memcontrol: fix swap counter leak from offline cgroup
  MAINTAINERS: add MM subsection for the page allocator
  MAINTAINERS: update SLAB ALLOCATOR maintainers
  fs/dax: fix folio splitting issue by resetting old folio order + _nr_pages
  mm/page_alloc: fix deadlock on cpu_hotplug_lock in __accept_page()
2025-04-19 21:46:58 -07:00
Linus Torvalds
119009db26 vfs-6.15-rc3.fixes.2
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCaAQM5QAKCRCRxhvAZXjc
 olcwAP0RETZn15Jkt5+mKjcx99fuVE7je3lp56UH4Y4XjZmthgEA1n65RDr4Tq6E
 548A2/9Hnt4NWdvoi9VhrG4+5dNRowM=
 =cFFa
 -----END PGP SIGNATURE-----

Merge tag 'vfs-6.15-rc3.fixes.2' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull vfs fixes from Christian Brauner:

 - Revert the hfs{plus} deprecation warning that's also included in this
   pull request. The commit introducing the deprecation warning resides
   rather early in this branch. So simply dropping it would've rebased
   all other commits which I decided to avoid. Hence the revert in the
   same branch

   [ Background - the deprecation warning discussion resulted in people
     stepping up, and so hfs{plus} will have a maintainer taking care of
     it after all..   - Linus ]

 - Switch CONFIG_SYSFS_SYCALL default to n and decouple from
   CONFIG_EXPERT

 - Fix an audit bug caused by changes to our kernel path lookup helpers
   this cycle. Audit needs the parent path even if the dentry it tried
   to look up is negative

 - Ensure that the kernel path lookup helpers leave the passed in path
   argument clean when they return an error. This is consistent with all
   our other helpers

 - Ensure that vfs_getattr_nosec() calls bdev_statx() so the relevant
   information is available to kernel consumers as well

 - Don't set a timer and call schedule() if the timer will expire
   immediately in epoll

 - Make netfs lookup tables with __nonstring

* tag 'vfs-6.15-rc3.fixes.2' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
  Revert "hfs{plus}: add deprecation warning"
  fs: move the bdex_statx call to vfs_getattr_nosec
  netfs: Mark __nonstring lookup tables
  eventpoll: Set epoll timeout if it's in the future
  fs: ensure that *path_locked*() helpers leave passed path pristine
  fs: add kern_path_locked_negative()
  hfs{plus}: add deprecation warning
  Kconfig: switch CONFIG_SYSFS_SYCALL default to n
2025-04-19 14:31:08 -07:00
Linus Torvalds
6fe8131757 i2c-for-6.15-rc3
- Address translator: fix wrong include
 - ChromeOS EC tunnel: fix potential NULL pointer dereference
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEOZGx6rniZ1Gk92RdFA3kzBSgKbYFAmgEC3sACgkQFA3kzBSg
 KbaTkBAAkxZUA+WCD/BU1ZZwX2izKIH3Ed8O3VMs5BAU5ctKk1vSHKwVLA7maHIS
 MNmjRfaCdMVO6isZvLxVsUGfYSsg/cfqQzWeNvxP/vj3pp/HxvMDqtYi3omMbwac
 rg4H+CHdsJEkg8XtgyLw18TfU6QBBH1dzA17FqwA99fq2gFq1RCujTbP2Fzo14gl
 xbQOIDDiWoe66vbD1mHHjLUpJ6YgiXDfYXT3gS5rYMM8JYdI2AI3Z0N0WNdVY+Q5
 2tE4HIc5y9hRQn5bZgQ1pIO3sRBuyZTEjh1wojrSkbTZ7kqBteW71pbzyLlZXiMS
 ALijSlqe7hVozyO86fysyYXZSXFVF5U047PHq93vuIDb95PrmOpoupE57kDN5FKW
 AmOOzutWUcwTZjSWdIsdRhBFbr4tIhC/3O/o9GfsIe+dM21tzUEY4qLZnSI0FcpH
 n+g3Q0R04ys3saCLtEdr9lPM+pQgBUQ2wYLi2jZn9N1qK+DNr+r+8BRomWVt15CW
 680/ugkpGBHPW9EwzAeTGSOp6Q9gft4PmtiHDeCMcUx7vYV1Ip4xmdBn0G43bCvK
 JphLiTW80X92B0+XIbqU+Zbww0dF0f5f3MSsPfvkCK8EcMafFkbP3cX0XZt1K1fv
 JDlrIedWe5O4xTs19wIx2QUzuIoyM90RvWSpMLtH2Be+5Xdh5u0=
 =GOZq
 -----END PGP SIGNATURE-----

Merge tag 'i2c-for-6.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c fixes from Wolfram Sang:

 - Address translator: fix wrong include

 - ChromeOS EC tunnel: fix potential NULL pointer dereference

* tag 'i2c-for-6.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  i2c: atr: Fix wrong include
  i2c: cros-ec-tunnel: defer probe if parent EC is not present
2025-04-19 13:59:04 -07:00
Christian Brauner
408e4504f9
Revert "hfs{plus}: add deprecation warning"
This reverts commit ddee68c499.

There's ongoing discussion about better maintenance of at least hfsplus.
Rever the deprecation warning for now.

Signed-off-by: Christian Brauner <brauner@kernel.org>
2025-04-19 22:48:59 +02:00
Linus Torvalds
fa6ad96dca tracing fixes for v6.15
- Initialize hash variables in ftrace subops logic
 
   The fix that simplified the ftrace subops logic opened a path where some
   variables could be used without being initialized, and done subtly where
   the compiler did not catch it. Initialize those variables to the
   EMPTY_HASH, which is the default hash.
 
 - Reinitialize the hash pointers after they are freed
 
   Some of the hash pointers in the subop logic were freed but may still be
   referenced later. To prevent use-after-free bugs, initialize them back to
   the EMPTY_HASH.
 
 - Free the ftrace hashes when they are replaced
 
   The fix that simplified the subops logic updated some hash pointers, but
   left the original hash that they were pointing to where they are no longer
   used. This caused a memory leak. Free the hashes that are pointed to by
   the pointers when they are replaced.
 
 - Fix size initialization of ftrace direct function hash
 
   The ftrace direct function hash used by BPF initialized the hash size
   incorrectly. It checked the size of items to a hard coded 32, which made
   the hash bit size of 5. The hash size is supposed to be limited by the bit
   size of the hash, as the bitmask is allowed to be greater than 5. Rework
   the size check to first pass the number of elements to fls() and then
   compare that to FTRACE_HASH_MAX_BITS before allocating the hash.
 
 - Fix format output of ftrace_graph_ent_entry event
 
   The field depth of the ftrace_graph_ent_entry event is of size 4 but the
   output showed it as unsigned long and use "%lu". Change it to unsigned int
   and use "%u" in the print format that is displayed to user space.
 
 - Fix the trace event filter on strings
 
   Events can be filtered on numbers or string values. The return value
   checked from strncpy_from_kernel_nofault() and strncpy_from_user_nofault()
   was used to determine if reading the strings would fault or not. It would
   return fault if the value was non zero, which is basically meant that it
   was always considering the read as a fault.
 
 - Add selftest to test trace event string filtering
 
   In order to catch the breakage of the string filtering, add a self test to
   make sure that it continues to work.
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCaAPqNRQccm9zdGVkdEBn
 b29kbWlzLm9yZwAKCRAp5XQQmuv6qv5nAP4mqIgne7tzMhHIH/nQGM/7Dj98n+Vt
 BXm6VifVdVJvtAD+KCDipZ2MspGEeZX3SDSnvBuj0S+OX9T9CTWPv+rFUwE=
 =AWY4
 -----END PGP SIGNATURE-----

Merge tag 'trace-v6.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull tracing fixes from Steven Rostedt:

 - Initialize hash variables in ftrace subops logic

   The fix that simplified the ftrace subops logic opened a path where
   some variables could be used without being initialized, and done
   subtly where the compiler did not catch it. Initialize those
   variables to the EMPTY_HASH, which is the default hash.

 - Reinitialize the hash pointers after they are freed

   Some of the hash pointers in the subop logic were freed but may still
   be referenced later. To prevent use-after-free bugs, initialize them
   back to the EMPTY_HASH.

 - Free the ftrace hashes when they are replaced

   The fix that simplified the subops logic updated some hash pointers,
   but left the original hash that they were pointing to where they are
   no longer used. This caused a memory leak. Free the hashes that are
   pointed to by the pointers when they are replaced.

 - Fix size initialization of ftrace direct function hash

   The ftrace direct function hash used by BPF initialized the hash size
   incorrectly. It checked the size of items to a hard coded 32, which
   made the hash bit size of 5. The hash size is supposed to be limited
   by the bit size of the hash, as the bitmask is allowed to be greater
   than 5. Rework the size check to first pass the number of elements to
   fls() and then compare that to FTRACE_HASH_MAX_BITS before allocating
   the hash.

 - Fix format output of ftrace_graph_ent_entry event

   The field depth of the ftrace_graph_ent_entry event is of size 4 but
   the output showed it as unsigned long and use "%lu". Change it to
   unsigned int and use "%u" in the print format that is displayed to
   user space.

 - Fix the trace event filter on strings

   Events can be filtered on numbers or string values. The return value
   checked from strncpy_from_kernel_nofault() and
   strncpy_from_user_nofault() was used to determine if reading the
   strings would fault or not. It would return fault if the value was
   non zero, which is basically meant that it was always considering the
   read as a fault.

 - Add selftest to test trace event string filtering

   In order to catch the breakage of the string filtering, add a self
   test to make sure that it continues to work.

* tag 'trace-v6.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
  tracing: selftests: Add testing a user string to filters
  tracing: Fix filter string testing
  ftrace: Fix type of ftrace_graph_ent_entry.depth
  ftrace: fix incorrect hash size in register_ftrace_direct()
  ftrace: Free ftrace hashes after they are replaced in the subops code
  ftrace: Reinitialize hash to EMPTY_HASH after freeing
  ftrace: Initialize variables for ftrace_startup/shutdown_subops()
2025-04-19 11:57:36 -07:00