mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-21 22:47:51 -04:00
Revert "treewide: Fix probing of devices in DT overlays"
This reverts commit1a50d9403f. While the commit fixed fw_devlink overlay handling for one case, it broke it for another case. So revert it and redo the fix in a separate patch. Fixes:1a50d9403f("treewide: Fix probing of devices in DT overlays") Reported-by: Herve Codina <herve.codina@bootlin.com> Closes: https://lore.kernel.org/lkml/CAMuHMdXEnSD4rRJ-o90x4OprUacN_rJgyo8x6=9F9rZ+-KzjOg@mail.gmail.com/ Closes: https://lore.kernel.org/all/20240221095137.616d2aaa@bootlin.com/ Closes: https://lore.kernel.org/lkml/20240312151835.29ef62a0@bootlin.com/ Signed-off-by: Saravana Kannan <saravanak@google.com> Link: https://lore.kernel.org/lkml/20240411235623.1260061-2-saravanak@google.com/ [Herve: Fix conflicts due tof72e77c33e("device property: Make modifications of fwnode "flags" thread safe")] Signed-off-by: Herve Codina <herve.codina@bootlin.com> Acked-by: Mark Brown <broonie@kernel.org> Acked-by: Rob Herring (Arm) <robh@kernel.org> Acked-by: Wolfram Sang <wsa+renesas@sang-engineering.com> # for I2C Link: https://patch.msgid.link/20260511155755.34428-2-herve.codina@bootlin.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
1137838865
commit
aaf08c52df
@@ -327,12 +327,6 @@ static int of_weim_notify(struct notifier_block *nb, unsigned long action,
|
||||
"Failed to setup timing for '%pOF'\n", rd->dn);
|
||||
|
||||
if (!of_node_check_flag(rd->dn, OF_POPULATED)) {
|
||||
/*
|
||||
* Clear the flag before adding the device so that
|
||||
* fw_devlink doesn't skip adding consumers to this
|
||||
* device.
|
||||
*/
|
||||
fwnode_clear_flag(&rd->dn->fwnode, FWNODE_FLAG_NOT_DEVICE);
|
||||
if (!of_platform_device_create(rd->dn, NULL, &pdev->dev)) {
|
||||
dev_err(&pdev->dev,
|
||||
"Failed to create child device '%pOF'\n",
|
||||
|
||||
@@ -176,11 +176,6 @@ static int of_i2c_notify(struct notifier_block *nb, unsigned long action,
|
||||
return NOTIFY_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Clear the flag before adding the device so that fw_devlink
|
||||
* doesn't skip adding consumers to this device.
|
||||
*/
|
||||
fwnode_clear_flag(&rd->dn->fwnode, FWNODE_FLAG_NOT_DEVICE);
|
||||
client = of_i2c_register_device(adap, rd->dn);
|
||||
if (IS_ERR(client)) {
|
||||
dev_err(&adap->dev, "failed to create client for '%pOF'\n",
|
||||
|
||||
@@ -225,7 +225,6 @@ static void __of_attach_node(struct device_node *np)
|
||||
np->sibling = np->parent->child;
|
||||
np->parent->child = np;
|
||||
of_node_clear_flag(np, OF_DETACHED);
|
||||
fwnode_set_flag(&np->fwnode, FWNODE_FLAG_NOT_DEVICE);
|
||||
|
||||
raw_spin_unlock_irqrestore(&devtree_lock, flags);
|
||||
|
||||
|
||||
@@ -744,11 +744,6 @@ static int of_platform_notify(struct notifier_block *nb,
|
||||
if (of_node_check_flag(rd->dn, OF_POPULATED))
|
||||
return NOTIFY_OK;
|
||||
|
||||
/*
|
||||
* Clear the flag before adding the device so that fw_devlink
|
||||
* doesn't skip adding consumers to this device.
|
||||
*/
|
||||
fwnode_clear_flag(&rd->dn->fwnode, FWNODE_FLAG_NOT_DEVICE);
|
||||
/* pdev_parent may be NULL when no bus platform device */
|
||||
pdev_parent = of_find_device_by_node(parent);
|
||||
pdev = of_platform_device_create(rd->dn, NULL,
|
||||
|
||||
@@ -5003,11 +5003,6 @@ static int of_spi_notify(struct notifier_block *nb, unsigned long action,
|
||||
return NOTIFY_OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Clear the flag before adding the device so that fw_devlink
|
||||
* doesn't skip adding consumers to this device.
|
||||
*/
|
||||
fwnode_clear_flag(&rd->dn->fwnode, FWNODE_FLAG_NOT_DEVICE);
|
||||
spi = of_register_spi_device(ctlr, rd->dn);
|
||||
put_device(&ctlr->dev);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user