All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Pilcher <arequipeno@gmail.com>
To: Adam Jackson <ajax@redhat.com>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: Enhancing EDID quirk functionality
Date: Mon, 07 May 2012 14:50:09 -0500	[thread overview]
Message-ID: <4FA82771.7010704@gmail.com> (raw)
In-Reply-To: <4FA2DFA8.9090308@redhat.com>

On 05/03/2012 02:42 PM, Adam Jackson wrote:
> This looks good, thank you for taking it on.

It was either that or give up on my big display, so ... you're welcome.

> I'd like to see documentation for the bit values of the quirks as well.
> And, ideally, this would also have some runtime API for manipulating the
> quirk list, so that way you can test new quirks without needing a reboot
> cycle.

I agree that the bit values should be documented.  I'm not sure where
that documentation should go, however, since I can't find any
documentation of the existing drm module parameters.  Tell me where it
should go, and I'll happily write the doc.

I also agree that it would be nice to be able to manipulate the quirk
list at runtime, and I did think about trying to enable that.  I held
off for a couple of reasons:

1) I'm a total noob at kernel code, so things like in-kernel locking,
   sysfs, memory management, etc., that would be required for a more
   dynamic API are all new to me.

   That said, I'm more that willing to give it a go, if I can get some
   guidance on those (and similar) topics.

2) I'm not sure how a runtime API should work.  The simplest possibility
   is to just take a string, parse it, and overwrite the old extra
   quirk list with the new list.  The downside to this is that all of
   the existing extra quirks need to be repeated to change a single
   quirk.

> To close the loop all the way on that I'd also want to be able to scrape
> the quirk list back out from that API, but that's not completely clean
> right now.

Sound like a couple of sysfs files to me, one for the built-in quirks
and one for the extra quirks -- maybe one quirk per line?  See my
comments about the sysfs API above.

> We're being a little cavalier with the quirk list as it
> stands because we don't differentiate among phy layers, and I can easily
> imagine a monitor that needs a quirk on DVI but where the same quirk on
> the same monitors' VGA would break it.  I don't think this has caused
> problems yet, but.

Now you're above my pay grade.  What little I've read discovered about
the way DisplayPort, HDMI, VGA, and DVI play together makes me think
this is a nightmare best deferred, hopefully forever.

> InfoFrames are not valid for non-HDMI sinks, so yes, I'd call that a bug.

That's pretty much what I figured.

> Where the EDID for DP-1 appears to be truncated: the "extension" field
> (second byte from the end) is 1 as you'd expect for an HDMI monitor, but
> there's no extension block.  How big of a file do you get from
> /sys/class/drm/*/edid for that port?

The EDID data in sysfs is 256 bytes, which I believe means that it does
include the extension block.

I just tried connecting an HDMI TV to my laptop, and I saw the same
behavior -- 256-byte edid file in sysfs, but "xrandr --verbose" only
shows 128 bytes.  When I attach the same TV to my workstation with Intel
"HD 2000" graphics, "xrandr --verbose" shows all 256 bytes of EDID data.

So it appears that the full data is being read by both systems, but the
behavior of xrandr (or presumably whatever API xrandr uses to get the
EDID data that it displays) differs between the two drivers.  Fun.

Thanks!

-- 
========================================================================
Ian Pilcher                                         arequipeno@gmail.com
"If you're going to shift my paradigm ... at least buy me dinner first."
========================================================================

  reply	other threads:[~2012-05-07 19:50 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-19 19:16 Enhancing EDID quirk functionality Ian Pilcher
2012-04-24  9:07 ` Lars-Peter Clausen
2012-04-24 19:00   ` Ian Pilcher
2012-05-03 18:01     ` Ian Pilcher
2012-05-03 19:42       ` Adam Jackson
2012-05-07 19:50         ` Ian Pilcher [this message]
2012-05-07 21:38           ` Adam Jackson
2012-08-10  4:23             ` Ian Pilcher
2012-08-10  4:23               ` [PATCH] drm: EDID quirk improvements Ian Pilcher
2012-08-10 18:44                 ` Ian Pilcher
2012-08-10 18:44                   ` Ian Pilcher
2012-08-11  8:31                     ` Paul Menzel
2012-08-11 15:38                       ` Ian Pilcher
2012-08-11 19:52                         ` Paul Menzel
2012-08-11 19:37                     ` Paul Menzel
2012-08-12  4:30                       ` [PATCH v3 0/2] Enhanced EDID quirk functionality Ian Pilcher
2012-08-12  4:30                         ` [PATCH v3 1/2] drm: Add user-defined EDID quirks capability Ian Pilcher
2012-08-12 15:39                           ` Paul Menzel
2012-08-12  4:30                         ` [PATCH v3 2/2] drm: Add EDID quirks to disable HDMI audio and InfoFrames Ian Pilcher
2012-08-12 15:45                           ` Paul Menzel
2012-08-12  6:58                         ` [PATCH v3 0/2] Enhanced EDID quirk functionality Paul Menzel
2012-08-12 20:07                           ` [PATCH v4 0/3] " Ian Pilcher
2012-08-12 20:07                             ` [PATCH v4 1/3] drm: Add user-defined EDID quirks capability Ian Pilcher
2012-08-14 15:13                               ` Paul Menzel
2012-08-14 15:45                                 ` Ian Pilcher
2012-08-15  6:41                                   ` Paul Menzel
2012-08-12 20:07                             ` [PATCH v4 2/3] drm: Add EDID quirks to disable HDMI audio and InfoFrames Ian Pilcher
2012-08-12 20:08                             ` [PATCH v4 3/3] drm: Add EDID quirk for LG L246WP Ian Pilcher
2012-09-04 14:52                               ` Paul Menzel
2012-08-12 21:29                             ` [PATCH v4 0/3] Enhanced EDID quirk functionality Christian König
2012-08-12 21:31                             ` Paul Menzel
2012-08-13 14:39                               ` Ian Pilcher

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=4FA82771.7010704@gmail.com \
    --to=arequipeno@gmail.com \
    --cc=ajax@redhat.com \
    --cc=dri-devel@lists.freedesktop.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.