Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torvalds/linux.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'include/media')
-rw-r--r--include/media/media-device.h10
-rw-r--r--include/media/media-entity.h21
2 files changed, 12 insertions, 19 deletions
diff --git a/include/media/media-device.h b/include/media/media-device.h
index 0dc67f2c2d0a..d3855898c3fc 100644
--- a/include/media/media-device.h
+++ b/include/media/media-device.h
@@ -275,10 +275,7 @@ struct device;
* @driver_version: Device driver version
* @topology_version: Monotonic counter for storing the version of the graph
* topology. Should be incremented each time the topology changes.
- * @entity_id: Unique ID used on the last entity registered
- * @pad_id: Unique ID used on the last pad registered
- * @link_id: Unique ID used on the last link registered
- * @intf_devnode_id: Unique ID used on the last interface devnode registered
+ * @id: Unique ID used on the last registered graph object
* @entity_internal_idx: Unique internal entity ID used by the graph traversal
* algorithms
* @entity_internal_idx_max: Allocated internal entity indices
@@ -313,10 +310,7 @@ struct media_device {
u32 topology_version;
- u32 entity_id;
- u32 pad_id;
- u32 link_id;
- u32 intf_devnode_id;
+ u32 id;
struct ida entity_internal_idx;
int entity_internal_idx_max;
diff --git a/include/media/media-entity.h b/include/media/media-entity.h
index 855b47df6ed5..54be1496d542 100644
--- a/include/media/media-entity.h
+++ b/include/media/media-entity.h
@@ -47,8 +47,8 @@ enum media_gobj_type {
};
#define MEDIA_BITS_PER_TYPE 8
-#define MEDIA_BITS_PER_LOCAL_ID (32 - MEDIA_BITS_PER_TYPE)
-#define MEDIA_LOCAL_ID_MASK GENMASK(MEDIA_BITS_PER_LOCAL_ID - 1, 0)
+#define MEDIA_BITS_PER_ID (32 - MEDIA_BITS_PER_TYPE)
+#define MEDIA_ID_MASK GENMASK_ULL(MEDIA_BITS_PER_ID - 1, 0)
/* Structs to represent the objects that belong to a media graph */
@@ -58,9 +58,8 @@ enum media_gobj_type {
* @mdev: Pointer to the struct media_device that owns the object
* @id: Non-zero object ID identifier. The ID should be unique
* inside a media_device, as it is composed by
- * MEDIA_BITS_PER_TYPE to store the type plus
- * MEDIA_BITS_PER_LOCAL_ID to store a per-type ID
- * (called as "local ID").
+ * %MEDIA_BITS_PER_TYPE to store the type plus
+ * %MEDIA_BITS_PER_ID to store the ID
* @list: List entry stored in one of the per-type mdev object lists
*
* All objects on the media graph should have this struct embedded
@@ -299,20 +298,20 @@ static inline u32 media_entity_id(struct media_entity *entity)
*/
static inline enum media_gobj_type media_type(struct media_gobj *gobj)
{
- return gobj->id >> MEDIA_BITS_PER_LOCAL_ID;
+ return gobj->id >> MEDIA_BITS_PER_ID;
}
-static inline u32 media_localid(struct media_gobj *gobj)
+static inline u32 media_id(struct media_gobj *gobj)
{
- return gobj->id & MEDIA_LOCAL_ID_MASK;
+ return gobj->id & MEDIA_ID_MASK;
}
-static inline u32 media_gobj_gen_id(enum media_gobj_type type, u32 local_id)
+static inline u32 media_gobj_gen_id(enum media_gobj_type type, u64 local_id)
{
u32 id;
- id = type << MEDIA_BITS_PER_LOCAL_ID;
- id |= local_id & MEDIA_LOCAL_ID_MASK;
+ id = type << MEDIA_BITS_PER_ID;
+ id |= local_id & MEDIA_ID_MASK;
return id;
}