From: khilman@baylibre.com (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/4] ARM: dts: davinci: da850: add VPIF
Date: Wed, 23 Nov 2016 07:35:03 -0800 [thread overview]
Message-ID: <m27f7uxl94.fsf@baylibre.com> (raw)
In-Reply-To: <d4e696d1-f9b2-665c-c44f-c661856c5098@ti.com> (Sekhar Nori's message of "Wed, 23 Nov 2016 13:57:48 +0530")
Sekhar Nori <nsekhar@ti.com> writes:
> On Wednesday 23 November 2016 11:13 AM, Kevin Hilman wrote:
>> David Lechner <david@lechnology.com> writes:
>>
>>> On 11/22/2016 01:45 PM, Kevin Hilman wrote:
>>>> Add VPIF and VPIF capture nodes to da850. VPIF capture has two input
>>>> channels describe using the standard DT ports and enpoints.
>>>>
>>>> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
>>>> ---
>>>> arch/arm/boot/dts/da850.dtsi | 28 ++++++++++++++++++++++++++++
>>>> 1 file changed, 28 insertions(+)
>>>>
>>>> diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi
>>>> index 6205917b4f59..e05e2bb834e8 100644
>>>> --- a/arch/arm/boot/dts/da850.dtsi
>>>> +++ b/arch/arm/boot/dts/da850.dtsi
>>>> @@ -453,7 +453,35 @@
>>>> interrupts = <52>;
>>>> status = "disabled";
>>>> };
>>>> +
>>>> + vpif: video at 0x00217000 {
>>>
>>> Should be @217000
>>>
>>>> + compatible = "ti,da850-vpif";
>>>> + reg = <0x00217000 0x1000>;
>>>
>>> Could omit leading 0's to be consistent with existing entries.
>>>
>>> reg = <0x217000 0x1000>;
>>
>> Ugh, yeah. I hate that convention, but better to be consistent, I guess.
>>
>>>> + status = "disabled";
>>>> + };
>>>> +
>>>> + vpif_capture: video-capture at 0x00217000 {
>>>
>>> Again, @217000. But it seems odd to have two device nodes with the
>>> same address. Is enabling these mutually exclusive?
>>
>> They're not mutually exclusive because the vpif is the one that actually
>> maps the register range (since it's shared between vpif_display and
>> vpif_capture) so I guess I should just drop the reg property from the
>> vpif_capture node.
>
> Reading the documentation, VPIF is presented as a single device, with
> two channels dedicated to display and two for capture. Most of the
> channel registers are independent, but there are are some like interrupt
> enable which are common for all channels. So I believe we cannot use
> simple-mfd. But I believe VPIF display and capture should be subdevices
> of a single VPIF device.
OK, I can give it a try that way.
> It should look something like this, I think:
>
> vpif: video at 217000 {
> compatible = "ti,da850-vpif";
> reg = <0x217000 0x1000>;
> interrupts = <92>;
> status = "disabled";
>
> vpif_capture: video-capture {
> compatible = "ti,da850-vpif-capture"
> port {
> vpif_ch0: endpoint at 0 {
> reg = <0>;
> bus-width = <8>;
> };
>
> vpif_ch1: endpoint at 1 {
> reg = <1>;
> bus-width = <8>;
> data-shift = <8>;
> };
> };
> };
>
> vpif_display: video-display {
> compatible = "ti,da850-vpif-display"
> port {
> vpif_ch2: endpoint at 2 {
> reg = <2>;
> bus-width = <8>;
> data-shift = <16>;
> };
>
> vpif_ch3: endpoint at 3 {
> reg = <3>;
> bus-width = <8>;
> data-shift = <24>;
> };
> };
> };
> };
> The interrupt too, seems to be common interrupt for both display and
> capture. So, it should not be under the capture node.
Possibly. That will require reworking of the way the driver works
today, since the vpif driver doesn't request interrupts, but the capture
and display drivers both register interrupts, one per channel. I'll
have a closer look.
> BTW, I am sure
> what exactly data-shift is used for. It does not seem to be used in the
> driver patches too. I just extrapolated the values based on the pattern
> I saw.
For video out, the way I read the spec, and based on the schematics,
there appears to be a separate 16-bit parallel bus, so the data-shift on
the video-display endpoints should probably be zero and 16 like for
catpure. Anyways, I'll get to that when I get to the display part.
Kevin
next prev parent reply other threads:[~2016-11-23 15:35 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-22 19:45 [PATCH 0/4] ARM: davinci: add/enable video capture for da850-lcdk Kevin Hilman
2016-11-22 19:45 ` [PATCH 1/4] ARM: davinci: da8xx: VPIF: enable DT init Kevin Hilman
2016-11-22 20:06 ` David Lechner
2016-11-23 5:38 ` Kevin Hilman
2016-11-22 19:45 ` [PATCH 2/4] ARM: dts: davinci: da850: add VPIF Kevin Hilman
2016-11-22 20:00 ` David Lechner
2016-11-23 5:43 ` Kevin Hilman
2016-11-23 8:27 ` Sekhar Nori
2016-11-23 15:35 ` Kevin Hilman [this message]
2016-11-22 19:45 ` [PATCH 3/4] ARM: dts: davinci: da850-lcdk: enable VPIF capture via TVP5147 Kevin Hilman
2016-11-22 19:45 ` [PATCH 4/4] ARM: davinci_all_defconfig: enable video capture as modules Kevin Hilman
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=m27f7uxl94.fsf@baylibre.com \
--to=khilman@baylibre.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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