linux-next: manual merge of the driver-core tree with the drm-xe tree

Mark Brown <[email protected]> Sun, 26 Jul 2026 22:56:57 +0100
Newsgroups org.kernel.vger.linux-next,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hi all,

Today's linux-next merge of the driver-core tree got a conflict in:

  drivers/gpu/drm/xe/xe_i2c.c

between commits:

  5d8ed6b64220a ("drm/xe/i2c: Allow per domain unique id")
  9420abf8dbc2e ("drm/xe/i2c: Drop manual VF check")

from the drm-xe tree and commits:

  e766abbc5191b ("drm/xe/i2c: use platform_device_set_fwnode()")
  0f485f88656af ("drm/xe/i2c: use device_create_managed_software_node()")

from the driver-core tree.

I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging.  You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

diff --cc drivers/gpu/drm/xe/xe_i2c.c
index a26c38bb17a15,5b0026bdb1c60..0000000000000
--- a/drivers/gpu/drm/xe/xe_i2c.c
+++ b/drivers/gpu/drm/xe/xe_i2c.c
@@@ -93,15 -93,7 +93,10 @@@ static int xe_i2c_register_adapter(stru
  {
  	struct pci_dev *pci = to_pci_dev(i2c->drm_dev);
  	struct platform_device *pdev;
- 	struct fwnode_handle *fwnode;
  	int ret;
 +	u32 id;
 +
- 	fwnode = fwnode_create_software_node(xe_i2c_adapter_properties, NULL);
- 	if (IS_ERR(fwnode))
- 		return PTR_ERR(fwnode);
- 
 +	id = (pci_domain_nr(pci->bus) << 16) | pci_dev_id(pci);
  
  	/*
  	 * Not using platform_device_register_full() here because we don't have
@@@ -109,11 -101,15 +104,15 @@@
  	 * uses that handle, but it may be called before
  	 * platform_device_register_full() is done.
  	 */
 -	pdev = platform_device_alloc(adapter_name, pci_dev_id(pci));
 +	pdev = platform_device_alloc(adapter_name, id);
- 	if (!pdev) {
- 		ret = -ENOMEM;
- 		goto err_fwnode_remove;
- 	}
+ 	if (!pdev)
+ 		return -ENOMEM;
+ 
+ 	ret = device_create_managed_software_node(&pdev->dev,
+ 						  xe_i2c_adapter_properties,
+ 						  NULL);
+ 	if (ret)
+ 		goto err_pdev_put;
  
  	if (i2c->adapter_irq) {
  		struct resource res;
signature.asc (application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE-----

iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmpmgqgACgkQJNaLcl1U
h9CuZAf/V+TMKTxsxBu/1gQjqIN/cqeNIvnEjKaB05svSoZtt98IwOIU3wP+dD+Z
yTBE8E+BnpNI8MWKiziy2MYWdv0GQo+6LmuFWeVaBN0abPqRGZfZHuRoAqhL/uy4
HaJVQb9Cn02ZYjBnG5GikTExXqLikkSj8I9YBi+3tcoXGZAWB0mRIOylZMqbkC2R
7FQZ5jo0YMaIfjhOP9W4rX86rqiAzg5O03wOobw0haOZwYiTswZrqoonsHpLhIqZ
8hX4e06Y60tT+Th3fO4bYBKtTgYD6EvRP9+EOKeGnX+0EFK8pBGMd46CGi5LBqMH
A22LLDxNl0PgVzEqvurB5Si9XVgxQQ==
=SjWj
-----END PGP SIGNATURE-----