Browse Source

[media] media: Use the new media graph walk interface

The media graph walk requires initialisation and cleanup soon. Update the
users to perform the soon necessary API calls.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Sakari Ailus 9 years ago
parent
commit
106b9907c3
1 changed files with 11 additions and 1 deletions
  1. 11 1
      drivers/media/media-entity.c

+ 11 - 1
drivers/media/media-entity.c

@@ -383,7 +383,13 @@ __must_check int media_entity_pipeline_start(struct media_entity *entity,
 
 
 	mutex_lock(&mdev->graph_mutex);
 	mutex_lock(&mdev->graph_mutex);
 
 
-	media_entity_graph_walk_start(graph, entity);
+	ret = media_entity_graph_walk_init(&pipe->graph, mdev);
+	if (ret) {
+		mutex_unlock(&mdev->graph_mutex);
+		return ret;
+	}
+
+	media_entity_graph_walk_start(&pipe->graph, entity);
 
 
 	while ((entity = media_entity_graph_walk_next(graph))) {
 	while ((entity = media_entity_graph_walk_next(graph))) {
 		DECLARE_BITMAP(active, MEDIA_ENTITY_MAX_PADS);
 		DECLARE_BITMAP(active, MEDIA_ENTITY_MAX_PADS);
@@ -481,6 +487,8 @@ error:
 			break;
 			break;
 	}
 	}
 
 
+	media_entity_graph_walk_cleanup(graph);
+
 	mutex_unlock(&mdev->graph_mutex);
 	mutex_unlock(&mdev->graph_mutex);
 
 
 	return ret;
 	return ret;
@@ -502,6 +510,8 @@ void media_entity_pipeline_stop(struct media_entity *entity)
 			entity->pipe = NULL;
 			entity->pipe = NULL;
 	}
 	}
 
 
+	media_entity_graph_walk_cleanup(graph);
+
 	mutex_unlock(&mdev->graph_mutex);
 	mutex_unlock(&mdev->graph_mutex);
 }
 }
 EXPORT_SYMBOL_GPL(media_entity_pipeline_stop);
 EXPORT_SYMBOL_GPL(media_entity_pipeline_stop);