From: Steve Longerbeam <slongerbeam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Russell King - ARM Linux
<linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
Laurent Pinchart
<laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>,
Hans Verkuil <hverkuil-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>,
Mauro Carvalho Chehab
<mchehab-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: mark.rutland-5wv7dgnIgG8@public.gmane.org,
andrew-ct.chen-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org,
minghsiu.tsai-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org,
sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org,
nick-gcszYUEDH4VrovVCs/uTlw@public.gmane.org,
songjun.wu-UWL1GkI3JZL3oGB3hsPCZA@public.gmane.org,
pavel-+ZI9xUNit7I@public.gmane.org,
robert.jarzmik-GANU6spQydw@public.gmane.org,
devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b@public.gmane.org,
markus.heiser-O6JHGLzbNUwb1SvskN2V4Q@public.gmane.org,
Steve Longerbeam
<steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>,
shuah-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org,
linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
arnd-r2nGTMty4D4@public.gmane.org,
tiffany.lin-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org,
bparrot-l0cyMroinI0@public.gmane.org,
robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
horms+renesas-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org,
mchehab-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
niklas.soderlund+renesas-1zkq55x86MTxsAP9Fp7wbw@public.gmane.org,
gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
jean-christophe.trotin-qxv4g6HH51o@public.gmane.org,
p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, fabio.este
Subject: Re: [PATCH v4 20/36] media: imx: Add CSI subdev driver
Date: Thu, 16 Feb 2017 11:07:16 -0800 [thread overview]
Message-ID: <925f444d-e5b0-7c5b-b5d0-6b66b8045c2d@gmail.com> (raw)
In-Reply-To: <20170216142028.GP27312-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
On 02/16/2017 06:20 AM, Russell King - ARM Linux wrote:
> On Thu, Feb 16, 2017 at 01:09:35PM +0000, Russell King - ARM Linux wrote:
>>
>> <snip>
>> More crap.
>>
>> If the "complete" method fails (or, in fact, anything in
>> v4l2_async_test_notify() fails) then all hell breaks loose, because
>> of the total lack of clean up (and no, this isn't anything to do with
>> some stupid justification of those BUG_ON()s above.)
>>
>> v4l2_async_notifier_register() gets called, it adds the notifier to
>> the global notifier list. v4l2_async_test_notify() gets called. It
>> returns an error, which is propagated out of
>> v4l2_async_notifier_register().
>>
>> So the caller thinks that v4l2_async_notifier_register() failed, which
>> will cause imx_media_probe() to fail, causing imxmd->subdev_notifier
>> to be kfree()'d. We now have a use-after free bug.
>>
>> Second case. v4l2_async_register_subdev(). Almost exactly the same,
>> except in this case adding sd->async_list to the notifier->done list
>> may have succeeded, and failure after that, again, results in an
>> in-use list_head being kfree()'d.
>
> And here's a patch which, combined with the fixes for ipuv3, results in
> everything appearing to work properly. Feel free to tear out the bits
> for your area and turn them into proper patches.
>
> drivers/gpu/ipu-v3/ipu-common.c | 6 ---
> drivers/media/media-entity.c | 7 +--
> drivers/media/v4l2-core/v4l2-async.c | 71 +++++++++++++++++++++++--------
> drivers/staging/media/imx/imx-media-csi.c | 1 +
> drivers/staging/media/imx/imx-media-dev.c | 2 +-
> 5 files changed, 59 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/ipu-v3/ipu-common.c b/drivers/gpu/ipu-v3/ipu-common.c
> index 97218af4fe75..8368e6f766ee 100644
> --- a/drivers/gpu/ipu-v3/ipu-common.c
> +++ b/drivers/gpu/ipu-v3/ipu-common.c
> @@ -1238,12 +1238,6 @@ static int ipu_add_client_devices(struct ipu_soc *ipu, unsigned long ipu_base)
> platform_device_put(pdev);
> goto err_register;
> }
> -
> - /*
> - * Set of_node only after calling platform_device_add. Otherwise
> - * the platform:imx-ipuv3-crtc modalias won't be used.
> - */
> - pdev->dev.of_node = of_node;
> }
Ah, never mind my question earlier, I see now why the CSI's were likely
not recognized, probably because of this. Anyway I agree with this
change and I made the accompanying requisite change to imx-media-csi.c
and imx-media-dev.c below.
Steve
>
> return 0;
> diff --git a/drivers/media/media-entity.c b/drivers/media/media-entity.c
> index f9f723f5e4f0..154593a168df 100644
> --- a/drivers/media/media-entity.c
> +++ b/drivers/media/media-entity.c
> @@ -625,9 +625,10 @@ media_create_pad_link(struct media_entity *source, u16 source_pad,
> struct media_link *link;
> struct media_link *backlink;
>
> - BUG_ON(source == NULL || sink == NULL);
> - BUG_ON(source_pad >= source->num_pads);
> - BUG_ON(sink_pad >= sink->num_pads);
> + if (WARN_ON(source == NULL || sink == NULL) ||
> + WARN_ON(source_pad >= source->num_pads) ||
> + WARN_ON(sink_pad >= sink->num_pads))
> + return -EINVAL;
>
> link = media_add_link(&source->links);
> if (link == NULL)
> diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c
> index 5bada202b2d3..09934fb96a8d 100644
> --- a/drivers/media/v4l2-core/v4l2-async.c
> +++ b/drivers/media/v4l2-core/v4l2-async.c
> @@ -94,7 +94,7 @@ static struct v4l2_async_subdev *v4l2_async_belongs(struct v4l2_async_notifier *
> }
>
> static int v4l2_async_test_notify(struct v4l2_async_notifier *notifier,
> - struct v4l2_subdev *sd,
> + struct list_head *new, struct v4l2_subdev *sd,
> struct v4l2_async_subdev *asd)
> {
> int ret;
> @@ -107,22 +107,36 @@ static int v4l2_async_test_notify(struct v4l2_async_notifier *notifier,
> if (notifier->bound) {
> ret = notifier->bound(notifier, sd, asd);
> if (ret < 0)
> - return ret;
> + goto err_bind;
> }
> +
> /* Move from the global subdevice list to notifier's done */
> - list_move(&sd->async_list, ¬ifier->done);
> + list_move(&sd->async_list, new);
>
> ret = v4l2_device_register_subdev(notifier->v4l2_dev, sd);
> - if (ret < 0) {
> - if (notifier->unbind)
> - notifier->unbind(notifier, sd, asd);
> - return ret;
> - }
> + if (ret < 0)
> + goto err_register;
>
> - if (list_empty(¬ifier->waiting) && notifier->complete)
> - return notifier->complete(notifier);
> + if (list_empty(¬ifier->waiting) && notifier->complete) {
> + ret = notifier->complete(notifier);
> + if (ret < 0)
> + goto err_complete;
> + }
>
> return 0;
> +
> +err_complete:
> + v4l2_device_unregister_subdev(sd);
> +err_register:
> + if (notifier->unbind)
> + notifier->unbind(notifier, sd, asd);
> +err_bind:
> + sd->notifier = NULL;
> + sd->asd = NULL;
> + list_add(&asd->list, ¬ifier->waiting);
> + /* always take this off the list on error */
> + list_del(&sd->async_list);
> + return ret;
> }
>
> static void v4l2_async_cleanup(struct v4l2_subdev *sd)
> @@ -139,7 +153,8 @@ int v4l2_async_notifier_register(struct v4l2_device *v4l2_dev,
> {
> struct v4l2_subdev *sd, *tmp;
> struct v4l2_async_subdev *asd;
> - int i;
> + LIST_HEAD(new);
> + int ret, i;
>
> if (!notifier->num_subdevs || notifier->num_subdevs > V4L2_MAX_SUBDEVS)
> return -EINVAL;
> @@ -172,22 +187,39 @@ int v4l2_async_notifier_register(struct v4l2_device *v4l2_dev,
> list_add(¬ifier->list, ¬ifier_list);
>
> list_for_each_entry_safe(sd, tmp, &subdev_list, async_list) {
> - int ret;
> -
> asd = v4l2_async_belongs(notifier, sd);
> if (!asd)
> continue;
>
> - ret = v4l2_async_test_notify(notifier, sd, asd);
> + ret = v4l2_async_test_notify(notifier, &new, sd, asd);
> if (ret < 0) {
> - mutex_unlock(&list_lock);
> - return ret;
> + /*
> + * On failure, v4l2_async_test_notify() takes the
> + * sd off the subdev list. Add it back.
> + */
> + list_add(&sd->async_list, &subdev_list);
> + goto err_notify;
> }
> }
>
> + list_splice(&new, ¬ifier->done);
> +
> mutex_unlock(&list_lock);
>
> return 0;
> +
> +err_notify:
> + list_del(¬ifier->list);
> + list_for_each_entry_safe(sd, tmp, &new, async_list) {
> + v4l2_device_unregister_subdev(sd);
> + list_move(&sd->async_list, &subdev_list);
> + if (notifier->unbind)
> + notifier->unbind(notifier, sd, sd->asd);
> + sd->notifier = NULL;
> + sd->asd = NULL;
> + }
> + mutex_unlock(&list_lock);
> + return ret;
> }
> EXPORT_SYMBOL(v4l2_async_notifier_register);
>
> @@ -213,6 +245,7 @@ void v4l2_async_notifier_unregister(struct v4l2_async_notifier *notifier)
> list_del(¬ifier->list);
>
> list_for_each_entry_safe(sd, tmp, ¬ifier->done, async_list) {
> + struct v4l2_async_subdev *asd = sd->asd;
> struct device *d;
>
> d = get_device(sd->dev);
> @@ -223,7 +256,7 @@ void v4l2_async_notifier_unregister(struct v4l2_async_notifier *notifier)
> device_release_driver(d);
>
> if (notifier->unbind)
> - notifier->unbind(notifier, sd, sd->asd);
> + notifier->unbind(notifier, sd, asd);
>
> /*
> * Store device at the device cache, in order to call
> @@ -288,7 +321,9 @@ int v4l2_async_register_subdev(struct v4l2_subdev *sd)
> list_for_each_entry(notifier, ¬ifier_list, list) {
> struct v4l2_async_subdev *asd = v4l2_async_belongs(notifier, sd);
> if (asd) {
> - int ret = v4l2_async_test_notify(notifier, sd, asd);
> + int ret = v4l2_async_test_notify(notifier,
> + ¬ifier->done,
> + sd, asd);
> mutex_unlock(&list_lock);
> return ret;
> }
> diff --git a/drivers/staging/media/imx/imx-media-csi.c b/drivers/staging/media/imx/imx-media-csi.c
> index 9d9ec03436e4..507026feee91 100644
> --- a/drivers/staging/media/imx/imx-media-csi.c
> +++ b/drivers/staging/media/imx/imx-media-csi.c
> @@ -1427,6 +1427,7 @@ static int imx_csi_probe(struct platform_device *pdev)
> priv->sd.entity.ops = &csi_entity_ops;
> priv->sd.entity.function = MEDIA_ENT_F_PROC_VIDEO_PIXEL_FORMATTER;
> priv->sd.dev = &pdev->dev;
> + priv->sd.of_node = pdata->of_node;
> priv->sd.owner = THIS_MODULE;
> priv->sd.flags = V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS;
> priv->sd.grp_id = priv->csi_id ?
> diff --git a/drivers/staging/media/imx/imx-media-dev.c b/drivers/staging/media/imx/imx-media-dev.c
> index 60f45fe4b506..5b4dfc1fb6ab 100644
> --- a/drivers/staging/media/imx/imx-media-dev.c
> +++ b/drivers/staging/media/imx/imx-media-dev.c
> @@ -197,7 +197,7 @@ static int imx_media_subdev_bound(struct v4l2_async_notifier *notifier,
> struct imx_media_subdev *imxsd;
> int ret = -EINVAL;
>
> - imxsd = imx_media_find_async_subdev(imxmd, sd->dev->of_node,
> + imxsd = imx_media_find_async_subdev(imxmd, sd->of_node,
> dev_name(sd->dev));
> if (!imxsd)
> goto out;
>
>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-02-16 19:07 UTC|newest]
Thread overview: 229+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-16 2:19 [PATCH v4 00/36] i.MX Media Driver Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 01/36] [media] dt-bindings: Add bindings for i.MX media driver Steve Longerbeam
2017-02-16 11:54 ` Philipp Zabel
[not found] ` <1487246051.2377.41.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2017-02-16 19:20 ` Steve Longerbeam
2017-02-27 14:38 ` Rob Herring
2017-03-01 0:00 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 02/36] ARM: dts: imx6qdl: Add compatible, clocks, irqs to MIPI CSI-2 node Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 03/36] ARM: dts: imx6qdl: Add mipi_ipu1/2 multiplexers, mipi_csi, and their connections Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 04/36] ARM: dts: imx6qdl: add capture-subsystem device Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 05/36] ARM: dts: imx6qdl-sabrelite: remove erratum ERR006687 workaround Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 06/36] ARM: dts: imx6-sabrelite: add OV5642 and OV5640 camera sensors Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 07/36] ARM: dts: imx6-sabresd: " Steve Longerbeam
2017-02-17 0:51 ` Fabio Estevam
2017-02-17 0:56 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 08/36] ARM: dts: imx6-sabreauto: create i2cmux for i2c3 Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 09/36] ARM: dts: imx6-sabreauto: add reset-gpios property for max7310_b Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 10/36] ARM: dts: imx6-sabreauto: add pinctrl for gpt input capture Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 11/36] ARM: dts: imx6-sabreauto: add the ADV7180 video decoder Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 12/36] add mux and video interface bridge entity functions Steve Longerbeam
2017-02-19 21:28 ` Pavel Machek
2017-02-22 17:19 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 13/36] [media] v4l2: add a frame timeout event Steve Longerbeam
2017-03-02 15:53 ` Sakari Ailus
2017-03-02 23:07 ` Steve Longerbeam
2017-03-03 11:45 ` Sakari Ailus
2017-03-03 22:43 ` Steve Longerbeam
[not found] ` <59663ea1-b277-1543-e770-6a102ac733a4-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-04 10:56 ` Sakari Ailus
2017-03-05 0:37 ` Steve Longerbeam
2017-03-05 21:31 ` Sakari Ailus
2017-03-05 22:41 ` Russell King - ARM Linux
2017-03-10 2:38 ` Steve Longerbeam
2017-03-10 9:33 ` Russell King - ARM Linux
2017-02-16 2:19 ` [PATCH v4 14/36] [media] v4l2-mc: add a function to inherit controls from a pipeline Steve Longerbeam
2017-02-19 21:44 ` Pavel Machek
2017-03-02 16:02 ` Sakari Ailus
2017-03-02 23:48 ` Steve Longerbeam
2017-03-03 0:46 ` Steve Longerbeam
2017-03-03 2:12 ` Steve Longerbeam
2017-03-03 19:17 ` Sakari Ailus
2017-03-03 22:47 ` Steve Longerbeam
2017-03-03 23:06 ` Russell King - ARM Linux
2017-03-04 0:36 ` Steve Longerbeam
[not found] ` <20170303230645.GR21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-04 13:13 ` Sakari Ailus
2017-03-10 12:54 ` Hans Verkuil
2017-03-10 13:07 ` Russell King - ARM Linux
2017-03-10 13:22 ` Hans Verkuil
2017-03-10 14:01 ` Russell King - ARM Linux
2017-03-10 14:20 ` Hans Verkuil
2017-03-10 15:53 ` Mauro Carvalho Chehab
[not found] ` <20170310125342.7f047acf-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-10 22:37 ` Sakari Ailus
2017-03-11 11:25 ` Mauro Carvalho Chehab
2017-03-11 21:52 ` Pavel Machek
[not found] ` <20170311082549.576531d0-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-11 23:14 ` Russell King - ARM Linux
2017-03-12 0:19 ` Steve Longerbeam
[not found] ` <20170311231456.GH21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-12 21:29 ` Pavel Machek
2017-03-12 22:37 ` Mauro Carvalho Chehab
[not found] ` <20170312193745.636df0bf-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-14 18:26 ` Pavel Machek
2017-03-26 16:41 ` Laurent Pinchart
2017-03-13 12:46 ` Sakari Ailus
2017-03-14 3:45 ` Mauro Carvalho Chehab
2017-03-14 7:55 ` Hans Verkuil
2017-03-14 10:21 ` Mauro Carvalho Chehab
[not found] ` <20170314072143.498cde9b-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-14 22:32 ` media / v4l2-mc: wishlist for complex cameras (was Re: [PATCH v4 14/36] [media] v4l2-mc: add a function to inherit controls from a pipeline) Pavel Machek
2017-03-15 0:54 ` Mauro Carvalho Chehab
2017-03-15 10:50 ` Philippe De Muyter
2017-03-15 18:55 ` Nicolas Dufresne
[not found] ` <1489604109.4593.4.camel-dDhyB4GVkw9AFePFGvp55w@public.gmane.org>
2017-03-16 9:26 ` Philipp Zabel
2017-03-16 9:47 ` Philippe De Muyter
2017-03-16 10:01 ` Philipp Zabel
2017-03-16 10:19 ` Philippe De Muyter
2017-03-15 18:04 ` Pavel Machek
2017-03-15 20:26 ` Mauro Carvalho Chehab
2017-03-16 22:11 ` Pavel Machek
2017-03-20 13:24 ` [PATCH v4 14/36] [media] v4l2-mc: add a function to inherit controls from a pipeline Hans Verkuil
2017-03-20 15:39 ` Mauro Carvalho Chehab
2017-03-20 16:10 ` Russell King - ARM Linux
[not found] ` <20170320161003.GO21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-20 17:37 ` Mauro Carvalho Chehab
[not found] ` <e0a6c60b-1735-de0b-21f4-d8c3f4b3f10f-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2017-03-17 11:42 ` Russell King - ARM Linux
2017-03-17 11:55 ` Sakari Ailus
2017-03-17 13:24 ` Mauro Carvalho Chehab
[not found] ` <20170317102410.18c966ae-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-17 13:51 ` Philipp Zabel
2017-03-17 14:37 ` Russell King - ARM Linux
2017-03-20 13:10 ` Hans Verkuil
2017-03-20 15:06 ` Mauro Carvalho Chehab
2017-03-21 11:11 ` Pavel Machek
2017-03-20 11:16 ` Hans Verkuil
2017-03-17 12:02 ` Philipp Zabel
2017-03-17 12:16 ` Russell King - ARM Linux
2017-03-17 17:49 ` Mauro Carvalho Chehab
2017-03-19 13:25 ` Pavel Machek
2017-03-26 16:44 ` Laurent Pinchart
2017-03-10 15:26 ` Mauro Carvalho Chehab
2017-03-10 15:57 ` Russell King - ARM Linux
2017-03-10 17:06 ` Russell King - ARM Linux
2017-03-10 20:42 ` Mauro Carvalho Chehab
2017-03-10 21:55 ` Pavel Machek
2017-03-10 15:09 ` Mauro Carvalho Chehab
[not found] ` <20170310120902.1daebc7b-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-11 11:32 ` Hans Verkuil
2017-03-11 13:14 ` Mauro Carvalho Chehab
[not found] ` <20170311101408.272a9187-ch4gOOMV7nf/PtFMR13I2A@public.gmane.org>
2017-03-11 15:32 ` Sakari Ailus
2017-03-11 17:32 ` Russell King - ARM Linux
[not found] ` <20170311153229.yrdjmggb3p2suhdw-5TBSa+ebGXJ82hYKe6nXyg@public.gmane.org>
2017-03-11 18:08 ` Steve Longerbeam
2017-03-11 18:45 ` Russell King - ARM Linux
[not found] ` <20170311184551.GD21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-11 18:54 ` Steve Longerbeam
2017-03-11 18:59 ` Russell King - ARM Linux
[not found] ` <20170311185959.GF21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-11 19:06 ` Steve Longerbeam
2017-03-11 20:41 ` Russell King - ARM Linux
2017-03-12 3:31 ` Steve Longerbeam
2017-03-12 7:37 ` Russell King - ARM Linux
[not found] ` <20170312073745.GI21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-12 17:56 ` Steve Longerbeam
[not found] ` <fba73c10-4b95-f0d2-e681-0b14ef1fbc1c-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-12 21:58 ` Mauro Carvalho Chehab
2017-03-26 9:12 ` script to setup pipeline was " Pavel Machek
2017-03-13 10:44 ` Hans Verkuil
2017-03-13 10:58 ` Russell King - ARM Linux
2017-03-13 11:08 ` Hans Verkuil
2017-03-13 11:42 ` Mauro Carvalho Chehab
2017-03-13 12:35 ` Russell King - ARM Linux
2017-03-12 18:14 ` Pavel Machek
2017-03-11 20:26 ` Pavel Machek
2017-03-11 20:33 ` Steve Longerbeam
2017-03-11 21:30 ` Pavel Machek
2017-02-16 2:19 ` [PATCH v4 15/36] platform: add video-multiplexer subdevice driver Steve Longerbeam
2017-02-19 22:02 ` Pavel Machek
2017-02-21 9:11 ` Philipp Zabel
[not found] ` <1487668265.2331.23.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2017-02-24 20:09 ` Pavel Machek
2017-02-27 14:41 ` Rob Herring
2017-03-01 0:20 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 16/36] UAPI: Add media UAPI Kbuild file Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 17/36] media: Add userspace header file for i.MX Steve Longerbeam
[not found] ` <1487211578-11360-18-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 11:33 ` Philipp Zabel
[not found] ` <1487244825.2377.39.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2017-02-22 23:54 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 18/36] media: Add i.MX media core driver Steve Longerbeam
[not found] ` <1487211578-11360-19-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 10:27 ` Russell King - ARM Linux
2017-02-16 17:53 ` Steve Longerbeam
2017-02-16 13:02 ` Philipp Zabel
2017-02-16 13:44 ` Russell King - ARM Linux
[not found] ` <1487250123.2377.53.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2017-02-17 1:33 ` Steve Longerbeam
[not found] ` <c22dfd68-a41c-08d2-4b8d-c7ee1884ea31-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-17 8:34 ` Philipp Zabel
2017-02-16 2:19 ` [PATCH v4 19/36] media: imx: Add Capture Device Interface Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 21/36] media: imx: Add VDIC subdev driver Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 22/36] media: imx: Add IC subdev drivers Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 24/36] [media] add Omnivision OV5640 sensor driver Steve Longerbeam
2017-02-27 14:45 ` Rob Herring
2017-03-01 0:43 ` Steve Longerbeam
[not found] ` <1487211578-11360-1-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 2:19 ` [PATCH v4 20/36] media: imx: Add CSI subdev driver Steve Longerbeam
[not found] ` <1487211578-11360-21-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 11:52 ` Russell King - ARM Linux
2017-02-16 12:40 ` Russell King - ARM Linux
2017-02-16 13:09 ` Russell King - ARM Linux
2017-02-16 14:20 ` Russell King - ARM Linux
[not found] ` <20170216142028.GP27312-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-16 19:07 ` Steve Longerbeam [this message]
2017-02-16 18:44 ` Steve Longerbeam
2017-02-16 19:09 ` Russell King - ARM Linux
2017-02-16 2:19 ` [PATCH v4 23/36] media: imx: Add MIPI CSI-2 Receiver " Steve Longerbeam
[not found] ` <1487211578-11360-24-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 10:28 ` Russell King - ARM Linux
2017-02-16 17:54 ` Steve Longerbeam
2017-02-17 10:47 ` Philipp Zabel
[not found] ` <1487328479.3107.21.camel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2017-02-17 11:06 ` Russell King - ARM Linux
[not found] ` <20170217110616.GD21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-17 11:38 ` Philipp Zabel
2017-02-22 23:38 ` Steve Longerbeam
2017-02-22 23:41 ` Steve Longerbeam
2017-02-23 0:06 ` Steve Longerbeam
2017-02-23 0:09 ` Steve Longerbeam
2017-02-17 14:16 ` Philipp Zabel
2017-02-17 18:27 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 25/36] ARM: imx_v6_v7_defconfig: Enable staging video4linux drivers Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 26/36] media: imx: add support for bayer formats Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 27/36] media: imx: csi: " Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 28/36] media: imx: csi: fix crop rectangle changes in set_fmt Steve Longerbeam
2017-02-16 11:05 ` Russell King - ARM Linux
2017-02-16 18:16 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 32/36] media: imx: csi/fim: add support for frame intervals Steve Longerbeam
2017-02-16 2:38 ` Steve Longerbeam
2017-02-16 11:37 ` [PATCH v4 00/36] i.MX Media Driver Russell King - ARM Linux
2017-02-16 18:30 ` Steve Longerbeam
2017-02-16 22:20 ` Russell King - ARM Linux
[not found] ` <20170216222006.GA21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-16 22:27 ` Steve Longerbeam
[not found] ` <923326d6-43fe-7328-d959-14fd341e47ae-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-16 22:57 ` Russell King - ARM Linux
2017-02-17 10:39 ` Philipp Zabel
2017-02-17 10:56 ` Russell King - ARM Linux
[not found] ` <20170217105624.GC21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-17 11:21 ` Philipp Zabel
2017-02-18 17:21 ` Steve Longerbeam
2017-02-17 11:43 ` Philipp Zabel
2017-02-17 12:22 ` Sakari Ailus
[not found] ` <20170217122213.GQ16975-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-02-17 12:31 ` Russell King - ARM Linux
2017-02-17 15:04 ` Philipp Zabel
2017-02-18 11:58 ` Sakari Ailus
2017-02-16 2:19 ` [PATCH v4 29/36] media: imx: mipi-csi2: enable setting and getting of frame rates Steve Longerbeam
2017-02-18 1:11 ` Steve Longerbeam
[not found] ` <1487211578-11360-30-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-18 1:12 ` Steve Longerbeam
2017-02-18 9:23 ` Russell King - ARM Linux
2017-02-18 17:29 ` Steve Longerbeam
2017-02-18 18:08 ` Russell King - ARM Linux
2017-02-20 22:04 ` Sakari Ailus
2017-02-20 22:56 ` Steve Longerbeam
[not found] ` <6892fb15-2d18-4898-c328-3acff9d6cc39-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-20 23:47 ` Steve Longerbeam
2017-02-21 12:15 ` Sakari Ailus
2017-02-21 22:21 ` Steve Longerbeam
2017-02-21 23:34 ` Steve Longerbeam
[not found] ` <20170220220409.GX16975-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-02-21 0:13 ` Russell King - ARM Linux
2017-02-21 0:18 ` Steve Longerbeam
[not found] ` <25596b21-70de-5e46-f149-f9ce3a86ecb7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-21 8:50 ` Philipp Zabel
2017-03-13 13:16 ` Sakari Ailus
2017-03-13 13:27 ` Russell King - ARM Linux
[not found] ` <20170313132701.GJ21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-03-13 13:55 ` Philipp Zabel
2017-03-13 18:06 ` Steve Longerbeam
[not found] ` <27397114-7d77-2353-c526-bddd5f5297d9-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-13 21:03 ` Sakari Ailus
[not found] ` <20170313210349.GD10701-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-03-13 21:29 ` Russell King - ARM Linux
2017-03-14 7:34 ` Hans Verkuil
[not found] ` <4ed15eae-b6c6-55f7-1c6c-9ea84466ed71-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2017-03-14 10:43 ` Philipp Zabel
2017-03-13 20:56 ` Sakari Ailus
2017-03-13 21:07 ` Russell King - ARM Linux
[not found] ` <20170221001332.GS21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-21 12:37 ` Sakari Ailus
[not found] ` <20170221123756.GI16975-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-02-21 13:21 ` Russell King - ARM Linux
[not found] ` <20170221132132.GU21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-21 15:38 ` Sakari Ailus
[not found] ` <20170221153834.GL16975-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-02-21 16:03 ` Russell King - ARM Linux
[not found] ` <20170221160332.GW21222-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2017-02-21 16:15 ` Sakari Ailus
2017-02-16 2:19 ` [PATCH v4 30/36] media: imx: update capture dev format on IDMAC output pad set_fmt Steve Longerbeam
[not found] ` <1487211578-11360-31-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 11:29 ` Philipp Zabel
2017-02-16 2:19 ` [PATCH v4 31/36] media: imx: csi: add __csi_get_fmt Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 33/36] media: imx: redo pixel format enumeration and negotiation Steve Longerbeam
[not found] ` <1487211578-11360-34-git-send-email-steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org>
2017-02-16 11:32 ` Philipp Zabel
2017-02-22 23:52 ` Steve Longerbeam
2017-02-23 9:10 ` Philipp Zabel
2017-02-24 1:30 ` Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 34/36] media: imx: csi: add frame skipping support Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 35/36] media: imx: csi: fix crop rectangle reset in sink set_fmt Steve Longerbeam
2017-02-16 2:19 ` [PATCH v4 36/36] media: imx: propagate sink pad formats to source pads Steve Longerbeam
2017-02-16 11:29 ` Philipp Zabel
2017-02-16 18:19 ` Steve Longerbeam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=925f444d-e5b0-7c5b-b5d0-6b66b8045c2d@gmail.com \
--to=slongerbeam-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=andrew-ct.chen-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=bparrot-l0cyMroinI0@public.gmane.org \
--cc=devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=horms+renesas-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org \
--cc=hverkuil-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org \
--cc=jean-christophe.trotin-qxv4g6HH51o@public.gmane.org \
--cc=kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
--cc=laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
--cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=markus.heiser-O6JHGLzbNUwb1SvskN2V4Q@public.gmane.org \
--cc=mchehab-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=mchehab-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=minghsiu.tsai-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org \
--cc=nick-gcszYUEDH4VrovVCs/uTlw@public.gmane.org \
--cc=niklas.soderlund+renesas-1zkq55x86MTxsAP9Fp7wbw@public.gmane.org \
--cc=p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=pavel-+ZI9xUNit7I@public.gmane.org \
--cc=robert.jarzmik-GANU6spQydw@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
--cc=shuah-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=songjun.wu-UWL1GkI3JZL3oGB3hsPCZA@public.gmane.org \
--cc=steve_longerbeam-nmGgyN9QBj3QT0dZR+AlfA@public.gmane.org \
--cc=tiffany.lin-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).