On Fri, 09 Jan 2026, Andreas Kemnade wrote:
On Fri, 9 Jan 2026 16:39:39 +0000 Lee Jones lee@kernel.org wrote:
On Fri, 09 Jan 2026, Lee Jones wrote:
On Fri, 19 Dec 2025, Johan Hovold wrote:
Since commit c6e126de43e7 ("of: Keep track of populated platform devices") child devices will not be created by of_platform_populate() if the devices had previously been deregistered individually so that the OF_POPULATED flag is still set in the corresponding OF nodes.
Switch to using of_platform_depopulate() instead of open coding so that the child devices are created if the driver is rebound.
Fixes: c6e126de43e7 ("of: Keep track of populated platform devices") Cc: stable@vger.kernel.org # 3.16 Signed-off-by: Johan Hovold johan@kernel.org
drivers/mfd/omap-usb-host.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/mfd/omap-usb-host.c b/drivers/mfd/omap-usb-host.c index a77b6fc790f2..4d29a6e2ed87 100644 --- a/drivers/mfd/omap-usb-host.c +++ b/drivers/mfd/omap-usb-host.c @@ -819,8 +819,10 @@ static void usbhs_omap_remove(struct platform_device *pdev) { pm_runtime_disable(&pdev->dev);
- /* remove children */
- device_for_each_child(&pdev->dev, NULL, usbhs_omap_remove_child);
- if (pdev->dev.of_node)
of_platform_depopulate(&pdev->dev);devm_of_platform_populate()?
- else
device_for_each_child(&pdev->dev, NULL, usbhs_omap_remove_child);What on earth is this driver even doing in MFD?
Nightmare - quick dig, bury it!
Is the old platform method even supported anymore?
$ git grep "usbhs_omap"" drivers/mfd/omap-usb-host.c:#define USBHS_DRIVER_NAME "usbhs_omap"
:~/linux/arch/arm/boot/dts/ti/omap$ grep ti,usbhs-host *.dtsi omap3.dtsi: compatible = "ti,usbhs-host"; omap4-l4.dtsi: compatible = "ti,usbhs-host"; omap5-l4.dtsi: compatible = "ti,usbhs-host";
That's the new "DT" method.
What about the old "usbhs_omap" one?
Looks to me like support was removed by Tony in 2016:
9080b8dc761a ("ARM: OMAP2+: Remove legacy usb-host.c platform init code")