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 --]
next prev 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