Commit graph

1,399,042 commits

Author SHA1 Message Date
Jakub Kicinski
0b28182c73 Merge branch 'refactoring-designware-vlan-code'
Boon Khai Ng says:

====================
Refactoring designware VLAN code.

Refactoring designware VLAN code and introducing support for
hardware-accelerated VLAN stripping for dwxgmac2 IP,
the current patch set consists of two key changes:

1) Refactoring VLAN Functions:
The first change involves moving common VLAN-related functions
of the DesignWare Ethernet MAC into a dedicated file, stmmac_vlan.c.
This refactoring aims to improve code organization and maintainability
by centralizing VLAN handling logic.

2) Renaming all the functions, symbols and macro into more
generic name and consolidate the same function pointer into one.

3) Enabling VLAN for 10G Ethernet MAC IP:
The second change enables VLAN support specifically
for the 10G Ethernet MAC IP. This enhancement leverages
the hardware capabilities of the to perform VLAN stripping,

Changes from previous submmited patches.
v5:
a) Divided the refactor patch in to two patches,
first patch is to move the code into the separate file
and second patch to update the symbol name

b) get the dwmac4 vlan function up to date and port to
stmmac_vlan.c

c) remove the inline function in function pointer and
use only static function defeination.

d) Remove the outer parenthese that is not needed
on the 1 line return statement.

v4:
a) Updated the commit message to explain the descriptors
behaviour on different hardware.

b) Updated the perfect_match variable with the correct
byte order.

Link: https://lore.kernel.org/20250421162930.10237-1-boon.khai.ng@altera.com

v3: https://lore.kernel.org/20250408081354.25881-1-boon.khai.ng@altera.com
v2: https://lore.kernel.org/BL3PR11MB5748AC693D9D61FB56DB7313C1F32@BL3PR11MB5748.namprd11.prod.outlook.com
v1: https://lore.kernel.org/DM8PR11MB5751E5388AEFCFB80BCB483FC13FA@DM8PR11MB5751.namprd11.prod.outlook.com
====================

Link: https://patch.msgid.link/20250507063812.34000-1-boon.khai.ng@altera.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:29:45 -07:00
Boon Khai Ng
534df0c172 net: stmmac: dwxgmac2: Add support for HW-accelerated VLAN stripping
This patch adds support for MAC level VLAN tag stripping for the
dwxgmac2 IP. This feature can be configured through ethtool.
If the rx-vlan-offload is off, then the VLAN tag will be stripped
by the driver. If the rx-vlan-offload is on then the VLAN tag
will be stripped by the MAC.

Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Reviewed-by: Matthew Gerlach <matthew.gerlach@altera.com>
Link: https://patch.msgid.link/20250507063812.34000-4-boon.khai.ng@altera.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:29:43 -07:00
Boon Khai Ng
f3acaf7364 net: stmmac: stmmac_vlan: rename VLAN functions and symbol to generic symbol.
With the VLAN handling code decoupled from dwmac4 and dwxgmac2 and
consolidated in stmmac_vlan.c, functions and symbols are renamed to
use a generic prefix. This change improves code clarity and
maintainability by reflecting the shared nature of the VLAN logic,
facilitating future enhancements or reuse without being tied to
specific MAC implementations.

No functional changes are introduced in this patch.

Note: The dwxgmac2_update_vlan_hash function is not combined due
to minor differences in setting the VTFE bit. A separate fix patch
will be submitted to align its behavior with the dwmac4 driver.

Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Link: https://patch.msgid.link/20250507063812.34000-3-boon.khai.ng@altera.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:29:43 -07:00
Boon Khai Ng
1d2c7a5fee net: stmmac: Refactor VLAN implementation
Refactor VLAN implementation by moving common code for DWMAC4 and
DWXGMAC IPs into a separate VLAN module. VLAN implementation for
DWMAC4 and DWXGMAC differs only for CSR base address, the descriptor
for the VLAN ID and VLAN VALID bit field.

The descriptor format for VLAN is not moved to the common code due
to hardware-specific differences between DWMAC4 and DWXGMAC.

For the DWMAC4 IP, the Receive Normal Descriptor 0 (RDES0) is
formatted as follows:
    31                                                0
      ------------------------ -----------------------
RDES0| Inner VLAN TAG [31:16] | Outer VLAN TAG [15:0] |
      ------------------------ -----------------------

For the DWXGMAC IP, the RDES0 format varies based on the
Tunneled Frame bit (TNP):

a) For Non-Tunneled Frame (TNP=0)

    31                                                0
      ------------------------ -----------------------
RDES0| Inner VLAN TAG [31:16] | Outer VLAN TAG [15:0] |
      ------------------------ -----------------------

b) For Tunneled Frame (TNP=1)

     31                   8 7                3 2      0
      --------------------- ------------------ -------
RDES0| VNID/VSID           | Reserved         | OL2L3 |
      --------------------- ------------------ ------

The logic for handling tunneled frames is not yet implemented
in the dwxgmac2_wrback_get_rx_vlan_tci() function. Therefore,
it is prudent to maintain separate functions within their
respective descriptor driver files
(dwxgmac2_descs.c and dwmac4_descs.c).

Signed-off-by: Boon Khai Ng <boon.khai.ng@altera.com>
Link: https://patch.msgid.link/20250507063812.34000-2-boon.khai.ng@altera.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:29:43 -07:00
Jakub Kicinski
4d64321c4f Here is a batman-adv bugfix:
- fix duplicate MAC address check, by Matthias Schiffer
 -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAmgdxEYWHHN3QHNpbW9u
 d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoSG7D/9UpiHwuCb3FCT9hZVNbRX6XChV
 DSv8lYedVflwYgIZCqcKlg4/svygmnNNYy4XOJeLw7kjeegGmdQsol0TouZGkqTB
 pNxKnporVTxwA4FDSaRwVxwF1UOlelAzcMRxAk5tpIkGPl1wBFLx7dFzWWuU7wvT
 c0mtkJlV0kag0OZJEZqY5fYmQNHmYde9rsTpdP44ie7SPqGHpby6MYjqfGl0ztxy
 70XCMgp9ByRsCnL45UQYua17gYavKWalCsAYCikQc/+nZGkgymAaIFv5elFrou9N
 Dbw+k9X2ipw3v2atAUP40Bw6dvdIkTRaEpAyO5oDGM1//kqwAfUQazS+IWFYE50v
 eN2KRGSNJH/J2RHY0ODRomcFDotHykR8aESbkePJHc5ZFgM9E6vAzy+BPrFJaROX
 nRO/XmWXeVwyl9CrxoEtA0UusIEr3OQBMi2p5cV7vbcPHSPzQRuA2iKah0ZFsmB0
 pGyaeEh60lO2r84lYsO04bA9q8eyZkNHUxd3pZnCpy4iAzEmgKaD7RAIygwHtRim
 UezzP8BO7m6dlox16/eJ2Bev2EmA3m3w/rkyFU2jrE9xv8tTkjIYs04zTifs8+F7
 hAU+2WM/P0z+lCVEZzTaguEjFK4UrmnmSZxF1B4mh5AVQL5q4R5np4ncTiBdGJCl
 uS34escHTXWW4gHttQ==
 =kqur
 -----END PGP SIGNATURE-----

Merge tag 'batadv-net-pullrequest-20250509' of git://git.open-mesh.org/linux-merge

Simon Wunderlich says:

====================
Here is a batman-adv bugfix:

 - fix duplicate MAC address check, by Matthias Schiffer

* tag 'batadv-net-pullrequest-20250509' of git://git.open-mesh.org/linux-merge:
  batman-adv: fix duplicate MAC address check
====================

Link: https://patch.msgid.link/20250509090240.107796-1-sw@simonwunderlich.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:09:39 -07:00
Jakub Kicinski
6a63b01567 This cleanup patchset includes the following patches:
- bump version strings, by Simon Wunderlich
 
  - constify and move broadcast addr definition, Matthias Schiffer
 
  - remove start/stop queue function for mesh-iface, by Antonio Quartulli
 
  - switch to crc32 header for crc32c, by Sven Eckelmann
 
  - drop unused net_namespace.h include, by Sven Eckelmann
 -----BEGIN PGP SIGNATURE-----
 
 iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAmgdxeMWHHN3QHNpbW9u
 d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoSR2EADDS+gfYJHfGK+9R2N+GFVf+/nu
 avyo9HPi2ZdQEgzeuSDZFQb96yzQNOcW3iTkM+nSAJMANHV7I9n28ZKIufqtXNaR
 E3dKpi592ZjwedaEYp1JFHp8L4bGxEWQ68ie8zqdlyT4QXryUyVVZG061jKF2Pjl
 vns3KAL6kzFv8SlweR+JuoYudQTjn/P0m1iuPylpzf2cCD8yUaY6GsI11D4XDgxQ
 IJDkNpmVulBEJ6oYqUfA9fqQffnnxiAw4/IaA4NOrzIGvNGHKfDfnWEMTqNB/YU7
 xZ7/zD6iKefxd8OQkiFnA1NuNw+dVuii/HOeH3GcWMQ9blApeAHCUZ+o9xp6uGP0
 8f6AQ3TU/STe9/whDCgHvjMHED5V2hpYSVvtWn0w3L9nqhxrZq5eY0Cek8k7vt+G
 tRj1tyzrEcpoPQMb/eL8mS179PgCV72KKe8gwSrFdgKzLaxWVcqnByPVUjSzhHoN
 4yOWY+KUhSH9CUTes0/dMwag2EorK1B/cUXm1forHk2xNosw/FvXD1hYXJB1Mcx5
 tZvN9BalJcag4aAhpx2CCDYI0XMZrAXDB2duS/lrgSbLdbvWN3WDGAr2aI3GXpWS
 97ezGLIMWn8l9oE2BJr1s6a4/2sXJ/HSYteUGkRxIQbaitVUsN9rueuQvRzSvUvW
 i8Y5mZZaX5EUW/2gfw==
 =T+6l
 -----END PGP SIGNATURE-----

Merge tag 'batadv-next-pullrequest-20250509' of git://git.open-mesh.org/linux-merge

Simon Wunderlich says:

====================
This cleanup patchset includes the following patches:

 - bump version strings, by Simon Wunderlich

 - constify and move broadcast addr definition, Matthias Schiffer

 - remove start/stop queue function for mesh-iface, by Antonio Quartulli

 - switch to crc32 header for crc32c, by Sven Eckelmann

 - drop unused net_namespace.h include, by Sven Eckelmann

* tag 'batadv-next-pullrequest-20250509' of git://git.open-mesh.org/linux-merge:
  batman-adv: Drop unused net_namespace.h include
  batman-adv: Switch to crc32 header for crc32c
  batman-adv: no need to start/stop queue on mesh-iface
  batman-adv: constify and move broadcast addr definition
  batman-adv: Start new development cycle
====================

Link: https://patch.msgid.link/20250509091041.108416-1-sw@simonwunderlich.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 17:09:38 -07:00
Linus Torvalds
1a33418a69 two smb3 client fixes
-----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEE6fsu8pdIjtWE/DpLiiy9cAdyT1EFAmgebFUACgkQiiy9cAdy
 T1HI+gv/Q1R0t6HlpL3fgMPw9RZIOcndvIulYI1CyNQ/xdhqDcPBGl3qt3vm6247
 OM7o/easyr6TXXY5rdO/zne2ekORRLKBKFeoH/1v4jQu3XBoc/O2S0jaM9rmNuvm
 gDgVU+rzkfIUWLYQz1r8XxQ7umz+rZYEX3E9K96mlQWlykSdepx8wtLDE5kZoZZb
 fo5sHw1iEuWXLualM0fuNbqScdWKQ/Wg//yjopefwsldLY/JcoOfA/1HLXOgI451
 a3AcL7QmZzQG6wa/aq1kUmU10fL9DxbDhNmCPyiGTlCIcyithECrMaR4IRq6/FlU
 E1Zh1v7K+zCH48DSrb9SlVaCoqkZmkztvadTZBqp9NqnjOUlbpX0mHK2I0hFxcMN
 nrYFg5HPKYdo0pbLSobgIGQPph6UIrAjSlKiTfTdpEGjyyStRjtftmhhky5vKHKS
 ZXkQ9XNdS6Cwx1DT9JDYQrUwt2xH44kDx+OYsxYYYaw9yLkClJBDfQZWr4zeMnWi
 0E0mx1cz
 =m9eD
 -----END PGP SIGNATURE-----

Merge tag '6.15-rc5-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6

Pull smb client fixes from Steve French:

 - Fix dentry leak which can cause umount crash

 - Add warning for parse contexts error on compounded operation

* tag '6.15-rc5-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
  smb: client: Avoid race in open_cached_dir with lease breaks
  smb3 client: warn when parse contexts returns error on compounded operation
2025-05-09 16:45:21 -07:00
Paul Cacheux
e41b5af451 tracing: add missing trace_probe_log_clear for eprobes
Make sure trace_probe_log_clear is called in the tracing
eprobe code path, matching the trace_probe_log_init call.

Link: https://lore.kernel.org/all/20250504-fix-trace-probe-log-race-v3-1-9e99fec7eddc@gmail.com/

Signed-off-by: Paul Cacheux <paulcacheux@gmail.com>
Acked-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
2025-05-10 08:44:50 +09:00
Vladimir Oltean
3c9ff6eb2d net: mvpp2: convert to ndo_hwtstamp_get() and ndo_hwtstamp_set()
New timestamping API was introduced in commit 66f7223039 ("net: add
NDOs for configuring hardware timestamping") from kernel v6.6. It is
time to convert the mvpp2 driver to the new API, so that the
ndo_eth_ioctl() path can be removed completely.

Note that on the !port->hwtstamp condition, the old code used to fall
through in mvpp2_ioctl(), and return either -ENOTSUPP if !port->phylink,
or -EOPNOTSUPP, in phylink_mii_ioctl(). Keep the test for port->hwtstamp
in the newly introduced net_device_ops, but consolidate the error code
to just -EOPNOTSUPP. The other one is documented as NFS-specific, it's
best to avoid it anyway.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250508144630.1979215-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:43:41 -07:00
Vladimir Oltean
17c6c5a09d net: gianfar: convert to ndo_hwtstamp_get() and ndo_hwtstamp_set()
New timestamping API was introduced in commit 66f7223039 ("net: add
NDOs for configuring hardware timestamping") from kernel v6.6. It is
time to convert the gianfar driver to the new API, so that the
ndo_eth_ioctl() path can be removed completely.

Don't propagate the unnecessary "config.flags = 0;" assignment to
gfar_hwtstamp_get(), because dev_get_hwtstamp() provides a zero
initialized struct kernel_hwtstamp_config.

After removing timestamping logic from gfar_ioctl(), the rest is
equivalent to phy_do_ioctl_running(), so provide that directly as our
ndo_eth_ioctl() implementation.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> # LS1021A
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250508143659.1944220-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:42:29 -07:00
Vladimir Oltean
d27c6e8975 net: dpaa2-eth: add ndo_hwtstamp_get() implementation
Allow SIOCGHWTSTAMP to retrieve the current timestamping settings on
DPNIs. This reflects what has been done in dpaa2_eth_hwtstamp_set().

Tested with hwstamp_ctl -i endpmac17. Before the change, it prints
"Device driver does not have support for non-destructive SIOCGHWTSTAMP."
After the change, it retrieves the previously set configuration.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> # LX2160A
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250508134102.1747075-2-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:41:51 -07:00
Vladimir Oltean
b6e79c5da8 net: dpaa2-eth: convert to ndo_hwtstamp_set()
New timestamping API was introduced in commit 66f7223039 ("net: add
NDOs for configuring hardware timestamping") from kernel v6.6. It is
time to convert the DPAA2 Ethernet driver to the new API, so that the
ndo_eth_ioctl() path can be removed completely.

This driver only responds to SIOCSHWTSTAMP (not SIOCGHWTSTAMP) so
convert just that.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> # LX2160A
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250508134102.1747075-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:41:51 -07:00
Jakub Kicinski
4b3f6fb8d0 Merge branch 'dpaa_eth-conversion-to-ndo_hwtstamp_get-and-ndo_hwtstamp_set'
Vladimir Oltean says:

====================
dpaa_eth conversion to ndo_hwtstamp_get() and ndo_hwtstamp_set()

This is part of the effort to finalize the conversion of drivers to the
dedicated hardware timestamping API.

In the case of the DPAA1 Ethernet driver, a bit more care is needed,
because dpaa_ioctl() looks a bit strange. It handles the "set" IOCTL but
not the "get", and even the phylink_mii_ioctl() portion could do with
some cleanup.
====================

Link: https://patch.msgid.link/20250508124753.1492742-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:40:24 -07:00
Vladimir Oltean
c2d0b7da61 net: dpaa_eth: simplify dpaa_ioctl()
phylink_mii_ioctl() handles multiple ioctls in addition to just
SIOCGMIIREG: SIOCGMIIPHY, SIOCSMIIREG. Don't filter these out.

Also, phylink can handle the case where net_dev->phydev is NULL (like
optical SFP module, fixed-link). Be like other drivers and let phylink
do so without any driver-side call filtering.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Link: https://patch.msgid.link/20250508124753.1492742-4-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:40:22 -07:00
Vladimir Oltean
7bf230556b net: dpaa_eth: add ndo_hwtstamp_get() implementation
Allow SIOCGHWTSTAMP to retrieve the current timestamping settings
on DPAA1 interfaces. This reflects what has been done in
dpaa_hwtstamp_set().

Tested with hwstamp_ctl -i fm1-mac9.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Link: https://patch.msgid.link/20250508124753.1492742-3-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:40:22 -07:00
Vladimir Oltean
b45bf3f84e net: dpaa_eth: convert to ndo_hwtstamp_set()
New timestamping API was introduced in commit 66f7223039 ("net: add
NDOs for configuring hardware timestamping") from kernel v6.6. It is
time to convert the DPAA1 driver to the new API, so that the
ndo_eth_ioctl() path can be removed completely.

This driver only responds to SIOCSHWTSTAMP (not SIOCGHWTSTAMP) so
convert just that.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Link: https://patch.msgid.link/20250508124753.1492742-2-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:40:22 -07:00
Vladimir Oltean
6c14058edf net: dsa: convert to ndo_hwtstamp_get() and ndo_hwtstamp_set()
New timestamping API was introduced in commit 66f7223039 ("net: add
NDOs for configuring hardware timestamping") from kernel v6.6. It is
time to convert DSA to the new API, so that the ndo_eth_ioctl() path can
be removed completely.

Move the ds->ops->port_hwtstamp_get() and ds->ops->port_hwtstamp_set()
calls from dsa_user_ioctl() to dsa_user_hwtstamp_get() and
dsa_user_hwtstamp_set().

Due to the fact that the underlying ifreq type changes to
kernel_hwtstamp_config, the drivers and the Ocelot switchdev front-end,
all hooked up directly or indirectly, must also be converted all at once.

The conversion also updates the comment from dsa_port_supports_hwtstamp(),
which is no longer true because kernel_hwtstamp_config is kernel memory
and does not need copy_to_user(). I've deliberated whether it is
necessary to also update "err != -EOPNOTSUPP" to a more general "!err",
but all drivers now either return 0 or -EOPNOTSUPP.

The existing logic from the ocelot_ioctl() function, to avoid
configuring timestamping if the PHY supports the operation, is obsoleted
by more advanced core logic in dev_set_hwtstamp_phylib().

This is only a partial preparation for proper PHY timestamping support.
None of these switch driver currently sets up PTP traps for PHY
timestamping, so setting dev->see_all_hwtstamp_requests is not yet
necessary and the conversion is relatively trivial.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Vladimir Oltean <vladimir.oltean@nxp.com> # felix, sja1105, mv88e6xxx
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20250508095236.887789-1-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:34:09 -07:00
Donald Hunter
0df6932485 tools: ynl: handle broken pipe gracefully in CLI
When sending YNL CLI output into a pipe, closing the pipe causes a
BrokenPipeError. E.g. running the following and quitting less:

./tools/net/ynl/pyynl/cli.py --family rt-link --dump getlink | less
Traceback (most recent call last):
  File "/home/donaldh/net-next/./tools/net/ynl/pyynl/cli.py", line 160, in <module>
    main()
    ~~~~^^
  File "/home/donaldh/net-next/./tools/net/ynl/pyynl/cli.py", line 142, in main
    output(reply)
    ~~~~~~^^^^^^^
  File "/home/donaldh/net-next/./tools/net/ynl/pyynl/cli.py", line 97, in output
    pprint.PrettyPrinter().pprint(msg)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^
[...]
BrokenPipeError: [Errno 32] Broken pipe

Consolidate the try block for ops and notifications, and gracefully
handle the BrokenPipeError by adding an exception handler to the
consolidated try block.

Signed-off-by: Donald Hunter <donald.hunter@gmail.com>
Link: https://patch.msgid.link/20250508112102.63539-1-donald.hunter@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:28:23 -07:00
Breno Leitao
9dda18a32b tracing: fprobe: Fix RCU warning message in list traversal
When CONFIG_PROVE_RCU_LIST is enabled, fprobe triggers the following
warning:

    WARNING: suspicious RCU usage
    kernel/trace/fprobe.c:457 RCU-list traversed in non-reader section!!

    other info that might help us debug this:
	#1: ffffffff863c4e08 (fprobe_mutex){+.+.}-{4:4}, at: fprobe_module_callback+0x7b/0x8c0

    Call Trace:
	fprobe_module_callback
	notifier_call_chain
	blocking_notifier_call_chain

This warning occurs because fprobe_remove_node_in_module() traverses an
RCU list using RCU primitives without holding an RCU read lock. However,
the function is only called from fprobe_module_callback(), which holds
the fprobe_mutex lock that provides sufficient protection for safely
traversing the list.

Fix the warning by specifying the locking design to the
CONFIG_PROVE_RCU_LIST mechanism. Add the lockdep_is_held() argument to
hlist_for_each_entry_rcu() to inform the RCU checker that fprobe_mutex
provides the required protection.

Link: https://lore.kernel.org/all/20250410-fprobe-v1-1-068ef5f41436@debian.org/

Fixes: a3dc2983ca ("tracing: fprobe: Cleanup fprobe hash when module unloading")
Signed-off-by: Breno Leitao <leitao@debian.org>
Tested-by: Antonio Quartulli <antonio@mandelbit.com>
Tested-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
2025-05-10 08:28:02 +09:00
Gal Pressman
1b2900db01 ethtool: Block setting of symmetric RSS when non-symmetric rx-flow-hash is requested
Symmetric RSS hash requires that:
* No other fields besides IP src/dst and/or L4 src/dst are set
* If src is set, dst must also be set

This restriction was only enforced when RXNFC was configured after
symmetric hash was enabled. In the opposite order of operations (RXNFC
then symmetric enablement) the check was not performed.

Perform the sanity check on set_rxfh as well, by iterating over all flow
types hash fields and making sure they are all symmetric.

Introduce a function that returns whether a flow type is hashable (not
spec only) and needs to be iterated over. To make sure that no one
forgets to update the list of hashable flow types when adding new flow
types, a static assert is added to draw the developer's attention.

The conversion of uapi #defines to enum is not ideal, but as Jakub
mentioned [1], we have precedent for that.

[1] https://lore.kernel.org/netdev/20250324073509.6571ade3@kernel.org/

Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Signed-off-by: Gal Pressman <gal@nvidia.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250508103034.885536-1-gal@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:24:28 -07:00
Andrew Jeffery
e4f349bd6e net: mctp: Ensure keys maintain only one ref to corresponding dev
mctp_flow_prepare_output() is called in mctp_route_output(), which
places outbound packets onto a given interface. The packet may represent
a message fragment, in which case we provoke an unbalanced reference
count to the underlying device. This causes trouble if we ever attempt
to remove the interface:

    [   48.702195] usb 1-1: USB disconnect, device number 2
    [   58.883056] unregister_netdevice: waiting for mctpusb0 to become free. Usage count = 2
    [   69.022548] unregister_netdevice: waiting for mctpusb0 to become free. Usage count = 2
    [   79.172568] unregister_netdevice: waiting for mctpusb0 to become free. Usage count = 2
    ...

Predicate the invocation of mctp_dev_set_key() in
mctp_flow_prepare_output() on not already having associated the device
with the key. It's not yet realistic to uphold the property that the key
maintains only one device reference earlier in the transmission sequence
as the route (and therefore the device) may not be known at the time the
key is associated with the socket.

Fixes: 67737c4572 ("mctp: Pass flow data & flow release events to drivers")
Acked-by: Jeremy Kerr <jk@codeconstruct.com.au>
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Link: https://patch.msgid.link/20250508-mctp-dev-refcount-v1-1-d4f965c67bb5@codeconstruct.com.au
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:22:53 -07:00
Jason Xing
179542a987 net: thunder: make tx software timestamp independent
skb_tx_timestamp() is used for tx software timestamp enabled by
SOF_TIMESTAMPING_TX_SOFTWARE while SKBTX_HW_TSTAMP is used for
SOF_TIMESTAMPING_TX_HARDWARE. As it clearly shows they are different
timestamps in two dimensions, it's not appropriate to group these two
together in the if-statement.

This patch completes three things:
1. make the software one standalone. Users are able to set both
timestamps together with SOF_TIMESTAMPING_OPT_TX_SWHW flag.
2. make the software one generated after the hardware timestamp logic to
avoid generating sw and hw timestamps at one time without
SOF_TIMESTAMPING_OPT_TX_SWHW being set.
3. move the software timestamp call as close to the door bell.

Signed-off-by: Jason Xing <kernelxing@tencent.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Link: https://patch.msgid.link/20250508034433.14408-1-kerneljasonxing@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 16:21:25 -07:00
Lad Prabhakar
a92b9efaf2 dt-bindings: gpu: mali-bifrost: Add compatible for RZ/V2N SoC
Add a compatible string for the Renesas RZ/V2N SoC variants that include a
Mali-G31 GPU. These variants share the same restrictions on interrupts,
clocks, and power domains as the RZ/G2L SoC, so extend the existing schema
validation accordingly.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20250502162540.165962-1-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2025-05-09 17:26:40 -05:00
Dan Carpenter
493e6cb63a of: unittest: Unlock on error in unittest_data_add()
The of_overlay_mutex_unlock() was accidentally deleted if "of_root" is
NULL.  Change this to a goto unlock.

Fixes: d1eabd218e ("of: unittest: treat missing of_root as error instead of fixing up")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/aBHZ1DvXiBcZkWmk@stanley.mountain
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2025-05-09 17:26:40 -05:00
Dmitry Baryshkov
3022ae40e9 dt-bindings: soc: qcom: qcom,rpm: add missing clock/-names properties
Qualcomm MSM8660 and IPQ0864 platforms use additional clock for the RPM
device. Document it in the schema.

Fixes: aa0c4b8150 ("mfd: devicetree: bindings: Add Qualcomm RPM DT binding")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20250318-fix-nexus-4-v2-2-bcedd1406790@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Dmitry Baryshkov
dc4ec78031 dt-bindings: soc: qcom,rpm: add missing clock-controller node
On Qualcomm platforms in addition to regulators the RPM also provides
clocks via the child clock-controller node. Describe it properly in the
schema.

Fixes: 872f91b5ea ("clk: qcom: Add support for RPM Clocks")
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250318-fix-nexus-4-v2-1-bcedd1406790@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Unnathi Chalicheemala
acda397ad5 soc: qcom: smem: Update max processor count
Update max processor count to reflect the number of co-processors on
upcoming SoC.

Signed-off-by: Unnathi Chalicheemala <unnathi.chalicheemala@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250424-smem_count-v1-1-931cf68f71a8@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Danila Tikhonov
db3de3ff26 firmware: qcom: tzmem: disable sm7150 platform
The SHM bridge makes the SM7150 devices reset while probing the RMTFS
(in qcom_scm_assign_mem()). Blacklist the SHM Bridge on corresponding
platforms using SoC-level compat string.

Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250422213137.80366-13-danila@jiaxyga.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Jens Reidel
7dc837b556 soc: qcom: pd-mapper: Add support for SM7150
SM7150 protection domains are the same as SC7180, with the subtle
difference that SM7150 has a CDSP.

Signed-off-by: Jens Reidel <adrian@mainlining.org>
Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250422213137.80366-11-danila@jiaxyga.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Johan Hovold
5090ac9191 soc: qcom: pmic_glink_altmode: fix spurious DP hotplug events
The PMIC GLINK driver is currently generating DisplayPort hotplug
notifications whenever something is connected to (or disconnected from)
a port regardless of the type of notification sent by the firmware.

These notifications are forwarded to user space by the DRM subsystem as
connector "change" uevents:

    KERNEL[1556.223776] change   /devices/platform/soc@0/ae00000.display-subsystem/ae01000.display-controller/drm/card0 (drm)
    ACTION=change
    DEVPATH=/devices/platform/soc@0/ae00000.display-subsystem/ae01000.display-controller/drm/card0
    SUBSYSTEM=drm
    HOTPLUG=1
    CONNECTOR=36
    DEVNAME=/dev/dri/card0
    DEVTYPE=drm_minor
    SEQNUM=4176
    MAJOR=226
    MINOR=0

On the Lenovo ThinkPad X13s and T14s, the PMIC GLINK firmware sends two
identical notifications with orientation information when connecting a
charger, each generating a bogus DRM hotplug event. On the X13s, two
such notification are also sent every 90 seconds while a charger remains
connected, which again are forwarded to user space:

    port = 1, svid = ff00, mode = 255, hpd_state = 0
    payload = 01 00 00 00 00 00 00 ff 00 00 00 00 00 00 00 00

Note that the firmware only sends on of these when connecting an
ethernet adapter.

Fix the spurious hotplug events by only forwarding hotplug notifications
for the Type-C DisplayPort service id. This also reduces the number of
uevents from four to two when an actual DisplayPort altmode device is
connected:

    port = 0, svid = ff01, mode = 2, hpd_state = 0
    payload = 00 01 02 00 f2 0c 01 ff 03 00 00 00 00 00 00 00
    port = 0, svid = ff01, mode = 2, hpd_state = 1
    payload = 00 01 02 00 f2 0c 01 ff 43 00 00 00 00 00 00 00

Fixes: 080b4e2485 ("soc: qcom: pmic_glink: Introduce altmode support")
Cc: stable@vger.kernel.org	# 6.3
Cc: Bjorn Andersson <andersson@kernel.org>
Reported-by: Clayton Craft <clayton@craftyguy.net>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Tested-by: Clayton Craft <clayton@craftyguy.net>
Link: https://lore.kernel.org/r/20250324132448.6134-1-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Barnabás Czémán
421777a02b soc: qcom: smp2p: Fix fallback to qcom,ipc parse
mbox_request_channel() returning value was changed in case of error.
It uses returning value of of_parse_phandle_with_args().
It is returning with -ENOENT instead of -ENODEV when no mboxes property
exists.

Fixes: 24fdd5074b ("mailbox: use error ret code of of_parse_phandle_with_args()")
Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org>
Reviewed-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Tested-by: Stephan Gerhold <stephan.gerhold@linaro.org> # msm8939
Link: https://lore.kernel.org/r/20250421-fix-qcom-smd-v1-2-574d071d3f27@mainlining.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2025-05-09 17:12:55 -05:00
Al Viro
d1ddc6f1d9 fix IS_MNT_PROPAGATING uses
propagate_mnt() does not attach anything to mounts created during
propagate_mnt() itself.  What's more, anything on ->mnt_slave_list
of such new mount must also be new, so we don't need to even look
there.

When move_mount() had been introduced, we've got an additional
class of mounts to skip - if we are moving from anon namespace,
we do not want to propagate to mounts we are moving (i.e. all
mounts in that anon namespace).

Unfortunately, the part about "everything on their ->mnt_slave_list
will also be ignorable" is not true - if we have propagation graph
	A -> B -> C
and do OPEN_TREE_CLONE open_tree() of B, we get
	A -> [B <-> B'] -> C
as propagation graph, where B' is a clone of B in our detached tree.
Making B private will result in
	A -> B' -> C
C still gets propagation from A, as it would after making B private
if we hadn't done that open_tree(), but now the propagation goes
through B'.  Trying to move_mount() our detached tree on subdirectory
in A should have
	* moved B' on that subdirectory in A
	* skipped the corresponding subdirectory in B' itself
	* copied B' on the corresponding subdirectory in C.
As it is, the logics in propagation_next() and friends ends up
skipping propagation into C, since it doesn't consider anything
downstream of B'.

IOW, walking the propagation graph should only skip the ->mnt_slave_list
of new mounts; the only places where the check for "in that one
anon namespace" are applicable are propagate_one() (where we should
treat that as the same kind of thing as "mountpoint we are looking
at is not visible in the mount we are looking at") and
propagation_would_overmount().  The latter is better dealt with
in the caller (can_move_mount_beneath()); on the first call of
propagation_would_overmount() the test is always false, on the
second it is always true in "move from anon namespace" case and
always false in "move within our namespace" one, so it's easier
to just use check_mnt() before bothering with the second call and
be done with that.

Fixes: 064fe6e233 ("mount: handle mount propagation for detached mount trees")
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2025-05-09 18:06:27 -04:00
Al Viro
267fc3a06a do_move_mount(): don't leak MNTNS_PROPAGATING on failures
as it is, a failed move_mount(2) from anon namespace breaks
all further propagation into that namespace, including normal
mounts in non-anon namespaces that would otherwise propagate
there.

Fixes: 064fe6e233 ("mount: handle mount propagation for detached mount trees")
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2025-05-09 18:06:10 -04:00
Al Viro
65781e19dc do_umount(): add missing barrier before refcount checks in sync case
do_umount() analogue of the race fixed in 119e1ef80e "fix
__legitimize_mnt()/mntput() race".  Here we want to make sure that
if __legitimize_mnt() doesn't notice our lock_mount_hash(), we will
notice their refcount increment.  Harder to hit than mntput_no_expire()
one, fortunately, and consequences are milder (sync umount acting
like umount -l on a rare race with RCU pathwalk hitting at just the
wrong time instead of use-after-free galore mntput_no_expire()
counterpart used to be hit).  Still a bug...

Fixes: 48a066e72d ("RCU'd vfsmounts")
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2025-05-09 18:05:55 -04:00
Cosmin Ratiu
97c4e094a4 tests/ncdevmem: Fix double-free of queue array
netdev_bind_rx takes ownership of the queue array passed as parameter
and frees it, so a queue array buffer cannot be reused across multiple
netdev_bind_rx calls.

This commit fixes that by always passing in a newly created queue array
to all netdev_bind_rx calls in ncdevmem.

Fixes: 85585b4bc8 ("selftests: add ncdevmem, netcat for devmem TCP")
Signed-off-by: Cosmin Ratiu <cratiu@nvidia.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Reviewed-by: Joe Damato <jdamato@fastly.com>
Reviewed-by: Mina Almasry <almasrymina@google.com>
Link: https://patch.msgid.link/20250508084434.1933069-1-cratiu@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 15:05:07 -07:00
Matt Johnston
f11cf946c0 net: mctp: Don't access ifa_index when missing
In mctp_dump_addrinfo, ifa_index can be used to filter interfaces, but
only when the struct ifaddrmsg is provided. Otherwise it will be
comparing to uninitialised memory - reproducible in the syzkaller case from
dhcpd, or busybox "ip addr show".

The kernel MCTP implementation has always filtered by ifa_index, so
existing userspace programs expecting to dump MCTP addresses must
already be passing a valid ifa_index value (either 0 or a real index).

BUG: KMSAN: uninit-value in mctp_dump_addrinfo+0x208/0xac0 net/mctp/device.c:128
 mctp_dump_addrinfo+0x208/0xac0 net/mctp/device.c:128
 rtnl_dump_all+0x3ec/0x5b0 net/core/rtnetlink.c:4380
 rtnl_dumpit+0xd5/0x2f0 net/core/rtnetlink.c:6824
 netlink_dump+0x97b/0x1690 net/netlink/af_netlink.c:2309

Fixes: 583be982d9 ("mctp: Add device handling and netlink interface")
Reported-by: syzbot+e76d52dadc089b9d197f@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/all/68135815.050a0220.3a872c.000e.GAE@google.com/
Reported-by: syzbot+1065a199625a388fce60@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/all/681357d6.050a0220.14dd7d.000d.GAE@google.com/
Signed-off-by: Matt Johnston <matt@codeconstruct.com.au>
Link: https://patch.msgid.link/20250508-mctp-addr-dump-v2-1-c8a53fd2dd66@codeconstruct.com.au
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 15:03:53 -07:00
Hangbin Liu
45375814eb tools/net/ynl: ethtool: fix crash when Hardware Clock info is missing
Fix a crash in the ethtool YNL implementation when Hardware Clock information
is not present in the response. This ensures graceful handling of devices or
drivers that do not provide this optional field. e.g.

  Traceback (most recent call last):
    File "/net/tools/net/ynl/pyynl/./ethtool.py", line 438, in <module>
      main()
      ~~~~^^
    File "/net/tools/net/ynl/pyynl/./ethtool.py", line 341, in main
      print(f'PTP Hardware Clock: {tsinfo["phc-index"]}')
                                   ~~~~~~^^^^^^^^^^^^^
  KeyError: 'phc-index'

Fixes: f3d07b02b2 ("tools: ynl: ethtool testing tool")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250508035414.82974-1-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-05-09 15:03:07 -07:00
Al Viro
250cf36930 __legitimize_mnt(): check for MNT_SYNC_UMOUNT should be under mount_lock
... or we risk stealing final mntput from sync umount - raising mnt_count
after umount(2) has verified that victim is not busy, but before it
has set MNT_SYNC_UMOUNT; in that case __legitimize_mnt() doesn't see
that it's safe to quietly undo mnt_count increment and leaves dropping
the reference to caller, where it'll be a full-blown mntput().

Check under mount_lock is needed; leaving the current one done before
taking that makes no sense - it's nowhere near common enough to bother
with.

Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2025-05-09 18:02:12 -04:00
Arnd Bergmann
a793e78ef6 Device tree bindings updates for v6.16-rc1
Convert the legacy interrupt controller (LIC) and APBDMA controller
 device tree bindings from freeform text to dt-schema.
 
 Document the ASUS Transformer Pad TF300TL compatible string and add
 missing compatible strings for newer generations of the Tegra CEC.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmgebUYACgkQ3SOs138+
 s6HwIg//VQyesSydRfzS204EjSvsa7ELtGrJSiiZbskUjdV+i2AxFN/FfpGroSfB
 cPlu5IG41QUi0eFLWPq3n9s5qdkD7ie6P3SEqXF6JxQRfI857E2RxLNEDRzb2nuj
 nX/x7s6zJJFJ4exTOBQBpKk8+tcOH9W0YFBx4Z9rWRr9ziN9xgMNrixU8VjvYXEq
 hInQMq8kSxxqRGocgVpYQ5W554xd9ZFDznxr4E1ocXeN0h2WCXTRz4t1zsx55xZi
 inY+l43d5S/IJkiCO/IlTPF14eTQ5ni6XRddk/VSjTKBksTylRVZT+Yd2HhkpAhu
 pIFjl7E28s7OEJT14H8rj2HRMx5VTCL6Eh/wouwfqfHPg5/wrKe+PFpPb+YlCzxV
 Pq4cmJFj4K0v9NE1NqqPzNnYG8P/MFdVIO8oaF8c7kHLTg7duKand6NUjsRccmXu
 ENmwDl7JXmz3ZHRGvt/w+DkUhI9E/3GYjaylFY8zpSc3cu1ReXNN9zwTUkcqi08n
 lHTSURFKpO9rL2jAuTJfswGdIGHAv95ECOavGQ0D55qUTyacB4EYlrqIyC5nwZOD
 egMKtUGtEl6wfw8RSU0EJlzESjd3KmA2AHEXqSROo+2892qkpulnJH41Nq3ldSRF
 hk/kJCxNFejhZ4nEyXQ0Y7HHXwHHUYjnN5Q+MBTYRzCCZsEw+bY=
 =bNoB
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmged+gACgkQYKtH/8kJ
 Uie8HxAAv2PSNLW0zBMhoECBZVbKA8/JGozW2ty0VYzXQ0QRY501kkS4tDCBq2Eq
 2hU8hyzl9axiPZ0SItLbSArLzcDquVunwVYI8of9M33eV3Ii5U8lwi1Ne2ooRtky
 Cm54QwBTV9DfS8rx2uFWjHJefsrW48XbeUFdnW0np/mnFB0fHgS/AoanYbA51rD2
 4K5EFE0YEB4+sJU6bXf4TV2Puw1osoB6qwWYnYBo3UC5rUPNZvGfS1COuxqzuVaq
 8/Vtmf9ZxJ9xzYUwF4RGgju+7AChrjFltW12PKRrh+9nsOGkMzHxGOc0HVOlLSwJ
 y28ewT1up1FQAmVoePy64lvK1OYQWkCtGmUMbdbeTKBGUrlSLVc1ZlC5fXL3WpYZ
 9LdMT2bVspMmv9iDS/+Vwa5D5fDRo226Q9buTxR7Nb/4phXmw0b6N8AoLk5Oyurm
 TXixzWgwTML8HT0JvwAx0a8CuDRuO7HB6G9/kGaZc8phwdDJL9ri0AKKK/AuiJI/
 23jTdurGScnQ2AgUuzP0mMdzckUikkzfldGPapEBdDLrs2bNROT9a04k2LVjYvCc
 pqiP4uHVIeVcG6T7JDbPQ1fX6P/TXpU+auXNly6kXL2Sd9sowMzkicZDbn7dNOj8
 4+h7L+px2QJ98bZukwPIppV4OCQXwVKmpC3zKHy+GbQfErQ1p9E=
 =K+FD
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.16-dt-bindings' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt

Device tree bindings updates for v6.16-rc1

Convert the legacy interrupt controller (LIC) and APBDMA controller
device tree bindings from freeform text to dt-schema.

Document the ASUS Transformer Pad TF300TL compatible string and add
missing compatible strings for newer generations of the Tegra CEC.

* tag 'tegra-for-6.16-dt-bindings' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  media: dt-bindings: Document Tegra186 and Tegra194 cec
  dt-bindings: arm: tegra: Add Asus Transformer Pad TF300TL
  dt-bindings: arm: tegra: Group Tegra30 based ASUS Transformers
  dt-bindings: interrupt-controller: Convert nvidia,tegra20-ictlr to DT schema
  dt-bindings: dma: nvidia,tegra20-apbdma: convert text based binding to json schema

Link: https://lore.kernel.org/r/20250509212604.2849901-1-treding@nvidia.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:47:20 +02:00
Arnd Bergmann
85751585e4 Renesas driver updates for v6.16 (take two)
- Cover all R-Car drivers in the ARM/RISC-V/RENESAS ARCHITECTURE
     maintainer entry,
   - Identify the Renesas RZ/V2N (R9A09G056) SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaB4BwQAKCRCKwlD9ZEnx
 cAXDAPwOkxe5T9eXY3lzH84sEez4pGyWP1ZmoSJz/yy7iNxPbwEA5cF9HRWdIz3U
 4tD0Rc18zSsiTrzlaEC1sTpv/UhcaA4=
 =mVTN
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgecHEACgkQYKtH/8kJ
 UiekSQ//ZAkNvLxKJyU1zgJ4ahb/baJiGofb9JEM8bfuEnZPlhe2mycTF4dJ93f3
 j2gFK8HMshvL/0aXTPV7DhGXwuRW7mXvd+1ttc/ZWZn9vDf+cbhL+nVE+XCQBOzG
 dHesSEyAeALajozefw+qPKdgmtwua/9P8Xf417BeHDbq9xoRKt6r7LZ+z1wVfsoC
 /32U5Cyr6M089YHaRDOYPc8zJPBpsS40zbTlkdgwZGqBnrQtNnp6/BXNxvcRS9z7
 Dedu9+iKBO9HOlGBUWHDsnAWOnoHL4CwYhp5LMmNBmXUgUcuRcgkYcQoF7KaHbm8
 bglIIsKu8aFD2c7rdn89tCyZzLGLs2o5ufYp2bEh2XefV1PRIMOSOUPS/B3OmhEB
 9Tq7t0nBil474Dx9yY2fIJtOBws4eKnCvcvX63ZP/wiV1QFut/fLPEMm+SkF9NoW
 0jdAJLIxhsihtzsneb+glZ3p7xPWhPFCs2ioM56upm4VEHUptwEmJmyZXN2Fh/fm
 IL89sKBsbuGqzleI4iIjT9Zsybbu1mMdtcsy9+5amPyOwi88/VEMr02WwpBLmozl
 43xht1GLTJvtu+ONetlg0oWJ7nYOUYYLOalnj0KH2v9VbEdHCvj7/DE0JMyRmjje
 atfmY1YIVOVt8jXrdk36jKezYHF/e8I11QqrVihdNSMgQgwGlxQ=
 =t+Fy
 -----END PGP SIGNATURE-----

Merge tag 'renesas-drivers-for-v6.16-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/drivers

Renesas driver updates for v6.16 (take two)

  - Cover all R-Car drivers in the ARM/RISC-V/RENESAS ARCHITECTURE
    maintainer entry,
  - Identify the Renesas RZ/V2N (R9A09G056) SoC.

* tag 'renesas-drivers-for-v6.16-tag2' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: rz-sysc: Add SoC identification for RZ/V2N SoC
  MAINTAINERS: Generalize ARM/RISC-V/RENESAS ARCHITECTURE

Link: https://lore.kernel.org/r/cover.1746798752.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:15:29 +02:00
Arnd Bergmann
60dce06e49 AMD-TEE driver updates for v6.16
- Sort header includes
 - Use pr_fmt
 -----BEGIN PGP SIGNATURE-----
 
 iQJOBAABCgA4FiEE0qerISgy2SKkqO79Wr/6JGat8H4FAmgdpkoaHGplbnMud2lr
 bGFuZGVyQGxpbmFyby5vcmcACgkQWr/6JGat8H64rQ//eHO4x2fwX5pk8vDcbHBc
 j41Q8MUuGNrUbYh+If/3oeJSj6N/XuRxeAZFDpwxnd5Jke4f+l2htwOxH9p8EpqT
 AxXXkiVqoCBZMCHsbZPwu7c4PC08BmgpGqR4XuAKGrgh5iMGInkKTdQXZLD2L+x6
 8y4YNvqkIAVrGd8nEvreFUG4FDwD/bm1PsZ6rswpw4TMPexFIUolxNoPNScM6y+w
 qTeyaCJbyGInrzT30rNFqHugTLwpnHcwyL4p6NIIGa4J5AJ5SAIlN1g37pLmSFP/
 mQSI9Dc4iNs5vln5pAt4//M6U/qYrROM4seBBs+UZxYSiATIZ0UCDQGBKAbGESG6
 mrxdxE35SVxMYJRnWwBEs9WvM6svj6duTnYhmkkQThlxEsXxDBuAkBSbnsBZBvNJ
 URDxxnADEmcS9Cuox+4IlVvBbjyXXPYLkcEXWzKEE51tEOSJPzbjRdz01DOQBUAB
 FaVKxcUCNutVczQwaU3yatbIWKfuORAiETFVnzf1NsLO314I3bGrDC5lMSXdbKt4
 cdjRMOTpRb9aRkdrPebvmW41jMuoW1IzkeLbWHjN8sjap0H/Sq4h5M5B03SEyJrF
 uROi1V7NBUHWh4rZs+SvaG5KMG24TsppHu/wabT4FPArsUghEBwCIGKjtII2HKqJ
 itgyFg676vSW5z0Y/AZoyoo=
 =SCNO
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgecFEACgkQYKtH/8kJ
 UieoRxAAikayi3Qc8J57bY5OIteOtVrz5Vb2f0NiSNI+OIQsaTyb25oQANwiY6oa
 AOX2vK+DGZju+cezMJ68dEk+PBH8u+nITSlcuzsLLLjLRxmY5mHMSeulFhb9WMVE
 S3HnaK3igoXpDk0YcHei4xotjVnKb8nMHa/jrpH25WxIYLsVmj1XXy7pp5JNbHmN
 rrZkNnzmwS/UtL9UQWBiS5wxjpFfN7m7Y9dEE8LWyLnOemGA0pAbDGGaieUE2A3R
 SEFp81poS85OuBkZ8teflmZHa4porKnj0Tp4IGAlbfRNWqqUfcUue89AT4rK2n2u
 ZcJPl7mDjDdEy58x/CYWVyroZwvOB4Zkl6L2mGl4J5sM+7ff+6fipXMc502h5u7E
 BRDgyVkydxmjshhxrefyf5Qk81FHmZJwVgN4G6cNNfcqnt5M9kgEagJoTT5QX/cc
 Jy/63SRERmZ9Ylp7dpzy2WcbsjYp07ZgqLyijvf1TUQ1brI9BI9A89mXpFNgUjB2
 ryb3U8wsOYn98Qwtmtw7bQldfafE2YNS2X3r6UDNIZDTX8RJRaZ7pd0n8KSEpCE5
 gumxE3IS+oU0Jh461r1M2X7j7QvZu8/CJnsB0IyHausV/+VXGrcqdQE+1C/sUyEh
 RUfIzwDKrE1MAwJEafpEpg/fFsb05XwjqKS1WmCrbdUjddimkY0=
 =SWm+
 -----END PGP SIGNATURE-----

Merge tag 'amd-tee-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee into soc/drivers

AMD-TEE driver updates for v6.16

- Sort header includes
- Use pr_fmt

* tag 'amd-tee-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/jenswi/linux-tee:
  amdtee: Sort header includes
  amdtee: Use pr_fmt for messages

Link: https://lore.kernel.org/r/20250509065833.GB4188600@rayden
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:14:57 +02:00
Arnd Bergmann
fd11231a7d HiSilicon driver updates for v6.16
- Simplify PCC shared memory region handling in HCCS driver
 -----BEGIN PGP SIGNATURE-----
 
 iQJJBAABCgAzFiEEQeMYD8qOQTc1R/snC8hXbtmJZlwFAmgbHqAVHHh1d2VpNUBo
 aXNpbGljb24uY29tAAoJEAvIV27ZiWZcLdQQAJMNmTBZYgPPmcDdYnLEa2XRBmMq
 Te1ZXRYC6ymqCwEFpRQxfKq7xTNjftEih6eMdHWdj8ZdgIFHlXLLMZs6QBTjaGnl
 Y4Cp0/dYvaE2jh2LDZcXX/UqLI3BwT/XXo9n57BWFAwvqbHKVIbaYm1oZCzC65ir
 jIlsiL+WJkyTS8u1xqlbpgOzE2YVek4/ZKLa661qluaX+9LBOV2cYy3POlrzL7q4
 BZyZ2ZUw22MAoALis9fGGKB7ylnaC95/Jr9YD2ldmR/U/FYMTnZvnOGJiNtefnwR
 F2P6Q7LzqvV2YgVyTEIq6IAb4DLdaHZXxAvGCEyyyCtm4YBRJB6utZaUTZgsxPCc
 hDAzIYnteEVBrYN9fbJH5bF5VyA79ozltDhSKR534Lle9hKk0+1ZbAxMNZZm2Sjy
 O5dQB4DlmcIsVub3Spd+9wM84ErbfYh2APxns2hhAcHV5zjjCBeLFsmLjNCKRmv0
 E6Dq89NHmFW5s3zegTIpAor++ePAE37TQOdMJi2irkwIAnJLhcKNBziKFWbZ7+pt
 KHhy+K9t6yfdmQEK5QzQgWbEFw9YjFVFYhBGLQYS61QdpoEfdPkkW2sH7D9hnk8H
 OuR41LgwCIJDDgthy001WsWHyADpBUPbgS5ueM2nutoNKo0OHCqaHwdYkYKyduoV
 TNhEzCLQVGaW4SET
 =AKB9
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeb8YACgkQYKtH/8kJ
 UifYpw//UnVYcCnKOss3Fnr65+8DFdstn0ZqxmNVLWpRIM9cN3O2l6Wz7QmGDI6I
 +03uokSfuoBy9NaU1bLqRnX1/GF5wRrsOUXMCmCttkynDHDC1SlLp0SEjiV3gyg0
 245RG5/XUPOPguAfcDc1siky9OnSYXoO4m+rGUfqgizbZC7iOWM5tLujtfQih9el
 RGBwv77n/VqtKGiD3RN0bQv+icAizUZp/s/PoYqGHkE9DWQF/te0vbPM8po4DHex
 Rxh40x5uZe1gjuR9pduqIVDKifm03Oi8yzHHXnGAlUgxwFz7yclfqPEsJHAz6HXk
 93poApxP3bE8lzMkOTmOTmzBdZOmLAVmCUg0ZU8wJAl11VQYU1vscyQrQ5sAz2ze
 s4gO0lmKAvkJk+TWOzn/n379aZRPdY9H9SjpHOMWeLvZ7uisrhIhvS9+CxGrF7IG
 QuS7bies/FmnCDIJNmZbDQ2HdhFVYuaPPv6haFCqczSvnV5jL2/bkyaQTZ73nbbz
 nkS4uEM9rNcur0JpxWn2J7s8EWMHN3/PgIUB+tx0SBQu0ZbysC310GNiNVybitVi
 YWv/w5uc62mXlyJJAsxYlIgHNDxpyv2QNHO1lB1tbAyG0158gzmhC3i68h3Z7yhz
 9fNYswXM+6+pzqlxGKzegOv0GkCEGsQxeZwq/00btcnVnpGAAi0=
 =Vnns
 -----END PGP SIGNATURE-----

Merge tag 'hisi-drivers-for-6.16' of https://github.com/hisilicon/linux-hisi into soc/drivers

HiSilicon driver updates for v6.16

- Simplify PCC shared memory region handling in HCCS driver

* tag 'hisi-drivers-for-6.16' of https://github.com/hisilicon/linux-hisi:
  soc: hisilicon: kunpeng_hccs: Simplify PCC shared memory region handling

Link: https://lore.kernel.org/r/681D9FC4.6080508@hisilicon.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:12:38 +02:00
Arnd Bergmann
bddf944803 Memory controller drivers for v6.16
1. Mediatek: Add support for MT6893 MTK SMI.
 2. STM32: Add new driver for STM32 Octo Memory Manager (OMM), which
    manages muxing between two OSPI busses.
 3. Several cleanups and minor improvements (OMAP GPMC, Kconfig entries,
    BT1 L2).
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgcehEQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD1+UJD/sF/qVJS5Wtg1IyUliqCgAD+gPbxLL7K/e7
 OuR1FcblvBW4ssC1eFHJKH6lE35PGgkj/3+KrvlwpmatbcaKnpafGs4ShlyAmYKd
 yVDw5z/thjqh38vW8wtTIbNHjvTX/djNXfzP45DYZJk7LBI4c6uPX3y8fE51FoRM
 9nN+lZuwFwh1u9jcF2p+CIzI8BBTAtUtfGNgbwBn/R9y3XgmTaLIACtYdt3yg9vM
 PaP0k2oBdDimj4c3IWuaPcFMZUPYezMLVdZZ6Wll2BXkXuxpNoQkPziIFWS+7Vug
 aA1TJjvRNfIAeOfAL8jqPYAoKgzV+UOukLPAMsoE9tD1icOs8v6BsHo76mCIAm+Y
 9bCOIgXDaXhMZSysdYNZvVdC5+rp+ewYDf/TNwpUAE84KZ8fy9QoO+CIKYG09SWC
 DPc/H4hQ9I9qoQn/Do1eBFr3CUKIyI7k6Jc+ulQEZAI5aAszH9FOgi35/NPPvy0i
 o05FQiwONSa3NY4sX7LqkOz+NmClyfx9Auw9tDy8urWyERktfTC5rI6xgwz/dhCM
 r7KkTWf4hTMbtH97yycjQv+a5DOa0kT8Lnyulniv8a/GBvVcPPU+3vBxCHTYPW9m
 +tB1ARdjr9zvDdmlgw9l81vbV2HAWrhLMbf8N9ISBAkvyuYiKAiiuzwBR2qpNHg4
 AcILU8iSyw==
 =HskW
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeb5UACgkQYKtH/8kJ
 Uidpzg/9G3Q3AO8+uFwZtUHXvY9jXcTK/xuZf880osXQUOtUvuhWUGyXNNDKMvIk
 2jA8j0Wi4eRmjjG5FY1I7/cRka2pGKF/h68Uc5LOQT3gtF8f9ItBHA6XZeF80UfL
 qqGPLHG1Dr9yADwF0pL2tjyrCga45bQoNqJez1aeVtIsgcs9BnRq3qmadcpA+6Ur
 hVWT/Y6yfJZS2LCe4iM6gEdVcNYQJnvbLFJjGgWNEvh30Swpcb3FIca1tjyTxeku
 /IVbGY41JrqigP8rj5X2kLOtXIyodZKIBBevXbPCUnTmBJohg7hJriObYUmBNYsU
 7q88odyXv5XMP6gErjhMAw1BEPMJ6rJtin3FAZg0Shh8IjAs1Tsm9tVJKsQsNI/n
 OrIV64+Q/3Gs3v2NbCeRGXdYJ+m9YpakXf60Vb/tEJnd2CA4A2lTjujNWw6mHzPr
 TyFB6be1Q79GvSqemfkCUdpreCYfu9IWtaheBSNC9N22Fy1sQXXATqtMEzMrqmbD
 Q2X58Bff/n7JT5QENJVJF6JZY/fDUJOAOPRdrVhFBN0Z3fmyCYogYhTITNoBimUv
 8fohQ5z8HPqDU4Z5NkD8f9F9thawbiGCztC0knABTIf5Rz/w8usyvrjGI4gXca9b
 TBQr0rE6bCjoZslHX1ejjsAhqmZ9BntYUZJUjMj0ITzHoKfaTlE=
 =1zDp
 -----END PGP SIGNATURE-----

Merge tag 'memory-controller-drv-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into soc/drivers

Memory controller drivers for v6.16

1. Mediatek: Add support for MT6893 MTK SMI.
2. STM32: Add new driver for STM32 Octo Memory Manager (OMM), which
   manages muxing between two OSPI busses.
3. Several cleanups and minor improvements (OMAP GPMC, Kconfig entries,
   BT1 L2).

* tag 'memory-controller-drv-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
  MAINTAINERS: add entry for STM32 OCTO MEMORY MANAGER driver
  memory: Add STM32 Octo Memory Manager driver
  dt-bindings: memory-controllers: Add STM32 Octo Memory Manager controller
  bus: firewall: Fix missing static inline annotations for stubs
  memory: bt1-l2-ctl: replace scnprintf() with sysfs_emit()
  memory: mtk-smi: Add support for Dimensity 1200 MT6893 SMI
  dt-bindings: memory: mtk-smi: Add support for MT6893
  memory: tegra: Do not enable by default during compile testing
  memory: Simplify 'default' choice in Kconfig
  memory: omap-gpmc: remove GPIO set() and direction_output() callbacks
  memory: omap-gpmc: use the dedicated define for GPIO direction

Link: https://lore.kernel.org/r/20250508093451.55755-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:11:48 +02:00
Arnd Bergmann
9a977b01fb Renesas memory controller drivers for v6.16
Improvements and new device support for the Renesas RPC IF memory
 controller driver:
 1. Minor cleanup and improvements.
 2. Refactor the driver to accommodate for newly added Renesas RZ/G3E support:
    - Acquire two resets instead of only one,
    - Add RZ/G3E xSPI support with different register layout and its own,
      new interface for Renesas SPI.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgcc6QQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD13ABD/9eAue9dkJyPhcfBxHvFkn5k+HnoTw0emBc
 WlzWosbWWX5za0L9TPXNdMvXwH9CWI0Vx9SEVbNqtXtemcmrEmZMncI8AxwlW+6W
 5Rpb637YOZ/BLygvOkYsgB/nxeJz28L367uyEkmqpaW3H2pKw9A53Fdy/vaWvOam
 EwB0qCg/KUDvSP5FMsVm3fUm37GCqCEy1SiUXY0ho/0KCr0vDcvFoIbrpUeEC2fF
 FwCS+nrmtugrAs8nFEhN7svM7yQGZJeRbufM8mPX4UeUybAnfj7RP7uHn7sOdt/H
 E4/TZFXRtG7sTRmwoXayxtv5/NHSXUJvfK1D5ABW/nNQtetuOW7lOIZP90qp+NgD
 tpvVzaEXpllH/RYuiTylx3lLnQdHcD79ZhKjxyoI0xdG90NQspIr/emzbTRisiK/
 L/Mh1PMYf4qN20g+PhNXMaq2AUe4H5DMinNS+XKqf+5cozgglwITF7CKKIMeOuGO
 yjxUEM1Q1sGAMDK/t9fjWck55qT4aI/Fo1d7vxtvRxUroZF7Whtm4iX149ucxb6R
 Bb5aluIMG3FP313jzHnwPlCbQ+7yOAMtiMxEmkg4W8F0HRCAq+3WxMiqEXcPohVs
 U2Rw9KFXmFs1vNuzumkynmcnRLG1/CEUUluk+73hmxCQHCN7l2Qh3g29HydGgLTj
 Nk8lXdq1Dw==
 =+GnY
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgeb0cACgkQYKtH/8kJ
 Uif4zRAAwd62HsHgbJ9YcLCKOct42XLXy8ECpAmUvcrHBD6uWhnX2fLblj5FZZOy
 S+2YTyc4pn+tW5f5wqYS2RrXiqhjq00hGgOjuqGWh8aX0QARFshvZZa6OM4IsRHj
 Kn0WQYatkNRcB3W/PzLgzaeyY9/2Ig2rDG6KJw171DaP+nyrYGl/ihT3FlVtfBUt
 7HAZljsbmuhxCteiH76BySUq8aKrPefeA6yNzPJcBtJDieSt2wZ4K0KP1zOF++Za
 pPgLUCKBEyD9cjBtdQfEVlCtl0MtVY/bZtFTPbUI/w3wozV1D8SYHrPQ7mIshudM
 i2csWaWBO6g9S9Zt0oWQwqiKVzUyCblaUoCZhWXwUF19rqjRtFFn0WUjzMR6dB9e
 GNyIOarNl9MXdzIOab8g57RUiu/akaIFUtPIlMJedUv5MjmuCgPeN6F1BbMTRP9S
 Sh5fWc7ua3HYldpqUU6RwocHjS08grJnx/NnmXlLEjQzagnb/cO0mIF8cx9UrVoj
 jnne4JFq2bsBnzYPmMluVa1NvL3MckvWWNJmU/vZoUNW4Ot+mafq1CRiUtE7MPBv
 rFhSCtCvng89aCrRRa2m0C9rl4nI+LF5IcmWZ6gVwTcT9cu3A/yh6QRFMm276IJ7
 n6FW7iCHuB/peQ3dnrAhapPs+vBsB5pCTXaNqcbaCVYWPSd/Uks=
 =H8Ht
 -----END PGP SIGNATURE-----

Merge tag 'memory-controller-drv-renesas-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into soc/drivers

Renesas memory controller drivers for v6.16

Improvements and new device support for the Renesas RPC IF memory
controller driver:
1. Minor cleanup and improvements.
2. Refactor the driver to accommodate for newly added Renesas RZ/G3E support:
   - Acquire two resets instead of only one,
   - Add RZ/G3E xSPI support with different register layout and its own,
     new interface for Renesas SPI.

* tag 'memory-controller-drv-renesas-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl:
  memory: renesas-rpc-if: Add missing static keyword
  memory: renesas-rpc-if: Add RZ/G3E xSPI support
  memory: renesas-rpc-if: Add wrapper functions
  memory: renesas-rpc-if: Add regmap to struct rpcif_info
  memory: renesas-rpc-if: Use devm_reset_control_array_get_exclusive()
  memory: renesas-rpc-if: Move rpc-if reg definitions
  dt-bindings: memory: Document RZ/G3E support
  memory: renesas-rpc-if: Move rpcif_info definitions near to the user
  memory: renesas-rpc-if: Fix RPCIF_DRENR_CDB macro error

Link: https://lore.kernel.org/r/20250508090749.51379-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:10:31 +02:00
Arnd Bergmann
4e61c011b0 Arm SCMI updates for v6.16
1. Quirk framework to handle buggy firmware
 
    With SCMI gaining broader adoption across arm64 platforms, it's
    increasingly important to address how we consistently manage out-of-spec
    SCMI firmware already deployed in the field. This change introduces a
    lightweight quirk framework built around static_keys, enabling developers to:
     - Define quirks and their match criteria, which can include:
        o A list of compatibles ({ comp, comp2, NULL })
        o Vendor ID / Sub-Vendor ID
        o Firmware implementation version ranges ([Min_Vers, Max_Vers])
 
    Matching proceeds from the most specific (longest match) to the least
    specific. NULL entries are treated as wildcards (i.e., match any value).
    This flexibility allows matching very specific combinations or just a
    general compatible string.
 
    The quirk code blocks/snippets implementing the workaround are placed near
    their intended usage and guarded by a static_key that's tied to the quirk.
    Once the SCMI core stack is initialized and retrieves platform info via the
    base protocol, any matching quirks will have their associated static_keys
    enabled.
 
 2. Quirk for Qualcomm X1E platforms
 
    On some Qualcomm X1E platforms, such as the Lenovo ThinkPad T14s, the
    SCMI firmware fails to set the FastChannel support bit for PERF_LEVEL_GET,
    yet it crashes when the driver attempts to fall back to standard messaging
    which is clearly out-of-spec behavior.
 
    To work around this, the new SCMI quirk framework is used to
    unconditionally enable FC initialization for this firmware version.
 
    In the future, once the fixed firmware version is identified, an upper
    version bound can be added to the quirk match criteria. Alternatively,
    matching can be further restricted using a SoC-specific compatible string
    if always enabling FC proves problematic elsewhere.
 
 3. Support for NXP i.MX LMM/CPU vendor protocol extensions
 
    The i.MX95 System Manager (SM) implements Logical Machine Management (LMM)
    and a CPU protocol to manage Logical Machines (LM) and CPUs (e.g., M7).
 
    These changes integrate the vendor-specific protocol extensions
    implementing the LMM and CPU protocols for the i.MX95, facilitating
    standardized communication between the operating system and the platform's
    firmware, which will be used by remoteproc drivers. The changes also
    include the necessary device tree bindings.
 
 4. Miscellaneous cleanups/changes
 
    These mainly include polling support in SCMI raw mode. The cleanups
    centralize error logging for SCMI device creation into a single helper
    function, consolidate the device matching logic into a single function, and
    ensure that devices must have a name for registration—removing support for
    unnamed devices when matching drivers and devices for probing. Transport
    devices are now excluded from bus matching, and the correct assignment of
    the parent device for the arm-scmi platform device is ensured in the
    transport drivers.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmgbYqcACgkQAEG6vDF+
 4pgyOA//X2u1PLpzZEE/FllrBg73Y6Z6fISonsDUFMMJa4GrAaS0eJ3XBEphtNH6
 eqkkMzaBK7NnRawjPBDGLSDi7Kpuk2LcuHRsN3XdMlv6psvCj43fBpvm8CMv4iR7
 BU3a66pxHIDsxlfy8u3F2hN0N2Ppy2pVALGzahvIcvAgSYABazuY2+edEdohv/dX
 8ukmiG5+ZPv3n8fjNDHh/TuxAaixIhD6cVv6wGJX3+om5WObTDVb88tMvcblbRcY
 BuLxhWfjSUJQNx8mBfHwGymzpc3QoZV3qVqpYu+zwb7+n9kbqxnH1lGqTcyZHqlJ
 MLatLpHRzPwY4fGZ8b9ybyU+5d/F1dUY+APnyHTGWkjN5rz90QGY2yz9Ulm7kbAt
 daqX9LISvBT97MvQDlLw78A0WGfelxn3POs9uX6B6GusvSjUnrqdT5yN1/UZmGLe
 zHutmD+Ymf0kVUfDXDPB7VyVUNy+1LKUHIOlOluWHgOUVYn6Z4RpowXyVYX/FPD/
 /1yRzHjZkn+B9KK6nimZxGxjIPlV5pMHOv1WRaqAyJZ0hUu0Dh6shpwusk6OHTRg
 XLgw7IeOtrN5cX1EAvEV5LMm7zbfv4hRuaM3NxfbCytG9DWyOQrYYVsxOehvn0DD
 Ievk28BjSELo2Ry34nXYrBFmmJ/EXMZabpcru5MdwwNdXqZ81OA=
 =aV7w
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebu0ACgkQYKtH/8kJ
 UidMzBAAiWCvLE7D9FU0DRn4D8aSHHG0QBkbnzTqqPF24Z/pFoW74V9tQITJlsaI
 T5Y5Xd6VS1a7ikuhsdKRUpHQurKh2PW8UoxW2/bbI20RI6p9F3BihRkrLaVKrmru
 vmwyuLPY0m152kJd3oVkiUMjGREhu3ehSzn1AEbWsUqS8tclUGkF60kCC6CEmpUh
 Fj9MnaBuJvoUB5WqRBkyBF+8vxsGDAEWvem0E8PGicdGDb5FSPD2TbaFWAhunaJL
 VbBzcpzbrMc5+7WdMFOWN5QaWGts0eaxXJYeD8wszt9Fek1WVyoBtKwZrAEiqTPK
 8Gbgtpsf8wz5HZbvvvsz3NQBf4bSj11wquspMBBkH4AZ1ouHxEL4Yq5czpqZarcI
 Kj0Q5uBvZU8QhTqDH36BBQlqT/79wNCloKv0SkKkRdECjesB5xlrYcg2APaslI86
 pc8SRy0647b+9siVfM6ztzOgiSG/CEXQ6zxdnKXhQMEf6nfutIDsxUd63wBq3vO5
 xDRSengT/Dh8l+r63zsTc4g5PtK5/8X7o2yvUukCTgox55U6NxuWK+rxGM9Uxtd1
 nbYl7ER2bic7tp1N++Crq7yqLRAlGw49ClgYbZLVeBHAXwrj3OGynzjt19rI2Kvy
 RM9eNHDb2LgNCN4m4TzzxnCmFqxSCEQkWY/VUlAqE4ggL8rUIY4=
 =VKvM
 -----END PGP SIGNATURE-----

Merge tag 'scmi-updates-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers

Arm SCMI updates for v6.16

1. Quirk framework to handle buggy firmware

   With SCMI gaining broader adoption across arm64 platforms, it's
   increasingly important to address how we consistently manage out-of-spec
   SCMI firmware already deployed in the field. This change introduces a
   lightweight quirk framework built around static_keys, enabling developers to:
    - Define quirks and their match criteria, which can include:
       o A list of compatibles ({ comp, comp2, NULL })
       o Vendor ID / Sub-Vendor ID
       o Firmware implementation version ranges ([Min_Vers, Max_Vers])

   Matching proceeds from the most specific (longest match) to the least
   specific. NULL entries are treated as wildcards (i.e., match any value).
   This flexibility allows matching very specific combinations or just a
   general compatible string.

   The quirk code blocks/snippets implementing the workaround are placed near
   their intended usage and guarded by a static_key that's tied to the quirk.
   Once the SCMI core stack is initialized and retrieves platform info via the
   base protocol, any matching quirks will have their associated static_keys
   enabled.

2. Quirk for Qualcomm X1E platforms

   On some Qualcomm X1E platforms, such as the Lenovo ThinkPad T14s, the
   SCMI firmware fails to set the FastChannel support bit for PERF_LEVEL_GET,
   yet it crashes when the driver attempts to fall back to standard messaging
   which is clearly out-of-spec behavior.

   To work around this, the new SCMI quirk framework is used to
   unconditionally enable FC initialization for this firmware version.

   In the future, once the fixed firmware version is identified, an upper
   version bound can be added to the quirk match criteria. Alternatively,
   matching can be further restricted using a SoC-specific compatible string
   if always enabling FC proves problematic elsewhere.

3. Support for NXP i.MX LMM/CPU vendor protocol extensions

   The i.MX95 System Manager (SM) implements Logical Machine Management (LMM)
   and a CPU protocol to manage Logical Machines (LM) and CPUs (e.g., M7).

   These changes integrate the vendor-specific protocol extensions
   implementing the LMM and CPU protocols for the i.MX95, facilitating
   standardized communication between the operating system and the platform's
   firmware, which will be used by remoteproc drivers. The changes also
   include the necessary device tree bindings.

4. Miscellaneous cleanups/changes

   These mainly include polling support in SCMI raw mode. The cleanups
   centralize error logging for SCMI device creation into a single helper
   function, consolidate the device matching logic into a single function, and
   ensure that devices must have a name for registration—removing support for
   unnamed devices when matching drivers and devices for probing. Transport
   devices are now excluded from bus matching, and the correct assignment of
   the parent device for the arm-scmi platform device is ensured in the
   transport drivers.

* tag 'scmi-updates-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  firmware: arm_scmi: quirk: Force perf level get fastchannel
  firmware: arm_scmi: quirk: Fix CLOCK_DESCRIBE_RATES triplet
  firmware: arm_scmi: Add common framework to handle firmware quirks
  firmware: arm_scmi: Ensure that the message-id supports fastchannel
  MAINTAINERS: add entry for i.MX SCMI extensions
  firmware: imx: Add i.MX95 SCMI CPU driver
  firmware: imx: Add i.MX95 SCMI LMM driver
  firmware: arm_scmi: imx: Add i.MX95 CPU Protocol
  firmware: arm_scmi: imx: Add i.MX95 LMM protocol
  dt-bindings: firmware: Add i.MX95 SCMI LMM and CPU protocol
  firmware: arm_scmi: imx: Add LMM and CPU documentation
  firmware: arm_scmi: Add polling support to raw mode
  firmware: arm_scmi: Exclude transport devices from bus matching
  firmware: arm_scmi: Assign correct parent to arm-scmi platform device
  firmware: arm_scmi: Refactor error logging from SCMI device creation to single helper
  firmware: arm_scmi: Refactor device matching logic to eliminate duplication
  firmware: arm_scmi: Ensure scmi_devices are always matched by name as well

Link: https://lore.kernel.org/r/20250507134713.49039-1-sudeep.holla@arm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:09:01 +02:00
Arnd Bergmann
5dcee6dd09 MediaTek driver updates for v6.16
This brings some cleanups to the MediaTek DVFSRC driver, commonizing
 the bandwidth constraints platform data, and also adds support for
 the DVFSRC hardware found in the MediaTek Dimensity 1200 MT6893 SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iJ4EABYKAEYWIQQn3Xxr56ypAcSHzXSaNgTPrZeEeAUCaBnSnygcYW5nZWxvZ2lv
 YWNjaGluby5kZWxyZWdub0Bjb2xsYWJvcmEuY29tAAoJEJo2BM+tl4R4zW0BANwa
 3TZaLlpViiOcMixnIHO4GJRdAbBfCasRmUPfAbJ3AQDLxIYC7o5Z6VTtv/QOfsVW
 wA8RcvwJUdJ0ASsOcm5AAA==
 =ggB+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebrUACgkQYKtH/8kJ
 UicR/xAApFaq0hRkYSHRTiNMfCgJhCFMfouD+fmJEJlHwnn6i9997phb/eJlJGeL
 u4a3ti3aizZUXFzKWrbXspeZB2RvrujLS2ensQzkLo4Bb9P1D+qLU+wVa3BxvLjX
 h1pKXN0kbNOJhEbN0xDHPQjPHsaEMLhyKjOuHsSBkpM2pvz+xytVSmbvhFNu4Jj7
 lBbkUFinSRnnhPKqwfMlJBxlW2BcWTlaMtXz/h/wM27Jb2THhkVmypgmilYj+ErA
 NE1jlYgDM1GZ4gNPFYWK2RvjEx1/Vr1PXaJBPs4pACpd4ovyStuacSeYbSI2USkt
 AKiqm8P96YtLb0HckMoxR7fQWsHsKEyrlzdgVxpYCdHbxZSefjbBtlXGfuL9XJ7q
 UC80AIBGQ5bTU/8e+TVn6tmBjBIRV+OINoQl0L7x+AiUKUAVFo5qwbJcT691Cxap
 a0dhfqJQlJF4bmHZQc5CJIj6y0pOgAGSGyNV/5kj0BuD4DI2Z2fozB3T3sUXCL1I
 t/aLNU1EloxF1ukvepPqc7jpZIvJdjC+5iZ8p/rM6DJcNbBB7JAje17BY28j6kOL
 1fhNOSlOLqP/0n6yfoYwld1WsqEyQjsUXoIv/E0E1XOuAqHl2pCHh0KXrHLyRD+Z
 dn5TFXEu8ZrtJPZ/GynFAZVuWaMBddKX8KbI5cywCCw0YqzypcA=
 =Qf5M
 -----END PGP SIGNATURE-----

Merge tag 'mtk-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/drivers

MediaTek driver updates for v6.16

This brings some cleanups to the MediaTek DVFSRC driver, commonizing
the bandwidth constraints platform data, and also adds support for
the DVFSRC hardware found in the MediaTek Dimensity 1200 MT6893 SoC.

* tag 'mtk-soc-for-v6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux:
  soc: mediatek: mtk-dvfsrc: remove an unused variable
  soc: mediatek: mtk-dvfsrc: Add support for Dimensity 1200 MT6893
  soc: mediatek: mtk-dvfsrc: Rename and move bw constraints data
  dt-bindings: soc: mediatek: dvfsrc: Add support for MT6893

Link: https://lore.kernel.org/r/20250506091736.125733-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:08:05 +02:00
Arnd Bergmann
29bf77f080 This pull request contains Broadcom SoC driver updates for 6.16, please
pull the following:
 
 - Ovidiu updates the brcmstb_gisb driver to use the dev_groups instead
   of manually adding those
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmgYwkoACgkQh9CWnEQH
 BwTH/hAAuyLf74gVQ1ZE48hVhjsPALYSdzm5yuUyw74qVMNT0do5v5V7S2mD1Yc8
 AY2YtI//GWxCDrfznlYR4xJ7mr5hPb33eymckFVQ7Kt8Ufy9VeT9Gfvw73oXd9PX
 26PQ9Wd9IHF/82QWhXITsTNBEvggol06TjyV/MF3Cu/NCsQMyChYWZ0R8qpi3gax
 43WFANuGmzAytiMPwu44jtT8en9KIAoPHeEvgR5KRAEOLWrxlCO1jWCvK0QTye8A
 JaUdaHXxe1bXtBVOS8El0sia6eSYwf/1cnRNP+S1UEY9DBQPk1ir3PHWLOC+djAz
 h4cqCsE4USKN0b8T5akf96U1nYcZHXRtjLOsUzU1jVD6b7PnZ0IAOUPK6lsWL2WZ
 2jfbY23cHtlMJsklmCFwJ5xTvq0cumMsBXqLcp75bT7eOLRvWi3XAxTvqPVpczWX
 wVtHwIEm64nCl550KSXg0MXBQ4Tq651jx7JR9TjLXK+Lz5r0x6MXa6tG7VbYzPWA
 zv2f8LhqvOzTGZqznVtyX5SU61luDgZcD4HNc/hZ4TXN+FtrO2/Kep+yE7Cd56lQ
 etKUOINxOZoY5E54NJ/HtzAUYO/V9dOXskGDPmwwgO6dAga8Uv/3bP6cxS228AIY
 gLq1TixOCUJ+L/hkIZEaEeU02S/Zxeld6b8T8MA2gs28GiqcQ08=
 =5zhj
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebpAACgkQYKtH/8kJ
 Uicsrw//f2PXyvj2O9o77zhy3Kc07m0AppqJ9L9qa4lqO+C/CDPKAsRt1zvXZDE1
 ToG/JcsembX9LrULDMHF8f7PTZTxCEx+Hrv4ZKuPbhjX/ijSe6esp+UyIBSB76HA
 TonpeEraYDShaZ1RbbwBv1zD99042yZC1PJIx26Fa/35B5BoJaDBogjvnFuVS6+1
 T7GQaD99DKyMoSKM74VF/Rk1DOz5o6udbEisBlenL5EgPM8e/Fg7t7U4LumyS9F7
 4vdXJYYOeAUl03JkThU1xq71egxBSFDMqO6sn4msvtTS9ksdf/8br415RjJys1x8
 CcyXYTyDxlzPKtxFU9Hy9/TPi9dt3rzN1oZzlub5iBhz6P4rj6oIbpkSjRihXcfO
 hmBpZA1hq4+rAgPySm7u7QC8ZHUd8eYl2OtNtLmiBpkTOz0JjnFbi+R3pPx/l3zp
 BlzbREcvQ32ilLPxWAw+Atf8dBCE3EKCsgztjjPo7NfvHEqk5WX8Om1fmBGkZK9E
 RAbXoySi6pnlIgVzF8SOOX8hH/1uQ4K+3HiRHL+JY8+jTZEr1B3rmKpZk78AtXPI
 EdTwAo2+zFmWBveFOf+88/l8NX6KmH3ILOEiL30QJBLwo2k6ywEge4Tha9+t0+Ja
 p3FjPLJ88sbXcoYm2Q+LY+XF+CWcF0NCbvX1uI6SOq4z6Rb9WL8=
 =BlfD
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.16/drivers' of https://github.com/Broadcom/stblinux into soc/drivers

This pull request contains Broadcom SoC driver updates for 6.16, please
pull the following:

- Ovidiu updates the brcmstb_gisb driver to use the dev_groups instead
  of manually adding those

* tag 'arm-soc/for-6.16/drivers' of https://github.com/Broadcom/stblinux:
  bus: brcmstb_gisb: use dev_groups to register attribute groups

Link: https://lore.kernel.org/r/20250505165810.1948927-3-florian.fainelli@broadcom.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:07:28 +02:00
Linus Torvalds
0e1329d404 Rust fixes for v6.15 (2nd)
Toolchain and infrastructure:
 
  - Make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88.0.
 
  - Clean Rust (and Clippy) lints for the upcoming Rust 1.87.0 and Rust
    1.88.0 releases.
 
  - Clean objtool warning for the upcoming Rust 1.87.0 release by adding
    one more noreturn function.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPjU5OPd5QIZ9jqqOGXyLc2htIW0FAmgeYP0ACgkQGXyLc2ht
 IW1P4hAAkgehQqfec/Ebn31euIHcS2GTAr1UzSEM23ErYieLTKUOH3vaPq3rxxsF
 Tfq/n7vjRI55hfQ199nYaWIXL/BBPIDGxGZ6EwoOcH/xx4Y7er4WIbCuaxaN2ySy
 GniUtOOvbXM9tB4h/SjBc/8fv6XxmP0T8ylO4a2G1HIWz31Iy5KkeohmmugnpX0F
 FvVdR0aAjbGk1bS4JCi4Y9/TX7FzjBd6gIErvIcYZNtNUkxlWYVbIOKTSOoQiQu0
 JSI9EpgiDYjMMXvIM+INOapoVUX9yTJ/ZisoMEb2gkAkC15UVa+M8D4jaP1bYNPp
 YcjiWGJv5TNIL9F25p0Wa9pgP/OGVzJxKZv11dAwkeqX6SM/nUXuNa3pBNiuSpn8
 syoPTcP2DeZnPrXNZeItZ8KRl27TSdhs3y4RPW8jd77Fo5Hqw7nRrHqI9n+0DBKw
 7FRqnXmUQfRzlpz29Y4nA9mr8k5gLJsdKLpLEzdxC8Fec3wDPTzvchu0X722UPq+
 k+8Ex5sh8cDm0BKqplS6ZFEShMhqtwpRQFhZpCga8Ogs6t13b3vQRDkWFoeKvbGQ
 7CxSUHQRjbiwJNEpemFUCLw6fHJMusnrEXNQCIOdxuIYFyCZKiV9wFyxVWYcEp6W
 YTNnyp3f1GVlsiT9qSyNi9woUF4HTRdhUOQqsmGhCHDcUM6Ufhc=
 =lyOI
 -----END PGP SIGNATURE-----

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

Pull rust fixes from Miguel Ojeda:

 - Make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88.0

 - Clean Rust (and Clippy) lints for the upcoming Rust 1.87.0 and 1.88.0
   releases

 - Clean objtool warning for the upcoming Rust 1.87.0 release by adding
   one more noreturn function

* tag 'rust-fixes-6.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux:
  x86/Kconfig: make CFI_AUTO_DEFAULT depend on !RUST or Rust >= 1.88
  rust: clean Rust 1.88.0's `clippy::uninlined_format_args` lint
  rust: clean Rust 1.88.0's warning about `clippy::disallowed_macros` configuration
  rust: clean Rust 1.88.0's `unnecessary_transmutes` lint
  rust: allow Rust 1.87.0's `clippy::ptr_eq` lint
  objtool/rust: add one more `noreturn` Rust function for Rust 1.87.0
2025-05-09 14:06:34 -07:00
Arnd Bergmann
7ebbb8416a Samsung SoC drivers for v6.16
Several improvements to Exynos ACPM (Alive Clock and Power Manager)
 driver:
 1. Handle communication timeous better.
 2. Avoid sleeping, so users (PMIC) can still transfer during system
    shutdown.
 3. Fix reading longer messages from them firmware.
 4. Deferred probe improvements.
 5. Model the user of ACPM - PMIC - a as child device and export
    devm_acpm_get_by_node() for such use case.
 -----BEGIN PGP SIGNATURE-----
 
 iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmgTTgYQHGtyemtAa2Vy
 bmVsLm9yZwAKCRDBN2bmhouD14JRD/99MfrKN3VfNDd7KLN5HSl+5Evw7oj1G/Dc
 3CyJFjJyclEy8VxvWLOdv5d33zgf8LIZSF3zobU9EhtYLEbZ/N1iEtr+R2qhycRj
 RfVw3r+lUnLF5D4gk5eTanZxvNxO6OxHc/oJfmoIZ7S0Tn6bFjwuK//6L6fZhVHj
 j/0G4f71ec3Yx7bQgHpz+CbxBXwFkkNLX3zfWnbgUvM0hFJhxR68iQiSsraTP0P2
 BSobaBfbRMz5yRO9MnQ/U6w/VY1NRndwX0BTxdkXTU39S1dhFIU83k4gVm4eaKPp
 oPlCcbNMdvRVK7F0vA4x28cIeLI8yzU4p4/vZqq7JaFvsuydRTP043/x+zboUuQD
 EFb09aC3IZLFHzXG4/AT+TfoPMB99HRlgVXBaw16RfbWQKo46khI3j4PniHqttAs
 gfefNnzvOfyBpulB3gCLdaBuYOHZi90wCkTb9OJlzxV8k6z8pVfFnXsNPrK+L4Kn
 x/JgdrBuLtxM6bLoV+eN0PYy+xrPW4y1nwdWX3NIoRCRSwYXnCt/jG9YUK7Wtqfi
 GDrlE9gInWZO8X3n1EKDo+FUkeEb1QUCr+yQcHpTR5uLYIvjs8brxyIfy0omlwTx
 xfGJazdRtnvxZm9YCH0MumEgHdlt6AYoifVz90+rW0sqHPGfLN/Nu3RHRMe49twA
 mEBEVghlMg==
 =Nd7d
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebk4ACgkQYKtH/8kJ
 UidZ4Q/9Ff++EBBh1goLVPdaLyHO9XzaCZIszLh2YTBrp71YUyZ8EHnzuCrbj8v3
 O0ChbqMCfDxNKsTNsLCHNIjUZ3D0qq6fyC83OnYtb92KJ7AlxCYVqF/4ib/XwCZ3
 tX7rg76BKBSQnj3d5oH8mf5Eun93rv6325sWgXQytpPsYAx/BGhNtdHQNDXYW9Hs
 cTiu41V3+EFx1o2RNWHGbRlVHKua5owFgeH3alfMNkAh+XFnuquzvjbHzyFoknRy
 w50BOYUKgTNb0XRG5qOaZ3HwF32RRHXde7iIDkzTvuHdV9SQWw2cE4FRkuAqoswh
 jxQaJi6XNr86nmsOrIdDlBT7Yztggxx51vJP1WMiIKHGximhLoooAhOyvxXuA6vG
 AB4A2EPWLDSNgQcBh2qrImkFi4VGx+bqk7NrWMjN961Vy854P7bzUyJLEFWUo6DU
 M5TWoOdPhS1Cn751aTJOdTUeDXmppZj1G9vr0oSBqUZaXIWPg5yvofoWA2iwbIcC
 NaG5qd6aN9WOmIUYXjFUnvsJ9NJv3Pr/vQcPK1cmQbPR027E05m7NAoEafKC1ZQs
 uyxRZVdwvIRwzFbHeGQ63DJB6afbNNowTPZDYTImUfpyomOJOZOu7peH2rsyCnBP
 4NmoEMBB1tnFkntNb4//xWUnmcTN/+zHGBWBtTsi0MWv7Gzze4w=
 =CqLR
 -----END PGP SIGNATURE-----

Merge tag 'samsung-drivers-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/drivers

Samsung SoC drivers for v6.16

Several improvements to Exynos ACPM (Alive Clock and Power Manager)
driver:
1. Handle communication timeous better.
2. Avoid sleeping, so users (PMIC) can still transfer during system
   shutdown.
3. Fix reading longer messages from them firmware.
4. Deferred probe improvements.
5. Model the user of ACPM - PMIC - a as child device and export
   devm_acpm_get_by_node() for such use case.

* tag 'samsung-drivers-6.16' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  firmware: exynos-acpm: Correct kerneldoc and use typical np argument name
  firmware: exynos-acpm: introduce devm_acpm_get_by_node()
  firmware: exynos-acpm: populate devices from device tree data
  firmware: exynos-acpm: silence EPROBE_DEFER error on boot
  firmware: exynos-acpm: fix reading longer results
  dt-bindings: firmware: google,gs101-acpm-ipc: add PMIC child node
  firmware: exynos-acpm: allow use during system shutdown
  firmware: exynos-acpm: use ktime APIs for timeout detection

Link: https://lore.kernel.org/r/20250501103541.13795-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:06:22 +02:00
Arnd Bergmann
8f10d9b87b Renesas driver updates for v6.16
- Enable all Renesas SoCs by default when ARCH_RENESAS is set, which
     will allow up to remove all individual Renesas SoC entries from the
     various defconfigs,
   - Initial support for the Renesas RZ/V2N (R9A09G056) SoC.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaAtd1gAKCRCKwlD9ZEnx
 cMxHAP9JvtMJbvo4aZ2UfMJOonCngp9Un6OSA0tbR3dvL6q1EgD/YDf0+YcLzkyn
 wRsRS48+u9XZqD4IuW6wOnrd06GI/gM=
 =5LPm
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmgebiYACgkQYKtH/8kJ
 UieLGRAAkL1QQAXL4a8OI52LNaPy9vER62rN/0x/L9VN/MBDA+HImHxFucZFtxak
 fB4p5U9iIolq9Y+OesJl4TBCk8uI9OsSdd6jnwBNABmkAhDfhTsvdyPW3KCDAsGu
 KMXbsE3faX18zRAJWBL2XDkWpOSUGGLVfFXNex7EEyGB8bRaTiojjnxs2tQqYtvP
 kO+o1zwhEhAhkiTGp89be4/Tkjp29OMkBF4rcBOThBTjwHg4JP8hRDnHbV+fXmdO
 L08dPpyVsu1ZQncl1WP+ElIkSYvfvFaZsrifxLD/MRBxBuMnbQkTcvXloKcqNWxH
 0Ggi4ovL5YffcYG7Oy4GVXCL7V4a7yvLrubN84zgj4M2+zLi/UW/ZEHx7FRVlHEu
 KyNqYhSbQjOBnEz/IpeQItugLAqBQm2ABDDavzh8jR8bdDjPn1Prhmuqa0yUTc24
 pG5sYjUbeDrQVbe25VXIyDQZEDi5DwgoCGpby+FWOu1DVffR6pa1CwRD3BA4xTnO
 34FynOrEeLR2Jby8nI8DKN1RGvJpSA90+ATrY2XdKTemp1k6ByvXa8jiR3MKFU6y
 1ioB/EgeTo5GsoceERMNIVUXjets3elqPoclK9Nxc2Zc5k/Kq8NLaaNatX91IPzI
 pVbHkf6zYgJXqzp7ilFY9+7YUEMmzG6Dys0xI3dsBYJq4NHJ+1A=
 =HyOX
 -----END PGP SIGNATURE-----

Merge tag 'renesas-drivers-for-v6.16-tag1' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/drivers

Renesas driver updates for v6.16

  - Enable all Renesas SoCs by default when ARCH_RENESAS is set, which
    will allow up to remove all individual Renesas SoC entries from the
    various defconfigs,
  - Initial support for the Renesas RZ/V2N (R9A09G056) SoC.

* tag 'renesas-drivers-for-v6.16-tag1' of https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  soc: renesas: Add config option for RZ/V2N (R9A09G056) SoC
  soc: renesas: Kconfig: Enable SoCs by default when ARCH_RENESAS is set

Link: https://lore.kernel.org/r/cover.1745582592.git.geert+renesas@glider.be
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2025-05-09 23:05:41 +02:00