From: Francisco Jerez <currojerez-sGOZH3hwPm2sTnJN9+BGXg@public.gmane.org>
To: Dirk Thierbach <dthierbach-Mmb7MZpHnFY@public.gmane.org>,
"nouveau@lists.freedesktop.org"
<nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
Subject: Re: TV-Out on a GeForce 2MX supported?
Date: Thu, 06 Mar 2014 00:00:28 +0100 [thread overview]
Message-ID: <871tyg6yk3.fsf@riseup.net> (raw)
In-Reply-To: <20140305193410.GA13365@feanor>
[-- Attachment #1.1.1: Type: text/plain, Size: 3122 bytes --]
Dirk Thierbach <dthierbach-Mmb7MZpHnFY@public.gmane.org> writes:
>[...]
>> The stuff about overscan/etc are exposed as KMS properties (which in
>> turn appear in xrandr) and not specific to the BT869.
>
> The problem is that there's no good way to just say "I want this
> overscan" and then get a valid set of register values, because of
> the timing constraints. Nvtv includes a sort of "calculator" that
> tries to calculate a collection of sets of sensible values as close
> to a desired overscan as possible, but you still have to check (and
> tweak, if necessary) every of those sets to see if it actually works.
>
It's been quite a while since the last time I messed about with this
code, but the TV encoders we already support (chrontel and nvidia's)
have similar limitations, and IIRC we solve it by doing two different
things:
1. We don't actually set the exact mode passed by the user. Instead,
the mode (both the CRTC mode and the final output mode) can be
adjusted to the "closest" supported mode compatible with the
hardware, given the specified properties.
2. For some properties (e.g. the TV standard) where making small
adjustments to the "virtual" mode exposed to the user wouldn't work,
(e.g. because the changes would involve changing the display
width/height), we change the list of supported modes which is
returned to userspace in response to a property change.
>> The i2c driver is supposed to expose a ->mode_set() function, which
>> takes a drm_display_mode.
>
> We had this discussion on the xorg mailing list back then, I think
> even before there was kernel mode setting. In short, xrandr properties
> and X-style modelines are just not enough to be able to program the
> BT/CX chip sensibly. You need a different infrastructure.
>
> As I said, as a workaround one can use a number of predefined modes
> baked into the kernel. That's better than no support at all, but not as
> good as being able to program the BT/CX chip freely.
>
The current model doesn't require the encoder driver to have a
predefined list of modes -- it's just highly recommended if you don't
want to force the user to input mode lines manually. You just need some
means to compute the optimal timings algorithmically given the connector
properties and a rough description of the mode. Sure, using a fixed
list of modes from which you pick the "closest" to the user's settings
might be the easiest way to achieve that on some chips [ch7006 does
precisely that IIRC], and that might be a slight underuse of the
flexibility of some hardware, but the API doesn't force you to do that.
> And then there's the Philips TV encoder chip, which has a similar freedom
> in programming.
>
> Of course, given that analog TVs are dying out, the question is how
> much effort one should put into this whole thing in the first place.
>
> - Dirk
>
>
> _______________________________________________
> Nouveau mailing list
> Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
> http://lists.freedesktop.org/mailman/listinfo/nouveau
[-- Attachment #1.2: Type: application/pgp-signature, Size: 229 bytes --]
[-- Attachment #2: Type: text/plain, Size: 181 bytes --]
_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
next prev parent reply other threads:[~2014-03-05 23:00 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-03 22:41 TV-Out on a GeForce 2MX supported? Nils Krafft
[not found] ` <20140303224123.GA5720-0i3IwDS6Bd4yxn3+5HPDWA@public.gmane.org>
2014-03-05 5:40 ` Ilia Mirkin
[not found] ` <CAKb7Uvj2FKoRt2O6YqiamgL=svZqmxjxoqdxySN3Lidu+bWxsQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-05 11:06 ` Dirk Thierbach
2014-03-05 17:46 ` Ilia Mirkin
[not found] ` <CAKb7Uvi97Yn8MOfhMiXLs+=VAd0LWEnmnF7iHyR58eKA_Pk_jg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-05 19:34 ` Dirk Thierbach
2014-03-05 23:00 ` Francisco Jerez [this message]
[not found] ` <871tyg6yk3.fsf-sGOZH3hwPm2sTnJN9+BGXg@public.gmane.org>
2014-03-06 9:19 ` Dirk Thierbach
2014-03-05 19:57 ` Nils Krafft
[not found] ` <20140305195756.GA3045-0i3IwDS6Bd4yxn3+5HPDWA@public.gmane.org>
2014-03-05 20:39 ` Ilia Mirkin
[not found] ` <CAKb7UvieoTobCuzfNty0NGLucqOHpq=hLeiKx3-jcT1dtsMShw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-10 20:18 ` Nils Krafft
2014-03-05 22:08 ` Dirk Thierbach
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=871tyg6yk3.fsf@riseup.net \
--to=currojerez-sgozh3hwpm2stnjn9+bgxg@public.gmane.org \
--cc=dthierbach-Mmb7MZpHnFY@public.gmane.org \
--cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.