summaryrefslogtreecommitdiff
path: root/drivers/media/platform/sti/delta/delta-v4l2.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/platform/sti/delta/delta-v4l2.c')
-rw-r--r--drivers/media/platform/sti/delta/delta-v4l2.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/media/platform/sti/delta/delta-v4l2.c b/drivers/media/platform/sti/delta/delta-v4l2.c
index e65a3a327724..237a938a9e6b 100644
--- a/drivers/media/platform/sti/delta/delta-v4l2.c
+++ b/drivers/media/platform/sti/delta/delta-v4l2.c
@@ -17,6 +17,7 @@
#include <media/videobuf2-dma-contig.h>
#include "delta.h"
+#include "delta-ipc.h"
#define DELTA_NAME "st-delta"
@@ -1703,6 +1704,14 @@ static int delta_probe(struct platform_device *pdev)
pm_runtime_set_suspended(dev);
pm_runtime_enable(dev);
+ /* init firmware ipc channel */
+ ret = delta_ipc_init(delta);
+ if (ret) {
+ dev_err(delta->dev, "%s failed to initialize firmware ipc channel\n",
+ DELTA_PREFIX);
+ goto err;
+ }
+
/* register all available decoders */
register_decoders(delta);
@@ -1747,6 +1756,8 @@ static int delta_remove(struct platform_device *pdev)
{
struct delta_dev *delta = platform_get_drvdata(pdev);
+ delta_ipc_exit(delta);
+
delta_unregister_device(delta);
destroy_workqueue(delta->work_queue);