From: Eric Anholt <eric@anholt.net>
To: Rob Herring <robh@kernel.org>
Cc: linux-rpi-kernel@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
Stephen Warren <swarren@wwwdotorg.org>,
Lee Jones <lee@kernel.org>, Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Kumar Gala <galak@codeaurora.org>,
devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org,
David Airlie <airlied@linux.ie>
Subject: Re: [PATCH 4/5] drm/vc4: Add DPI driver
Date: Thu, 24 Mar 2016 17:02:34 -0700 [thread overview]
Message-ID: <871t6za0h1.fsf@eliezer.anholt.net> (raw)
In-Reply-To: <20160321125745.GA16407@rob-hp-laptop>
[-- Attachment #1: Type: text/plain, Size: 3616 bytes --]
Rob Herring <robh@kernel.org> writes:
> On Fri, Mar 18, 2016 at 07:42:45PM -0700, Eric Anholt wrote:
>> The DPI interface involves taking a ton of our GPIOs to be used as
>> outputs, and routing display signals over them in parallel.
>>
>> Signed-off-by: Eric Anholt <eric@anholt.net>
>> ---
>> .../devicetree/bindings/display/brcm,bcm-vc4.txt | 67 +++
>> drivers/gpu/drm/vc4/Kconfig | 1 +
>> drivers/gpu/drm/vc4/Makefile | 1 +
>> drivers/gpu/drm/vc4/vc4_debugfs.c | 1 +
>> drivers/gpu/drm/vc4/vc4_dpi.c | 518 +++++++++++++++++++++
>> drivers/gpu/drm/vc4/vc4_drv.c | 1 +
>> drivers/gpu/drm/vc4/vc4_drv.h | 5 +
>> 7 files changed, 594 insertions(+)
>> create mode 100644 drivers/gpu/drm/vc4/vc4_dpi.c
>>
>> diff --git a/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt b/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
>> index 56a961a..1782c3f 100644
>> --- a/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
>> +++ b/Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt
>> @@ -35,6 +35,44 @@ Optional properties for HDMI:
>> as an interrupt/status bit in the HDMI controller
>> itself). See bindings/pinctrl/brcm,bcm2835-gpio.txt
>>
>> +Required properties for DPI:
>> +- compatible: Should be "brcm,bcm2835-dpi"
>> +- reg: Physical base address and length of the registers
>> +- clocks: a) core: The core clock the unit runs on
>> + b) pixel: The pixel clock that feeds the pixelvalve
>> +- port: Port node with a single endpoint connecting to the
>> + panel device, as defined in [1]
>> +- brcm,output-format: Output data format, must be one of:
>> + 0) disabled
>> + 1) 00000000rrrrrggggggbbbbb
>> + 2) 000rrrrr00gggggg000bbbbb
>> + 3) 00rrrrr000gggggg00bbbbb0
>> + 4) 000000rrrrrrggggggbbbbbb
>> + 5) 00rrrrrr00gggggg00bbbbbb
>> + 6) rrrrrrrrggggggggbbbbbbbb
>> +
>> +Optional properties for DPI:
>> +- brcm,rgb-order: RGB reordering, must be one of:
>> + 0) RGB
>> + 1) BGR
>> + 2) GRB
>> + 3) BRG
>
>> +- brcm,hsync-disable: Disables the hsync signal
>> +- brcm,vsync-disable: Disables the vsync signal
>> +- brcm,output-enable-disable: Disables the output enable signal
>> +- brcm,hsync-falling: Outputs the hsync signal on the falling clk edge
>> +- brcm,vsync-falling: Outputs the vsync signal on the falling clk edge
>> +- brcm,output-enable-falling: Outputs the output enable signal on the
>> + falling clk edge
>> +- brcm,output-enable-invert: Inverts the polarity of the output enable
>> + signal
>> +- brcm,pixel-clk-invert: Inverts the polarity of the pixel clk signal
>> +- brcm,output-enable-mode: Sets output enable when (vsync | hsync)
>> + instead of (hactive & vactive)
>
> These are all really properties of what the panel requires and we
> already have video timings binding that would cover some of these.
>
> Also, do you have actual users? Some of these seem like they would be
> rare or never. I've not seen panels caring about which clock edge the
> sync signals are on.
I was using output-format, rgb_order, output-enable-mode to get my panel
to work. I'm suspicious that the !output_enable_mode is not useful,
though (Note: I had documented it backwards: false is hsync|vsync, true
is hactive&vactive). That just left me with output-format. I think
.bus_format in the panel_desc can cover that, so I've now dropped all of
these brcm properties.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]
next prev parent reply other threads:[~2016-03-25 0:02 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-19 2:42 [PATCH 0/5] drm/vc4: DPI panel support Eric Anholt
2016-03-19 2:42 ` [PATCH 1/5] of: Add vendor prefix for On Tat Industrial Company Eric Anholt
2016-03-21 12:47 ` Rob Herring
2016-03-19 2:42 ` [PATCH 2/5] panel-simple: Add the 7" DPI panel from Adafruit Eric Anholt
2016-03-21 12:48 ` Rob Herring
2016-03-19 2:42 ` [PATCH 3/5] drm: Add an encoder and connector type enum for DPI Eric Anholt
2016-03-19 2:42 ` [PATCH 4/5] drm/vc4: Add DPI driver Eric Anholt
2016-03-21 12:57 ` Rob Herring
2016-03-25 0:02 ` Eric Anholt [this message]
2016-03-19 2:42 ` [PATCH 5/5] ARM: bcm2835: Add the DPI hardware to the device tree Eric Anholt
-- strict thread matches above, loose matches on Subject: below --
2016-03-25 0:23 [PATCH 0/5 v2] drm/vc4: DPI panel support Eric Anholt
2016-03-25 0:23 ` [PATCH 4/5] drm/vc4: Add DPI driver Eric Anholt
2016-03-25 15:06 ` Rob Herring
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=871t6za0h1.fsf@eliezer.anholt.net \
--to=eric@anholt.net \
--cc=airlied@linux.ie \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=galak@codeaurora.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=lee@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=pawel.moll@arm.com \
--cc=robh@kernel.org \
--cc=swarren@wwwdotorg.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