1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/platform_device.h>
3 #include <linux/pm_runtime.h>
4 #include <linux/module.h>
5 #include <linux/of_platform.h>
7 static int am335x_child_probe(struct platform_device
*pdev
)
11 pm_runtime_enable(&pdev
->dev
);
13 ret
= of_platform_populate(pdev
->dev
.of_node
, NULL
, NULL
, &pdev
->dev
);
19 pm_runtime_disable(&pdev
->dev
);
23 static const struct of_device_id am335x_child_of_match
[] = {
24 { .compatible
= "ti,am33xx-usb" },
27 MODULE_DEVICE_TABLE(of
, am335x_child_of_match
);
29 static struct platform_driver am335x_child_driver
= {
30 .probe
= am335x_child_probe
,
32 .name
= "am335x-usb-childs",
33 .of_match_table
= am335x_child_of_match
,
37 static int __init
am335x_child_init(void)
39 return platform_driver_register(&am335x_child_driver
);
41 module_init(am335x_child_init
);
43 MODULE_DESCRIPTION("AM33xx child devices");
44 MODULE_LICENSE("GPL v2");