• Paul Kocialkowski's avatar
    media: sun6i-csi: Add support for hooking to the isp devices · 131823c4
    Paul Kocialkowski authored
    In order to use the isp and csi together, both devices need to be
    parented to the same v4l2 and media devices. We use the isp as
    top-level device and let the csi code hook to its v4l2 and media
    devices when async subdev registration takes place.
    
    As a result v4l2/media device setup is only called when the ISP
    is missing and the capture device is registered after the devices
    are hooked. The bridge subdev and its notifier are registered
    without any device when the ISP is available. Top-level pointers
    for the devices are introduced to either redirect to the hooked ones
    (isp available) or the registered ones (isp missing).
    
    Also keep track of whether the capture node was setup or not to
    avoid cleaning up resources when it wasn't.
    Signed-off-by: default avatarPaul Kocialkowski <paul.kocialkowski@bootlin.com>
    Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
    131823c4
sun6i_csi.c 10 KB