media: staging/intel-ipu3: set the main output as mandatory
authorBingbu Cao <bingbu.cao@intel.com>
Mon, 30 Dec 2019 03:09:04 +0000 (04:09 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Sat, 4 Jan 2020 07:11:51 +0000 (08:11 +0100)
From firmware perspective, the main output for each pipe is mandatory
and must be enabled. This patch set the link between imgu subdev and
main output as IMMUTABLE by default.

Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/ipu3/TODO
drivers/staging/media/ipu3/ipu3-v4l2.c

index b44bb4a72ca743f3dae762b03877fa34e2b21696..9ef036f23a21edb11d93a7627cfb3dfb03489fd1 100644 (file)
@@ -5,9 +5,6 @@ staging directory.
   as well as formats and the binary used to a request. Remove the
   opportunistic buffer management. (Sakari)
 
-- Using ENABLED and IMMUTABLE link flags for the links where those are
-  relevant. (Sakari)
-
 - IPU3 driver documentation (Laurent)
   Comments on configuring v4l2 subdevs for CIO2 and ImgU.
 
index 3c7ad1eed4343a2afdcd93fff0b4821aa62d92d8..569e27b824c855db852bd8733243c08262734f60 100644 (file)
@@ -1260,6 +1260,11 @@ static int imgu_v4l2_node_setup(struct imgu_device *imgu, unsigned int pipe,
                r = media_create_pad_link(&vdev->entity, 0, &sd->entity,
                                          node_num, flags);
        } else {
+               if (node->id == IMGU_NODE_OUT) {
+                       flags |= MEDIA_LNK_FL_ENABLED | MEDIA_LNK_FL_IMMUTABLE;
+                       node->enabled = true;
+               }
+
                r = media_create_pad_link(&sd->entity, node_num, &vdev->entity,
                                          0, flags);
        }