Re: imx6: Cannot register mem2mem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 06, 2020 at 11:41:33AM -0300, Fabio Estevam wrote:
> On Mon, Apr 6, 2020 at 10:37 AM Fabio Estevam <festevam@xxxxxxxxx> wrote:
> >
> > Hi,
> >
> > I am running kernel 5.6.2 on an imx6qp sabresd, but I cannot get the
> > mem2mem element from imx-media-csc-scaler.c to probe.
> >
> > I don't see imx6_media_probe_complete() getting called, hence
> > imx_media_csc_scaler_device_init() is never called and no mem2mem
> > element is registered.
> >
> > Any ideas as to how to get mem2mem registered on i.MX6?
> 
> It seems that v4l2_async_notifier_can_complete() is always false, so
> v4l2_async_notifier_call_complete() is never called.
> 
> If I change it like this:
> 
> --- a/drivers/media/v4l2-core/v4l2-async.c
> +++ b/drivers/media/v4l2-core/v4l2-async.c
> @@ -213,10 +213,6 @@ v4l2_async_notifier_try_complete(struct
> v4l2_async_notifier *notifier)
>         if (!notifier->v4l2_dev)
>                 return 0;
> 
> -       /* Is everything ready? */
> -       if (!v4l2_async_notifier_can_complete(notifier))
> -               return 0;
> -
>         return v4l2_async_notifier_call_complete(notifier);
>  }
> 
> Then the mem2mem driver can be successfully probed:
> 
> [    4.601350] imx-media: Registered ipu_ic_pp csc/scaler as /dev/video11
> 
> Any suggestions?

There are basically async sub-devices that haven't been yet bound in the
notifier. Once they are, then the device registration will continue.

-- 
Sakari Ailus



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux