Home
last modified time | relevance | path

Searched refs:imxmd (Results 1 – 7 of 7) sorted by relevance

/Linux-v5.10/drivers/staging/media/imx/
Dimx-media-dev.c25 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()
59 ret = imx_media_csc_scaler_device_register(imxmd->m2m_vdev); in imx6_media_probe_complete()
61 mutex_unlock(&imxmd->mutex); in imx6_media_probe_complete()
[all …]
Dimx-media-dev-common.c27 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 …]
Dimx-media-internal-sd.c133 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 …]
Dimx-media-of.c19 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_notifier_add_fwnode_subdev(&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()
Dimx-media.h206 imx_media_find_subdev_by_fwnode(struct imx_media_dev *imxmd,
209 imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd,
211 void imx_media_add_video_device(struct imx_media_dev *imxmd,
237 int imx_media_pipeline_set_stream(struct imx_media_dev *imxmd,
245 int imx_media_dev_notifier_register(struct imx_media_dev *imxmd,
259 int imx_media_register_ipu_internal_subdevs(struct imx_media_dev *imxmd,
261 void imx_media_unregister_ipu_internal_subdevs(struct imx_media_dev *imxmd);
266 int imx_media_of_add_csi(struct imx_media_dev *imxmd,
Dimx7-media-csi.c160 struct imx_media_dev *imxmd; member
1224 struct imx_media_dev *imxmd; in imx7_csi_probe() local
1261 imxmd = imx_media_dev_init(dev, NULL); in imx7_csi_probe()
1262 if (IS_ERR(imxmd)) { in imx7_csi_probe()
1263 ret = PTR_ERR(imxmd); in imx7_csi_probe()
1268 ret = imx_media_of_add_csi(imxmd, node); in imx7_csi_probe()
1272 ret = imx_media_dev_notifier_register(imxmd, NULL); in imx7_csi_probe()
1276 csi->imxmd = imxmd; in imx7_csi_probe()
1314 v4l2_async_notifier_unregister(&imxmd->notifier); in imx7_csi_probe()
1315 v4l2_async_notifier_cleanup(&imxmd->notifier); in imx7_csi_probe()
[all …]
Dimx-media-utils.c651 imx_media_find_subdev_by_fwnode(struct imx_media_dev *imxmd, in imx_media_find_subdev_by_fwnode() argument
656 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_find_subdev_by_fwnode()
666 imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd, in imx_media_find_subdev_by_devname() argument
671 list_for_each_entry(sd, &imxmd->v4l2_dev.subdevs, list) { in imx_media_find_subdev_by_devname()
684 void imx_media_add_video_device(struct imx_media_dev *imxmd, in imx_media_add_video_device() argument
687 mutex_lock(&imxmd->mutex); in imx_media_add_video_device()
689 list_add_tail(&vdev->list, &imxmd->vdev_list); in imx_media_add_video_device()
691 mutex_unlock(&imxmd->mutex); in imx_media_add_video_device()
873 int imx_media_pipeline_set_stream(struct imx_media_dev *imxmd, in imx_media_pipeline_set_stream() argument
884 mutex_lock(&imxmd->md.graph_mutex); in imx_media_pipeline_set_stream()
[all …]