util: resource: Give unique id for each resource 78/271978/4
authorDongwoo Lee <dwoo08.lee@samsung.com>
Thu, 3 Mar 2022 11:42:40 +0000 (20:42 +0900)
committerDongwoo Lee <dwoo08.lee@samsung.com>
Tue, 8 Mar 2022 06:57:28 +0000 (15:57 +0900)
Change-Id: I9f4eb44862ed42a2189d1c1f6cac47e760b876fe
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
include/util/resource.h
src/util/resource.c

index a5057ec..a794e58 100644 (file)
@@ -117,6 +117,7 @@ struct resource_device {
 };
 
 struct resource {
+       int id;
        char *name;
        const struct resource_driver *driver;
        int type;
index fd14ec4..8e16332 100644 (file)
@@ -28,6 +28,7 @@
 #define RESOURCE_ATTR_INDEX(id)                        BIT64_INDEX(id)
 #define RESOURCE_CTRL_INDEX(id)                        BIT64_INDEX(id)
 
+static int g_resource_id;
 static GList *g_resource_driver_head;
 static GList *g_resource_device_head;
 
@@ -169,6 +170,7 @@ struct resource *create_resource(int resource_type)
        if (!resource)
                return NULL;
 
+       resource->id = __sync_fetch_and_add(&g_resource_id, 1);
        resource->type = resource_type;
        resource->name = g_strdup(driver->name);
        resource->driver = driver;