media: xilinx-vipp: Init async notifier after registering V4L2 device
authorSakari Ailus <sakari.ailus@linux.intel.com>
Wed, 29 Mar 2023 13:46:12 +0000 (15:46 +0200)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Thu, 10 Aug 2023 05:58:31 +0000 (07:58 +0200)
Initialise the V4L2 async notifier after registering the V4L2 device, just
before parsing DT for async sub-devices. This way the device can be made
available to the V4L2 async framework from the notifier init time onwards.
A subsequent patch will add struct v4l2_device as an argument to
v4l2_async_nf_init().

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Philipp Zabel <p.zabel@pengutronix.de> # imx6qp
Tested-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> # rcar + adv746x
Tested-by: Aishwarya Kothari <aishwarya.kothari@toradex.com> # Apalis i.MX6Q with TC358743
Tested-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> # Renesas RZ/G2L SMARC
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/xilinx/xilinx-vipp.c

index a535a75..6bb426a 100644 (file)
@@ -494,6 +494,8 @@ static int xvip_graph_init(struct xvip_composite_device *xdev)
                goto done;
        }
 
+       v4l2_async_nf_init(&xdev->notifier);
+
        /* Parse the graph to extract a list of subdevice DT nodes. */
        ret = xvip_graph_parse(xdev);
        if (ret < 0) {
@@ -574,7 +576,6 @@ static int xvip_composite_probe(struct platform_device *pdev)
 
        xdev->dev = &pdev->dev;
        INIT_LIST_HEAD(&xdev->dmas);
-       v4l2_async_nf_init(&xdev->notifier);
 
        ret = xvip_composite_v4l2_init(xdev);
        if (ret < 0)