public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Michael Trimarchi <michael@panicking.kicks-ass.org>
To: "Aguirre Rodriguez, Sergio Alberto" <saaguirre@ti.com>
Cc: Nishanth Menon <menon.nishanth@gmail.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-media@vger.kernel.org" <linux-media@vger.kernel.org>
Subject: Re: ISP OMAP3 camera support ov7690
Date: Tue, 12 Jan 2010 14:15:28 +0100	[thread overview]
Message-ID: <4B4C75F0.3060108@panicking.kicks-ass.org> (raw)
In-Reply-To: <A24693684029E5489D1D202277BE89444CB3A2CB@dlee02.ent.ti.com>

[-- Attachment #1: Type: text/plain, Size: 5727 bytes --]

Hi all,

Now I have a good camera pcb and I can test again the driver. My board is 
an overo gumstix board. 

Aguirre Rodriguez, Sergio Alberto wrote:
> Hi Michael, 
> 
>> -----Original Message-----
>> From: linux-omap-owner@vger.kernel.org 
>> [mailto:linux-omap-owner@vger.kernel.org] On Behalf Of michael
>> Sent: Sunday, October 04, 2009 7:29 PM
>> To: Nishanth Menon
>> Cc: linux-omap@vger.kernel.org; linux-media@vger.kernel.org
>> Subject: Re: ISP OMAP3 camera support ov7690
>>
>> Hi,
>>
>> cc: linux-media
>>
>> Nishanth Menon wrote:
>>> michael said the following on 10/03/2009 06:13 PM:
>>>> I'm writing a driver to support the ov7690 camera and I have some
>>>> question about the meaning of:
>>>>
>>>> - datalane configuration
>>> CSI2 Data lanes - each CSI2 lane is a differential pair. 
>> And, at least 1
>>> clock and data lane is used in devices.
>> Sorry can you explain a little bit more. I have the camera 
>> connected to the
>> cam_hs and cam_vs and the data is 8Bit. I use the the isp init
>> structure. The sccb bus works great and I can send 
>> configuration to it,
>> but I don't receive any interrupt from the ics, seems that it 
>> doen't see
>> the transaction:
>>
>> The ISPCCDC: ###CCDC SYN_MODE=0x31704 seems ok.
>>
>>
>> static struct isp_interface_config ov7690_if_config = {
>>         .ccdc_par_ser           = ISP_CSIA,
>>         .dataline_shift         = 0x0,
>>         .hsvs_syncdetect        = ISPCTRL_SYNC_DETECT_VSFALL,
> 
> Can you try with ISPCTRL_SYNC_DETECT_VSRISE ?
> 
>>         .strobe                 = 0x0,
>>         .prestrobe              = 0x0,
>>         .shutter                = 0x0,
>>         .wenlog                 = ISPCCDC_CFG_WENLOG_AND,
>>         .wait_hs_vs             = 0x4,
>>         .raw_fmt_in             = ISPCCDC_INPUT_FMT_GR_BG,
>>         .u.csi.crc              = 0x0,
>>         .u.csi.mode             = 0x0,
>>         .u.csi.edge             = 0x0,
>>         .u.csi.signalling       = 0x0,
>>         .u.csi.strobe_clock_inv = 0x0,
>>         .u.csi.vs_edge          = 0x0,
>>         .u.csi.channel          = 0x0,
>>         .u.csi.vpclk            = 0x1,
>>         .u.csi.data_start       = 0x0,
>>         .u.csi.data_size        = 0x0,
>>         .u.csi.format           = V4L2_PIX_FMT_YUYV,
>> };
>>
>> and I don't know the meaning of
>>
>> lanecfg.clk.pol = OV7690_CSI2_CLOCK_POLARITY;
>> lanecfg.clk.pos = OV7690_CSI2_CLOCK_LANE;
>> lanecfg.data[0].pol = OV7690_CSI2_DATA0_POLARITY;
>> lanecfg.data[0].pos = OV7690_CSI2_DATA0_LANE;
>> lanecfg.data[1].pol = OV7690_CSI2_DATA1_POLARITY;
>> lanecfg.data[1].pos = OV7690_CSI2_DATA1_LANE;
>> lanecfg.data[2].pol = 0;
>> lanecfg.data[2].pos = 0;
>> lanecfg.data[3].pol = 0;
>> lanecfg.data[3].pos = 0;
>>
> 
> This is the physical connection details:
> 
> - The .pol field stands for the differntial pair polarity.
>   (i.e. the order in which the negative and positive connections
>   are pugged in to the CSI2 ComplexIO module)

What exact the meaning of the pol, sorry? I have a signal that is connected
to a pin. If the pos is avalaible can I use it? 
It's not important how to route the signal but don't route on the same lane.
Is it right?

This is the timing of the camera so I can check signal, but I don't receive interrupt
of isp engine

> 

The camera is direct connected to the 
camera omap camera signal and using the oscilloscope I can see the hs/vs signal
The hs is low and go up, like the vs signal. I have only one camera
with that use D0 to D7 data bit.

http://www.gumstix.net/Hardware/view/I/O-connectors-cabling/Gumstix-Overo-27-pin-connector-J5-to-manage-camera-controls/112.html

static struct isp_interface_config ov7690_if_config = {
        .ccdc_par_ser           = ISP_CSIA,
        .dataline_shift         = 0x0,
        .hsvs_syncdetect        = ISPCTRL_SYNC_DETECT_VSRISE,
        .strobe                 = 0x0,
        .prestrobe              = 0x0,
        .shutter                = 0x0,
        .wenlog                 = ISPCCDC_CFG_WENLOG_AND,
        .wait_hs_vs             = 0x4,
        .raw_fmt_in             = ISPCCDC_INPUT_FMT_GR_BG,
        .u.csi.crc              = 0x0,
        .u.csi.mode             = 0x0,
        .u.csi.edge             = 0x0,
        .u.csi.signalling       = 0x0,
        .u.csi.strobe_clock_inv = 0x0,
        .u.csi.vs_edge          = 0x0,
        .u.csi.channel          = 0x0,
        .u.csi.vpclk            = 0x1,
        .u.csi.data_start       = 0x0,
        .u.csi.data_size        = 0x0,
        .u.csi.format           = V4L2_PIX_FMT_YUYV,
};

This is my initial configuration
#define OV7690_CSI2_CLOCK_POLARITY      0       /* +/- pin order */
#define OV7690_CSI2_DATA0_POLARITY      0       /* +/- pin order */
#define OV7690_CSI2_DATA1_POLARITY      0       /* +/- pin order */
#define OV7690_CSI2_CLOCK_LANE          1        /* Clock lane position: 1 */
#define OV7690_CSI2_DATA0_LANE          2        /* Data0 lane position: 2 */
#define OV7690_CSI2_DATA1_LANE          3        /* Data1 lane position: 3 */
tim#define OV7690_CSI2_PHY_THS_TERM        2
#define OV7690_CSI2_PHY_THS_SETTLE      23
#define OV7690_CSI2_PHY_TCLK_TERM       0
#define OV7690_CSI2_PHY_TCLK_MISS       1
#define OV7690_CSI2_PHY_TCLK_SETTLE     14

With this clock polarity

lanecfg.clk.pol = OV7690_CSI2_CLOCK_POLARITY;
lanecfg.clk.pos = OV7690_CSI2_CLOCK_LANE;
lanecfg.data[0].pol = OV7690_CSI2_DATA0_POLARITY;
lanecfg.data[0].pos = OV7690_CSI2_DATA0_LANE;
lanecfg.data[1].pol = OV7690_CSI2_DATA1_POLARITY;
lanecfg.data[1].pos = OV7690_CSI2_DATA1_LANE;
lanecfg.data[2].pol = 0;
lanecfg.data[2].pos = 0;
lanecfg.data[3].pol = 0;
lanecfg.data[3].pos = 0;
isp_csi2_complexio_lanes_config(&isp->isp_csi2, &lanecfg);

Michael

[-- Attachment #2: tim.1.jpg --]
[-- Type: image/jpeg, Size: 74725 bytes --]

  parent reply	other threads:[~2010-01-12 13:15 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-03 23:13 ISP OMAP3 camera support ov7690 michael
     [not found] ` <4AC8B764.2030101@gmail.com>
2009-10-05  0:28   ` michael
2009-10-05 22:23     ` Aguirre Rodriguez, Sergio Alberto
2009-10-05 22:33       ` michael
2010-01-12 13:15       ` Michael Trimarchi [this message]
2010-01-12 16:36         ` Aguirre, Sergio
2010-01-12 17:32           ` Michael Trimarchi
2010-01-12 21:28             ` Michael Trimarchi
2010-01-12 22:12               ` Aguirre, Sergio
2010-01-13 10:18                 ` Michael Trimarchi

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=4B4C75F0.3060108@panicking.kicks-ass.org \
    --to=michael@panicking.kicks-ass.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=menon.nishanth@gmail.com \
    --cc=saaguirre@ti.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