linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Adam Ford <aford173@gmail.com>
To: jacopo@jmondi.org
Cc: steve_longerbeam@mentor.com, Fabio Estevam <festevam@gmail.com>,
	Jagan Teki <jagan@amarulasolutions.com>,
	p.zabel@pengutronix.de, Fabio Estevam <fabio.estevam@nxp.com>,
	gstreamer-devel@lists.freedesktop.org,
	linux-media@vger.kernel.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: i.MX6 MIPI-CSI2 OV5640 Camera testing on Mainline Linux
Date: Wed, 24 Oct 2018 09:17:04 -0500	[thread overview]
Message-ID: <CAHCN7xKbAuTmic+L-a2o1NreSCmYBKzzvmHuUTGZtVHELFoirg@mail.gmail.com> (raw)
In-Reply-To: <20181024140820.GB3766@w540>

On Wed, Oct 24, 2018 at 9:08 AM jacopo mondi <jacopo@jmondi.org> wrote:
>
> Hi Adam,
>
> On Wed, Oct 24, 2018 at 08:53:41AM -0500, Adam Ford wrote:
> > On Tue, Oct 23, 2018 at 6:03 PM jacopo mondi <jacopo@jmondi.org> wrote:
> > >
> > > Hi Adam,
> > >
> > > On Tue, Oct 23, 2018 at 12:54:12PM -0500, Adam Ford wrote:
> > > > On Tue, Oct 23, 2018 at 12:39 PM Steve Longerbeam
> > > > <steve_longerbeam@mentor.com> wrote:
> > > > >
> > > > >
> > > > > On 10/23/18 10:34 AM, Adam Ford wrote:
> > > > > > On Tue, Oct 23, 2018 at 11:36 AM Steve Longerbeam
> > > > > > <steve_longerbeam@mentor.com> wrote:
> > > > > >> Hi Adam,
> > > > > >>
> > > > > >> On 10/23/18 8:19 AM, Adam Ford wrote:
> > > > > >>> On Mon, Oct 22, 2018 at 7:40 AM Fabio Estevam <festevam@gmail.com> wrote:
> > > > > >>>> Hi Adam,
> > > > > >>>>
> > > > > >>>> On Mon, Oct 22, 2018 at 9:37 AM Adam Ford <aford173@gmail.com> wrote:
> > > > > >>>>
> > > > > >>>>> Thank you!  This tutorial web site is exactly what I need.  The
> > > > > >>>>> documentation page in Linux touched on the media-ctl links, but it
> > > > > >>>>> didn't explain the syntax or the mapping.  This graphical
> > > > > >>>>> interpretation really helps it make more sense.
> > > > > >>>> Is capturing working well on your i.MX6 board now?
> > > > > >>> Fabio,
> > > > > >>>
> > > > > >>> Unfortunately, no.  I built the rootfs based on Jagan's instructions
> > > > > >>> at https://openedev.amarulasolutions.com/display/ODWIKI/i.CoreM6+1.5
> > > > > >>>
> > > > > >>> I tried building both the 4.15-RC6 kernel, a 4.19 kernel and a 4.14 LTS kernel.
> > > > > >>>
> > > > > >>> Using the suggested method of generating the graphical display of the
> > > > > >>> pipeline options, I am able to enable various pipeline options
> > > > > >>> connecting different /dev/videoX options tot he camera.  I have tried
> > > > > >>> both the  suggested method above as well as the instructions found in
> > > > > >>> Documentation/media/v4l-drivers/imx.rst for their respective kernels,
> > > > > >>> and I have tried multiple options to capture through
> > > > > >>> ipu1_csi1_capture, ipu2_csi1_capture, and ip1_ic_prepenc capture, and
> > > > > >>> all yield a broken pipe.
> > > > > >>>
> > > > > >>> libv4l2: error turning on stream: Broken pipe
> > > > > >>> ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Could
> > > > > >>> not read from resource.
> > > > > >>> Additional debug info:
> > > > > >>> gstv4l2bufferpool.c(1064): gst_v4l2_buffer_pool_poll ():
> > > > > >>> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
> > > > > >>> poll error 1: Broken pipe (32)
> > > > > >>>
> > > > > >>> I can hear the camera click when I start gstreamer and click again
> > > > > >>> when it stops trying to stream.
> > > > > >>>
> > > > > >>> dmesg indicates a broken pipe as well..
> > > > > >>>
> > > > > >>> [ 2419.851502] ipu2_csi1: pipeline start failed with -32
> > > > > >>>
> > > > > >>> might you have any suggestions?
> > > > > >>
> > > > > >> This -EPIPE error might mean you have a mis-match of resolution, pixel
> > > > > >> format, or field type between one of the source->sink pad links. You can
> > > > > >> find out which pads have a mis-match by enabling dynamic debug in the
> > > > > >> kernel function __media_pipeline_start.
> > > > > > Following Jagan's suggestion, I tried to make sure all the resolution
> > > > > > and pixel formats were set the same between each source and sink.
> > > > > >
> > > > > > media-ctl --set-v4l2 "'ov5640 2-0010':0[fmt:UYVY2X8/640x480
> > > > > > field:none]"
> > > > > > media-ctl --set-v4l2 "'imx6-mipi-csi2':1[fmt:UYVY2X8/640x480
> > > > > > field:none]"
> > > > > > media-ctl --set-v4l2 "'ipu1_csi0_mux':2[fmt:UYVY2X8/640x480
> > > > > > field:none]"
> > > > > > media-ctl --set-v4l2 "'ipu1_csi0':2[fmt:AYUV32/640x480 field:none]"
> > > > > >
> > > > > >> Also make sure you are attempting to stream from the correct /dev/videoN.
> > > > > > I have graphically plotted the pipeline using media-ctl --print-dot
> > > > > > and I can see the proper video is routed, but your dynamic debug
> > > > > > suggestion yielded something:
> > > > > >
> > > > > >     imx-media capture-subsystem: link validation failed for 'ov5640
> > > > > > 2-0010':0 -> 'imx6-mipi-csi2':0, error -32
> > > > >
> > > > >
> > > > > It's what I expected, you have a format mismatch between those pads.
> > > >
> > > > Is the mismatch something I am doing wrong with:
> > > >
> > > > media-ctl --set-v4l2 "'ov5640 2-0010':0[fmt:UYVY2X8/640x480 field:none]"
> > > > media-ctl --set-v4l2 "'imx6-mipi-csi2':2[fmt:UYVY2X8/640x480 field:none]"
> > > >
> > >
> > > Could you try to verify the actual format configured on the sensor?
> > > (media-ctl --get-v4l2 "'ov5640 2-0010':0").
> > >
> > > Depending on the driver version you are running, you might be affected
> > > by different regressions.
> > >
> > > > or is there something else I need to do?  I just used Jagan's suggestion.
> > >
> > > I suggest you to update the driver version to the last one available
> > > in the media-tree master, or at least try to backport the following
> > > commit:
> > > fb98e29 media: ov5640: fix mode change regression
> > >
> > > If it turns out the format and mode configured on the sensor do not
> > > match the one you want.
> > >
> > > Thanks
> >
> > That got me past one hurdle.   Wtih your help, I was able to confirm
> > the mis-match of the modes between the sensor and the csi1 source.  I
> > applied the patch as you suggested, but now I get a new error.
> >
> > [  295.294370] imx6-mipi-csi2: LP-11 timeout, phy_state = 0x00000230
> > [  295.300681] ipu1_csi0: pipeline start failed with -110
> >
> >
>
> Here you go:
> bad1774 media: ov5640: Fix timings setup code
> aa4bb8b media: ov5640: Re-work MIPI startup sequence
>
> Please update your ov5640 driver to the last version available on
> linux-media master repository. There have been a looot of developments
> and fixes recently (and I would be happy to know if they have helped
> you)
>
> > I am going to go through various patches to the imx framework and
> > ov5640 driver to see if I can find the solution,  but if you have
> > suggestions as to which fixes are appropriate, I'll test those.  If I
>
> Just get what's on linux-media master tree.
>
> > can get this working, would it make sense for me to submit some
> > requests with kernel-stable to backport some of these commits to 4.19
> > and if applicable, 4.14 too?
>
> Sure it will (even if I'm not familiar with the procedure used to tag
> patches to be applied to stable. I would just apply everything that's
> on the latest media tree)
>
> Keep us posted!

Thank you everyone for your help.  I pulled the linux-media master and
built it, and it works perfectly from what I can tell. I'll go through
the patch list and see what's back-port-able to 4.19.  I noticed that
just copying the ov5640.c driver breaks the build on 4.19.0, so I'm
going to focus on just patches labeled 'fix' on both the ov5640 for
now.

I appreciate everyone's help, and Iearned a lot about the v4l system
in the process.

adam

>    j
> >
> > adam
> > >    j
> > >
> > > > adam
> > > > >
> > > > > Steve
> > > > >
> > > > >
> > > > > >
> > > > > > I am assume this means the interface between the camera and the csi2
> > > > > > isn't working.  I am going to double check the power rails and the
> > > > > > clocks.  i can hear it click when activated and deactivated, so
> > > > > > something is happening.
> > > > > >
> > > > > > adam
> > > > > >
> > > > > >> Steve
> > > > > >>

  reply	other threads:[~2018-10-24 14:17 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-31 15:09 i.MX6 MIPI-CSI2 OV5640 Camera testing on Mainline Linux Jagan Teki
2018-05-31 16:10 ` Nicolas Dufresne
2018-05-31 16:25   ` Jagan Teki
2018-05-31 19:06 ` Philipp Zabel
2018-06-01  5:19   ` Jagan Teki
2018-06-01  9:53     ` Sakari Ailus
2018-06-01 11:41       ` Jagan Teki
2018-06-29 21:46     ` Fabio Estevam
2018-07-03 18:41       ` jacopo mondi
2018-07-04  0:18         ` Fabio Estevam
2018-07-04  5:18         ` Jagan Teki
2018-07-04  6:57           ` Jagan Teki
2018-07-04 14:26             ` Fabio Estevam
     [not found]           ` <588A2275-4D45-442D-8B38-7A17C27BED10@gmail.com>
2018-07-04  6:59             ` Jagan Teki
2018-07-04  7:11               ` chain256
2018-09-20 14:56 ` jacopo mondi
2018-10-16 19:46   ` Adam Ford
2018-10-17  0:13     ` Steve Longerbeam
2018-10-17  8:01       ` jacopo mondi
2018-10-19 13:45         ` Adam Ford
2018-10-19 19:42           ` Adam Ford
2018-10-22 11:33             ` jacopo mondi
2018-10-22 12:25               ` Adam Ford
2018-10-22 12:40                 ` Fabio Estevam
2018-10-23 15:19                   ` Adam Ford
2018-10-23 16:36                     ` Steve Longerbeam
2018-10-23 17:34                       ` Adam Ford
2018-10-23 17:39                         ` Steve Longerbeam
2018-10-23 17:54                           ` Adam Ford
2018-10-23 18:11                             ` Steve Longerbeam
2018-10-23 23:03                             ` jacopo mondi
2018-10-24 13:53                               ` Adam Ford
2018-10-24 14:08                                 ` jacopo mondi
2018-10-24 14:17                                   ` Adam Ford [this message]
2018-10-28 18:57                                     ` Adam Ford
2018-10-29 13:49                                       ` Fabio Estevam
2018-11-05 22:32                                         ` Adam Ford
2018-11-06  8:27                                           ` jacopo mondi

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=CAHCN7xKbAuTmic+L-a2o1NreSCmYBKzzvmHuUTGZtVHELFoirg@mail.gmail.com \
    --to=aford173@gmail.com \
    --cc=fabio.estevam@nxp.com \
    --cc=festevam@gmail.com \
    --cc=gstreamer-devel@lists.freedesktop.org \
    --cc=jacopo@jmondi.org \
    --cc=jagan@amarulasolutions.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=p.zabel@pengutronix.de \
    --cc=steve_longerbeam@mentor.com \
    /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).