/linux-5.19.10/drivers/staging/media/imx/ |
D | imx-media-dev.c | 25 struct imx_media_dev *imxmd = notifier2dev(notifier); in imx_media_subdev_bound() local 30 ret = imx_media_register_ipu_internal_subdevs(imxmd, sd); in imx_media_subdev_bound() 35 dev_dbg(imxmd->md.dev, "subdev %s bound\n", sd->name); in imx_media_subdev_bound() 43 struct imx_media_dev *imxmd = notifier2dev(notifier); in imx6_media_probe_complete() local 51 mutex_lock(&imxmd->mutex); in imx6_media_probe_complete() 53 imxmd->m2m_vdev = imx_media_csc_scaler_device_init(imxmd); in imx6_media_probe_complete() 54 if (IS_ERR(imxmd->m2m_vdev)) { in imx6_media_probe_complete() 55 ret = PTR_ERR(imxmd->m2m_vdev); in imx6_media_probe_complete() 56 imxmd->m2m_vdev = NULL; in imx6_media_probe_complete() 60 ret = imx_media_csc_scaler_device_register(imxmd->m2m_vdev); in imx6_media_probe_complete() [all …]
|
D | imx-media-dev-common.c | 27 struct imx_media_dev *imxmd = notifier2dev(notifier); in imx_media_subdev_bound() local 29 dev_dbg(imxmd->md.dev, "subdev %s bound\n", sd->name); in imx_media_subdev_bound() 38 static void imx_media_create_csi2_links(struct imx_media_dev *imxmd) in imx_media_create_csi2_links() argument 42 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_create_csi2_links() 51 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_create_csi2_links() 66 static int imx_media_add_vdev_to_pad(struct imx_media_dev *imxmd, in imx_media_add_vdev_to_pad() argument 85 v4l2_warn(&imxmd->v4l2_dev, "%s:%u has no vdev list!\n", in imx_media_add_vdev_to_pad() 100 dev_dbg(imxmd->md.dev, "adding %s to pad %s:%u\n", in imx_media_add_vdev_to_pad() 103 pad_vdev = devm_kzalloc(imxmd->md.dev, sizeof(*pad_vdev), GFP_KERNEL); in imx_media_add_vdev_to_pad() 121 ret = imx_media_add_vdev_to_pad(imxmd, vdev, in imx_media_add_vdev_to_pad() [all …]
|
D | imx-media-internal-sd.c | 133 static int create_internal_link(struct imx_media_dev *imxmd, in create_internal_link() argument 145 dev_dbg(imxmd->md.dev, "%s:%d -> %s:%d\n", in create_internal_link() 152 v4l2_err(&imxmd->v4l2_dev, "%s failed: %d\n", __func__, ret); in create_internal_link() 157 static int create_ipu_internal_links(struct imx_media_dev *imxmd, in create_ipu_internal_links() argument 179 sink = imxmd->sync_sd[ipu_id][link->remote]; in create_ipu_internal_links() 181 ret = create_internal_link(imxmd, sd, sink, link); in create_ipu_internal_links() 190 int imx_media_register_ipu_internal_subdevs(struct imx_media_dev *imxmd, in imx_media_register_ipu_internal_subdevs() argument 201 v4l2_err(&imxmd->v4l2_dev, "invalid IPU device!\n"); in imx_media_register_ipu_internal_subdevs() 207 v4l2_err(&imxmd->v4l2_dev, "invalid IPU id %d!\n", ipu_id); in imx_media_register_ipu_internal_subdevs() 211 mutex_lock(&imxmd->mutex); in imx_media_register_ipu_internal_subdevs() [all …]
|
D | imx-media-of.c | 19 int imx_media_of_add_csi(struct imx_media_dev *imxmd, in imx_media_of_add_csi() argument 26 dev_dbg(imxmd->md.dev, "%s: %pOFn not enabled\n", __func__, in imx_media_of_add_csi() 32 asd = v4l2_async_nf_add_fwnode(&imxmd->notifier, in imx_media_of_add_csi() 38 dev_dbg(imxmd->md.dev, "%s: already added %pOFn\n", in imx_media_of_add_csi() 46 int imx_media_add_of_subdevs(struct imx_media_dev *imxmd, in imx_media_add_of_subdevs() argument 57 ret = imx_media_of_add_csi(imxmd, csi_np); in imx_media_add_of_subdevs()
|
D | imx-media.h | 205 imx_media_find_subdev_by_fwnode(struct imx_media_dev *imxmd, 208 imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd, 210 void imx_media_add_video_device(struct imx_media_dev *imxmd, 236 int imx_media_pipeline_set_stream(struct imx_media_dev *imxmd, 244 int imx_media_dev_notifier_register(struct imx_media_dev *imxmd, 258 int imx_media_register_ipu_internal_subdevs(struct imx_media_dev *imxmd, 260 void imx_media_unregister_ipu_internal_subdevs(struct imx_media_dev *imxmd); 265 int imx_media_of_add_csi(struct imx_media_dev *imxmd,
|
D | imx7-media-csi.c | 172 struct imx_media_dev *imxmd; member 1182 struct imx_media_dev *imxmd; in imx7_csi_probe() local 1221 imxmd = imx_media_dev_init(dev, NULL); in imx7_csi_probe() 1222 if (IS_ERR(imxmd)) { in imx7_csi_probe() 1223 ret = PTR_ERR(imxmd); in imx7_csi_probe() 1228 ret = imx_media_of_add_csi(imxmd, node); in imx7_csi_probe() 1232 ret = imx_media_dev_notifier_register(imxmd, NULL); in imx7_csi_probe() 1236 csi->imxmd = imxmd; in imx7_csi_probe() 1268 v4l2_async_nf_unregister(&imxmd->notifier); in imx7_csi_probe() 1269 v4l2_async_nf_cleanup(&imxmd->notifier); in imx7_csi_probe() [all …]
|
D | imx-media-utils.c | 630 imx_media_find_subdev_by_fwnode(struct imx_media_dev *imxmd, in imx_media_find_subdev_by_fwnode() argument 635 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_find_subdev_by_fwnode() 645 imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd, in imx_media_find_subdev_by_devname() argument 650 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_find_subdev_by_devname() 663 void imx_media_add_video_device(struct imx_media_dev *imxmd, in imx_media_add_video_device() argument 666 mutex_lock(&imxmd->mutex); in imx_media_add_video_device() 668 list_add_tail(&vdev->list, &imxmd->vdev_list); in imx_media_add_video_device() 670 mutex_unlock(&imxmd->mutex); in imx_media_add_video_device() 852 int imx_media_pipeline_set_stream(struct imx_media_dev *imxmd, in imx_media_pipeline_set_stream() argument 863 mutex_lock(&imxmd->md.graph_mutex); in imx_media_pipeline_set_stream() [all …]
|