1 #include <linux/platform_device.h>
2 #include <linux/pm_runtime.h>
3 #include <linux/module.h>
4 #include <linux/of_platform.h>
6 static int am335x_child_probe(struct platform_device
*pdev
)
10 pm_runtime_enable(&pdev
->dev
);
12 ret
= of_platform_populate(pdev
->dev
.of_node
, NULL
, NULL
, &pdev
->dev
);
18 pm_runtime_disable(&pdev
->dev
);
22 static const struct of_device_id am335x_child_of_match
[] = {
23 { .compatible
= "ti,am33xx-usb" },
26 MODULE_DEVICE_TABLE(of
, am335x_child_of_match
);
28 static struct platform_driver am335x_child_driver
= {
29 .probe
= am335x_child_probe
,
31 .name
= "am335x-usb-childs",
32 .of_match_table
= am335x_child_of_match
,
36 static int __init
am335x_child_init(void)
38 return platform_driver_register(&am335x_child_driver
);
40 module_init(am335x_child_init
);
42 MODULE_DESCRIPTION("AM33xx child devices");
43 MODULE_LICENSE("GPL v2");