From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Richter <thor@math.tu-berlin.de>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: ns2501 DVO - success at last
Date: Tue, 14 Apr 2015 19:21:16 +0200 [thread overview]
Message-ID: <20150414172116.GM6092@phenom.ffwll.local> (raw)
In-Reply-To: <552C1260.7060309@math.tu-berlin.de>
On Mon, Apr 13, 2015 at 09:00:48PM +0200, Thomas Richter wrote:
> Hi Daniel, hi Ville,
>
> some success at last. I couldn't stop myself playing with the NatSemi 2501
> DVO in my Fujitsu S6010 and I believe I finally got a hang on this chip. I
> believe I understand now most of the undocumented registers.
>
> There are also a couple of additional features that are, apparently, not
> used by the video BIOS of the S6010, namely the chip has a ditherer on board
> - quite like the Intel Video Controller hub in the IBM R31.
> Unfortunately, to enable the scaler, the bypass must be turned off, and
> hence, parameters for a 1:1 through-mapping of the scaler are required.
>
> After quite some experimenting, I believe I found now the right settings to
> enable the scaler and configure it to pass the 1024x768 input to the output.
>
> The chip is really a bit weird. It not only requires the scaling factors,
> but also the input timings, (sync width, front/back porch for both
> horizontal and vertical) and the output timing, and the configuration of its
> PLL to sample the incoming data. Currently, most of the data I obtained by
> "trail and error", at least for the 1024x768 mode in which the bios
> configures the DVO in bypass mode.
>
> It turned out we forgot to configure a couple of registers (and some others
> are pretty much blank).
>
> Thus, my question at this time is whether there is any interface how to get
> the precise timing of the loaded video mode from the i915 module directly
> instead of second-guessing the parameters, i.e. dimensions of the frame,
> porch sizes, size of the sync pulses, pixel clock and so on.
>
> Other than that, I'll try to clean up the code I have to so far in the next
> days and release it.
In the mode structure that gets passed to your dvo driver look for the
crtc_* values, those are the exact timings you need to set up. You want to
look at the adjusted_mode since that's the one that actually gets sent to
the dvo port, the other mode is the one userspace request and will get
munged a bit.
btw the sdvo code works really similar and also has input and output
timings for the transcoder chip. You could peak at that code to see how
it's all done.
Cheers, Daniel
PS: You're replies are still attached to some random thread, which makes
them harder to spot and not miss ...
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-04-14 17:19 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-01 10:49 [PATCH 0/8] Enable DC states for skl Animesh Manna
2015-04-01 10:52 ` [PATCH 1/8] drm/i915/skl: Add support to load SKL CSR firmware Animesh Manna
2015-04-01 10:52 ` [PATCH 2/8] drm/i915/skl: Implement enable/disable for Display C5 sttate Animesh Manna
2015-04-02 15:58 ` Imre Deak
2015-04-13 13:17 ` Damien Lespiau
2015-04-13 13:51 ` Imre Deak
2015-04-14 11:50 ` Daniel Vetter
2015-04-01 10:52 ` [PATCH 3/8] drm/i915/skl: Add DC5 Trigger Sequence Animesh Manna
2015-04-02 19:33 ` Imre Deak
2015-04-10 15:11 ` [PATCH v2 " Animesh Manna
2015-04-13 10:26 ` [PATCH v3 " Animesh Manna
2015-04-13 11:33 ` Imre Deak
2015-04-13 17:41 ` Damien Lespiau
2015-04-13 15:25 ` Damien Lespiau
2015-04-13 17:49 ` Damien Lespiau
2015-04-01 10:52 ` [PATCH 4/8] drm/i915/skl: Assert the requirements to enter or exit DC5 Animesh Manna
2015-04-02 20:17 ` Imre Deak
2015-04-10 15:11 ` [PATCH v2 " Animesh Manna
2015-04-13 12:46 ` Imre Deak
2015-04-01 10:52 ` [PATCH 5/8] drm/i915/skl: Implement enable/disable for Display C6 state Animesh Manna
2015-04-02 20:20 ` Imre Deak
2015-04-01 10:52 ` [PATCH 6/8] drm/i915/skl: Add DC6 Trigger sequence Animesh Manna
2015-04-02 20:42 ` Imre Deak
2015-04-10 15:11 ` [PATCH v2 " Animesh Manna
2015-04-13 12:50 ` Imre Deak
2015-04-01 10:52 ` [PATCH 7/8] drm/i915/skl: Assert the requirements to enter or exit DC6 Animesh Manna
2015-04-02 20:49 ` Imre Deak
2015-04-10 15:12 ` [PATCH v2 " Animesh Manna
2015-04-01 10:52 ` [PATCH 8/8] drm/i915/skl: Enable runtime PM Animesh Manna
2015-04-02 20:49 ` Imre Deak
2015-04-02 15:21 ` [PATCH 1/8] drm/i915/skl: Add support to load SKL CSR firmware Imre Deak
2015-04-10 15:11 ` [PATCH v2 " Animesh Manna
2015-04-13 10:24 ` [PATCH v3 " Animesh Manna
2015-04-13 11:03 ` Imre Deak
2015-04-13 13:07 ` Animesh Manna
2015-04-13 12:37 ` Imre Deak
2015-04-13 16:34 ` Damien Lespiau
2015-04-13 16:52 ` Imre Deak
2015-04-13 17:02 ` Damien Lespiau
2015-04-13 17:15 ` Imre Deak
2015-04-13 17:22 ` Damien Lespiau
2015-04-14 9:16 ` Animesh Manna
2015-04-14 10:07 ` Damien Lespiau
[not found] ` <20804_1428943986_552BF472_20804_13643_1_1428943974.12269.9.camel@ideak-mobl>
2015-04-13 19:00 ` ns2501 DVO - success at last Thomas Richter
2015-04-14 17:21 ` Daniel Vetter [this message]
2015-04-10 15:10 ` [PATCH v2 0/8] Enable DC states for skl Animesh Manna
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=20150414172116.GM6092@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=thor@math.tu-berlin.de \
/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