From: Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
To: Nicolas THERY <nicolas.thery@st.com>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
Sylwester Nawrocki <s.nawrocki@samsung.com>,
Linux Media Mailing List <linux-media@vger.kernel.org>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Magnus Damm <magnus.damm@gmail.com>,
devicetree-discuss <devicetree-discuss@lists.ozlabs.org>,
"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Stephen Warren <swarren@wwwdotorg.org>,
Benjamin GAIGNARD <benjamin.gaignard@st.com>,
Willy POISSON <willy.poisson@st.com>,
Jean-Marc VOLLE <jean-marc.volle@st.com>,
Pierre-yves TALOUD <pierre-yves.taloud@st.com>
Subject: Re: [RFC v4] V4L DT bindings
Date: Thu, 30 Aug 2012 22:21:11 +0200 [thread overview]
Message-ID: <503FCB37.5080706@gmail.com> (raw)
In-Reply-To: <503F8471.5000406@st.com>
On 08/30/2012 05:19 PM, Nicolas THERY wrote:
>> i2c0: i2c@0xfff20000 {
>> ...
>> ov772x_1: ov772x@0x21 {
>> compatible = "omnivision,ov772x";
>> reg =<0x21>;
>> vddio-supply =<®ulator1>;
>> vddcore-supply =<®ulator2>;
>> bus-width =<10>;
>>
>> clock-frequency =<20000000>;
>> clocks =<&mclk 0>;
>> clock-names = "mclk"
>>
>> #address-cells =<1>;
>> #size-cells =<0>;
>> ...
>> ceu0_1: videolink@0 {
>> reg =<0>; /* link configuration to local pad #0 */
>> bus-width =<8>;
>> hsync-active =<1>;
>> hsync-active =<0>; /* who came up with an inverter here?... */
>> pclk-sample =<1>;
>> };
>> };
>>
>> imx074: imx074@0x1a {
>> compatible = "sony,imx074";
>> reg =<0x1a>;
>> vddio-supply =<®ulator1>;
>> vddcore-supply =<®ulator2>;
>> clock-lanes =<0>;
>> data-lanes =<1>,<2>;
>>
>> clock-frequency =<30000000>; /* shared clock with ov772x_1 */
>> clocks =<&mclk 0>;
>> clock-names = "mclk"
>>
>> #address-cells =<1>;
>> #size-cells =<0>;
>> ...
>> csi2_0_1: videolink@0 {
>> reg =<0>; /* link configuration to local pad #0 */
>> bus-width =<2>; /* 2 lanes, fixed roles, also described above */
>> };
>> };
>> ...
>> };
>>
>> csi2: csi2@0xffc90000 {
>> compatible = "renesas,sh-mobile-csi2";
>> reg =<0xffc90000 0x1000>;
>> interrupts =<0x17a0>;
>> #address-cells =<1>;
>> #size-cells =<0>;
>>
>> /* Ok to have them global? */
I'm not sure, maybe it's better to move it under videolink@1 node,
to keep it together with 'bus-width' property ?
>> clock-lanes =<0>;
>> data-lanes =<2>,<1>;
>
> In imx074@0x1a above, the data-lanes property is<1>,<2>. Is it
> reversed here to show that lanes are swapped between the sensor and the
> CSI rx? If not, how to express lane swapping?
Yes, this indicates lanes remapping at the receiver.
Probably we could make it a single value with length determined by
'bus-width', since we're going to use 'bus-width' for CSI buses as well,
(optionally) in addition to 'clock-lanes' and 'data-lanes' ?
>> ...
>> imx074_1: videolink@1 {
>> reg =<1>;
>> client =<&imx074 0>;
>> bus-width =<2>;
>>
>> csi2-ecc;
>> csi2-crc;
>>
>> renesas,csi2-phy =<0>;
>> };
>> ceu0: videolink@0 {
>> reg =<0>;
>> immutable;
>> };
>> };
>
> How to express that the positive and negative signals of a given
> clock/data lane are inversed? Is it somehow with the hsync-active
> property?
Hmm, I don't think this is covered in this RFC. hsync-active is mostly
intended for the parallel buses. We need to come up with new properties
to handle CSI data/clock lane polarity swapping. There was a short
discussion about that already:
http://www.mail-archive.com/linux-media@vger.kernel.org/msg41724.html
> Actually there may be two positive/negative inversion cases to consider:
>
> - the positive/negative signals are inversed both in low-power and
> high-speed modes (e.g. physical lines between sensor module and SoC
> are swapped on the PCB);
>
> - the positive/negative signals are inversed in high-speed mode only
> (the sensor and CSI rx use opposite polarities in high-speed mode).
Then is this positive/negative LVDS lines swapping separately configurable
in hardware for low-power and high-speed mode ? What is an advantage of it ?
One possible solution would be to have a one to two elements array property,
e.g.
lanes-polarity = <0 0 0 0 0>, <1 1 1 1 1>;
where the first entry would indicate lanes polarity for high speed mode and
the second one for low power mode. For receivers/transmitters that don't
allow to configure the polarities separately for different bus states there
could be just one entry. The width of each element could be determined by
value of the 'bus-width' property + 1.
Would it make sense ?
--
Regards,
Sylwester
next prev parent reply other threads:[~2012-08-30 20:21 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-24 23:27 [RFC v4] V4L DT bindings Guennadi Liakhovetski
2012-08-30 15:19 ` Nicolas THERY
2012-08-30 20:21 ` Sylwester Nawrocki [this message]
2012-08-30 20:58 ` V4L DT @ plumbers (was Re: [RFC v4] V4L DT bindings) Guennadi Liakhovetski
2012-08-30 22:30 ` Laurent Pinchart
2012-08-30 22:39 ` Guennadi Liakhovetski
2012-08-31 6:46 ` [RFC v4] V4L DT bindings Nicolas THERY
2012-08-31 19:38 ` Sylwester Nawrocki
2012-08-31 9:11 ` Nicolas THERY
2012-09-05 10:57 ` [RFC v5] " Guennadi Liakhovetski
2012-09-05 23:23 ` Stephen Warren
2012-09-11 14:02 ` Guennadi Liakhovetski
2012-09-11 15:22 ` Stephen Warren
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=503FCB37.5080706@gmail.com \
--to=sylvester.nawrocki@gmail.com \
--cc=benjamin.gaignard@st.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=g.liakhovetski@gmx.de \
--cc=jean-marc.volle@st.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=nicolas.thery@st.com \
--cc=pierre-yves.taloud@st.com \
--cc=s.nawrocki@samsung.com \
--cc=swarren@wwwdotorg.org \
--cc=willy.poisson@st.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).