if (ret < 0)
return ret;
+ system_if_clear_state(dev);
device_check_state(dev);
return 0;
static void
__device_free_unused(struct device *dev)
{
- if (!list_empty(&dev->users) || dev->current_config)
+ if (!list_empty(&dev->users) || dev->current_config || config_init)
return;
device_free(dev);