};
struct resource_driver_ops {
- int (*init)(struct resource *res);
- void (*exit)(struct resource *res);
+ int (*init)(void);
+ void (*exit)(void);
+ int (*create)(struct resource *res);
+ void (*delete)(struct resource *res);
/*
* If prepare_update is specified, it will be called
* at every update_resource_attrs().
if (!resource)
return;
- if (resource->driver && resource->driver->ops.exit)
- resource->driver->ops.exit(resource);
+ if (resource->driver && resource->driver->ops.delete)
+ resource->driver->ops.delete(resource);
unset_resource_attr_interest(resource, RESOURCE_ATTR_MASK);
resource->ctrls = driver->ctrls;
resource->num_ctrls = driver->num_ctrls;
- if (driver->ops.init) {
- ret = driver->ops.init(resource);
+ if (driver->ops.create) {
+ ret = driver->ops.create(resource);
if (ret < 0) {
_E("failed to initialize resource driver, res:type(%s)id(%d)\n",
resource->name, resource->id);