On 10/12/2015 06:43 PM, Mauro Carvalho Chehab wrote:
Every time a graph object is added or removed, the version of the topology changes. That's a requirement for the new MEDIA_IOC_G_TOPOLOGY, in order to allow userspace to know that the topology has changed after a previous call to it.
Change-Id: Ia97d27960399ca7d98b1d3d32d8622286387d7a8 Signed-off-by: Mauro Carvalho Chehab mchehab@osg.samsung.com
Acked-by: Hans Verkuil hans.verkuil@cisco.com
drivers/media/media-entity.c | 5 +++++ include/media/media-device.h | 4 ++++ 2 files changed, 9 insertions(+)
diff --git a/drivers/media/media-entity.c b/drivers/media/media-entity.c index 568553d41f5d..064515f2ba9b 100644 --- a/drivers/media/media-entity.c +++ b/drivers/media/media-entity.c @@ -185,6 +185,9 @@ void media_gobj_init(struct media_device *mdev, list_add_tail(&gobj->list, &mdev->interfaces); break; }
- mdev->topology_version++;
- dev_dbg_obj(__func__, gobj);
}
@@ -199,6 +202,8 @@ void media_gobj_remove(struct media_gobj *gobj) { dev_dbg_obj(__func__, gobj);
- gobj->mdev->topology_version++;
- /* Remove the object from mdev list */ list_del(&gobj->list);
} diff --git a/include/media/media-device.h b/include/media/media-device.h index 0d1b9c687454..1b12774a9ab4 100644 --- a/include/media/media-device.h +++ b/include/media/media-device.h @@ -41,6 +41,8 @@ struct device;
- @bus_info: Unique and stable device location identifier
- @hw_revision: Hardware device revision
- @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
@@ -74,6 +76,8 @@ struct media_device { u32 hw_revision; u32 driver_version;
- u32 topology_version;
- u32 entity_id; u32 pad_id; u32 link_id;