|
@@ -222,6 +222,14 @@ static int _omap_device_notifier_call(struct notifier_block *nb,
|
|
dev_err(dev, "failed to idle\n");
|
|
dev_err(dev, "failed to idle\n");
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
|
|
+ case BUS_NOTIFY_BIND_DRIVER:
|
|
|
|
+ od = to_omap_device(pdev);
|
|
|
|
+ if (od && (od->_state == OMAP_DEVICE_STATE_ENABLED) &&
|
|
|
|
+ pm_runtime_status_suspended(dev)) {
|
|
|
|
+ od->_driver_status = BUS_NOTIFY_BIND_DRIVER;
|
|
|
|
+ pm_runtime_set_active(dev);
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
case BUS_NOTIFY_ADD_DEVICE:
|
|
case BUS_NOTIFY_ADD_DEVICE:
|
|
if (pdev->dev.of_node)
|
|
if (pdev->dev.of_node)
|
|
omap_device_build_from_dt(pdev);
|
|
omap_device_build_from_dt(pdev);
|