Message ID | 20191014135424.7000-3-festevam@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,1/3] media: imx.rst: Specify the sabreauto variant | expand |
Hi Fabio, On 10/14/19 6:54 AM, Fabio Estevam wrote: > The i.MX6DL sabreauto has different numbering on the I2C bus and > I2C muxes compared to the i.MX6Q as shown in the kernel log below: > > [ 5.159423] imx-media: ipu1_csi0_mux:5 -> ipu1_csi0:0 > [ 5.164618] imx-media: ipu1_csi1_mux:5 -> ipu1_csi1:0 > [ 5.169953] imx-media: adv7180 4-0021:0 -> ipu1_csi0_mux:4 > > To avoid confusion, add an entry that shows how to setup the links and > configure the pads that are specific to the i.MX6DL sabreauto. > > Signed-off-by: Fabio Estevam <festevam@gmail.com> > --- > Changes since v1: > - Add a new entry for the mx6dl sabreauto > > Documentation/media/v4l-drivers/imx.rst | 57 +++++++++++++++++++++++++ > 1 file changed, 57 insertions(+) > > diff --git a/Documentation/media/v4l-drivers/imx.rst b/Documentation/media/v4l-drivers/imx.rst > index 36e8d1226ac6..6a9dad8b050b 100644 > --- a/Documentation/media/v4l-drivers/imx.rst > +++ b/Documentation/media/v4l-drivers/imx.rst > @@ -572,6 +572,63 @@ supported YUV or RGB pixelformat on the capture device node. > This platform accepts Composite Video analog inputs to the ADV7180 on > Ain1 (connector J42). > > +i.MX6DL SabreAuto with ADV7180 decoder > +-------------------------------------- > + > +On the i.MX6DL SabreAuto, an on-board ADV7180 SD decoder is connected to the > +parallel bus input on the internal video mux to IPU1 CSI0. > + > +The following example configures a pipeline to capture from the ADV7180 > +video decoder, assuming NTSC 720x480 input signals, using simple > +interweave (unconverted and without motion compensation). The adv7180 > +must output sequential or alternating fields (field type 'seq-bt' for > +NTSC, or 'alternate'): > + > +.. code-block:: none > + > + # Setup links > + media-ctl -l "'adv7180 4-0021':0 -> 'ipu1_csi0_mux':4[1]" > + media-ctl -l "'ipu1_csi0_mux':5 -> 'ipu1_csi0':0[1]" > + media-ctl -l "'ipu1_csi0':2 -> 'ipu1_csi0 capture':0[1]" > + # Configure pads > + media-ctl -V "'adv7180 4-0021':0 [fmt:UYVY2X8/720x480 field:seq-bt]" > + media-ctl -V "'ipu1_csi0_mux':5 [fmt:UYVY2X8/720x480]" > + media-ctl -V "'ipu1_csi0':2 [fmt:AYUV32/720x480]" > + # Configure "ipu1_csi0 capture" interface (assumed at /dev/video4) > + v4l2-ctl -d4 --set-fmt-video=field=interlaced_bt > + > +Streaming can then begin on /dev/video4. The v4l2-ctl tool can also be > +used to select any supported YUV pixelformat on /dev/video4. > + > +This example configures a pipeline to capture from the ADV7180 > +video decoder, assuming PAL 720x576 input signals, with Motion > +Compensated de-interlacing. The adv7180 must output sequential or > +alternating fields (field type 'seq-tb' for PAL, or 'alternate'). > + > +.. code-block:: none > + > + # Setup links > + media-ctl -l "'adv7180 4-0021':0 -> 'ipu1_csi0_mux':4[1]" > + media-ctl -l "'ipu1_csi0_mux':5 -> 'ipu1_csi0':0[1]" > + media-ctl -l "'ipu1_csi0':1 -> 'ipu1_vdic':0[1]" > + media-ctl -l "'ipu1_vdic':2 -> 'ipu1_ic_prp':0[1]" > + media-ctl -l "'ipu1_ic_prp':2 -> 'ipu1_ic_prpvf':0[1]" > + media-ctl -l "'ipu1_ic_prpvf':1 -> 'ipu1_ic_prpvf capture':0[1]" > + # Configure pads > + media-ctl -V "'adv7180 3-0021':0 [fmt:UYVY2X8/720x576 field:seq-tb]" should be "'adv7180 4-0021:0". > + media-ctl -V "'ipu1_csi0_mux':2 [fmt:UYVY2X8/720x576]" should be "'ipu1_csi0_mux':5". > + media-ctl -V "'ipu1_csi0':1 [fmt:AYUV32/720x576]" > + media-ctl -V "'ipu1_vdic':2 [fmt:AYUV32/720x576 field:none]" > + media-ctl -V "'ipu1_ic_prp':2 [fmt:AYUV32/720x576 field:none]" > + media-ctl -V "'ipu1_ic_prpvf':1 [fmt:AYUV32/720x576 field:none]" Please add (after above line): # Configure "ipu1_ic_prpvf capture" interface (assumed at /dev/video1) v4l2-ctl -d1 --set-fmt-video=field=none > + > +Streaming can then begin on the capture device node at > +"ipu1_ic_prpvf capture". The v4l2-ctl tool can be used to select any > +supported YUV or RGB pixelformat on the capture device node. > + Please replace above paragraph with: Streaming can then begin on /dev/video1. The v4l2-ctl tool can also be used to select any supported YUV pixelformat on /dev/video1. If you don't mind while you are on this, can you please add this v4l2-ctl step to the i.MX6Q PAL example, it is missing there as well. Steve > +This platform accepts Composite Video analog inputs to the ADV7180 on > +Ain1 (connector J42). > + > SabreSD with MIPI CSI-2 OV5640 > ------------------------------ >
Hi Steve, On Mon, Oct 14, 2019 at 2:20 PM Steve Longerbeam <slongerbeam@gmail.com> wrote: > should be "'adv7180 4-0021:0". Will fix it. > should be "'ipu1_csi0_mux':5". Will fix it. > > + media-ctl -V "'ipu1_csi0':1 [fmt:AYUV32/720x576]" > > + media-ctl -V "'ipu1_vdic':2 [fmt:AYUV32/720x576 field:none]" > > + media-ctl -V "'ipu1_ic_prp':2 [fmt:AYUV32/720x576 field:none]" > > + media-ctl -V "'ipu1_ic_prpvf':1 [fmt:AYUV32/720x576 field:none]" > > Please add (after above line): > > # Configure "ipu1_ic_prpvf capture" interface (assumed at /dev/video1) > v4l2-ctl -d1 --set-fmt-video=field=none Will add it and will change it to /dev/video2, which is the correct interface on imx6dl-sabreuto. > If you don't mind while you are on this, can you please add this > v4l2-ctl step to the i.MX6Q PAL example, it is missing there as well. Yes, I can add it. What is the video device node for "ipu1_ic_prpvf capture" on the imx6q sabreauto? Thanks
On Tue, Oct 15, 2019 at 11:27 AM Fabio Estevam <festevam@gmail.com> wrote: > Yes, I can add it. > > What is the video device node for "ipu1_ic_prpvf capture" on the imx6q > sabreauto? I managed to get access to a imx6q-sabreauto and it's /dev/video2. Will send a new patch series soon. Thanks
diff --git a/Documentation/media/v4l-drivers/imx.rst b/Documentation/media/v4l-drivers/imx.rst index 36e8d1226ac6..6a9dad8b050b 100644 --- a/Documentation/media/v4l-drivers/imx.rst +++ b/Documentation/media/v4l-drivers/imx.rst @@ -572,6 +572,63 @@ supported YUV or RGB pixelformat on the capture device node. This platform accepts Composite Video analog inputs to the ADV7180 on Ain1 (connector J42). +i.MX6DL SabreAuto with ADV7180 decoder +-------------------------------------- + +On the i.MX6DL SabreAuto, an on-board ADV7180 SD decoder is connected to the +parallel bus input on the internal video mux to IPU1 CSI0. + +The following example configures a pipeline to capture from the ADV7180 +video decoder, assuming NTSC 720x480 input signals, using simple +interweave (unconverted and without motion compensation). The adv7180 +must output sequential or alternating fields (field type 'seq-bt' for +NTSC, or 'alternate'): + +.. code-block:: none + + # Setup links + media-ctl -l "'adv7180 4-0021':0 -> 'ipu1_csi0_mux':4[1]" + media-ctl -l "'ipu1_csi0_mux':5 -> 'ipu1_csi0':0[1]" + media-ctl -l "'ipu1_csi0':2 -> 'ipu1_csi0 capture':0[1]" + # Configure pads + media-ctl -V "'adv7180 4-0021':0 [fmt:UYVY2X8/720x480 field:seq-bt]" + media-ctl -V "'ipu1_csi0_mux':5 [fmt:UYVY2X8/720x480]" + media-ctl -V "'ipu1_csi0':2 [fmt:AYUV32/720x480]" + # Configure "ipu1_csi0 capture" interface (assumed at /dev/video4) + v4l2-ctl -d4 --set-fmt-video=field=interlaced_bt + +Streaming can then begin on /dev/video4. The v4l2-ctl tool can also be +used to select any supported YUV pixelformat on /dev/video4. + +This example configures a pipeline to capture from the ADV7180 +video decoder, assuming PAL 720x576 input signals, with Motion +Compensated de-interlacing. The adv7180 must output sequential or +alternating fields (field type 'seq-tb' for PAL, or 'alternate'). + +.. code-block:: none + + # Setup links + media-ctl -l "'adv7180 4-0021':0 -> 'ipu1_csi0_mux':4[1]" + media-ctl -l "'ipu1_csi0_mux':5 -> 'ipu1_csi0':0[1]" + media-ctl -l "'ipu1_csi0':1 -> 'ipu1_vdic':0[1]" + media-ctl -l "'ipu1_vdic':2 -> 'ipu1_ic_prp':0[1]" + media-ctl -l "'ipu1_ic_prp':2 -> 'ipu1_ic_prpvf':0[1]" + media-ctl -l "'ipu1_ic_prpvf':1 -> 'ipu1_ic_prpvf capture':0[1]" + # Configure pads + media-ctl -V "'adv7180 3-0021':0 [fmt:UYVY2X8/720x576 field:seq-tb]" + media-ctl -V "'ipu1_csi0_mux':2 [fmt:UYVY2X8/720x576]" + media-ctl -V "'ipu1_csi0':1 [fmt:AYUV32/720x576]" + media-ctl -V "'ipu1_vdic':2 [fmt:AYUV32/720x576 field:none]" + media-ctl -V "'ipu1_ic_prp':2 [fmt:AYUV32/720x576 field:none]" + media-ctl -V "'ipu1_ic_prpvf':1 [fmt:AYUV32/720x576 field:none]" + +Streaming can then begin on the capture device node at +"ipu1_ic_prpvf capture". The v4l2-ctl tool can be used to select any +supported YUV or RGB pixelformat on the capture device node. + +This platform accepts Composite Video analog inputs to the ADV7180 on +Ain1 (connector J42). + SabreSD with MIPI CSI-2 OV5640 ------------------------------
The i.MX6DL sabreauto has different numbering on the I2C bus and I2C muxes compared to the i.MX6Q as shown in the kernel log below: [ 5.159423] imx-media: ipu1_csi0_mux:5 -> ipu1_csi0:0 [ 5.164618] imx-media: ipu1_csi1_mux:5 -> ipu1_csi1:0 [ 5.169953] imx-media: adv7180 4-0021:0 -> ipu1_csi0_mux:4 To avoid confusion, add an entry that shows how to setup the links and configure the pads that are specific to the i.MX6DL sabreauto. Signed-off-by: Fabio Estevam <festevam@gmail.com> --- Changes since v1: - Add a new entry for the mx6dl sabreauto Documentation/media/v4l-drivers/imx.rst | 57 +++++++++++++++++++++++++ 1 file changed, 57 insertions(+)