Lukas Wunner
5cb8eaa227
drm/edid: Switch DDC when reading the EDID
Originally by Seth Forshee <seth.forshee@canonical.com>, 2012-10-04:
Some dual graphics machines support muxing the DDC separately from
the display, so make use of this functionality when reading the EDID
on the inactive GPU. Also serialize drm_get_edid() with a mutex to
avoid races on the DDC mux state.
Modified by Dave Airlie <airlied@gmail.com>, 2012-12-22:
I can't figure out why I didn't like this, but I rewrote this [...]
to lock/unlock the ddc lines [...]. I think I'd prefer something
like that otherwise the interface got really ugly.
Modified by Lukas Wunner <lukas@wunner.de>, 2015-04 - 2015-09:
v3: Move vga_switcheroo calls to a wrapper around drm_get_edid()
which drivers can call on muxed machines. This avoids other
drivers having to go through the vga_switcheroo motions even
though they are never used on a muxed platform
(Thierry Reding, Daniel Vetter, Alex Deucher)
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=88861
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61115
Tested-by: Pierre Moreau <pierre.morrow@free.fr>
[MBP 5,3 2009 nvidia MCP79 + G96 pre-retina 15"]
Tested-by: William Brown <william@blackhats.net.au>
[MBP 8,2 2011 intel SNB + amd turks pre-retina 15"]
Tested-by: Lukas Wunner <lukas@wunner.de>
[MBP 9,1 2012 intel IVB + nvidia GK107 pre-retina 15"]
Cc: Seth Forshee <seth.forshee@canonical.com>
Cc: Dave Airlie <airlied@gmail.com>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/b898d0da4c134f2642d0122479006863e1830723.1452525860.git.lukas@wunner.de
2016-02-09 11:21:09 +01:00
..
2015-08-27 13:01:57 +10:00
2013-08-19 09:10:32 +10:00
2016-01-13 12:21:21 -05:00
2014-09-12 15:28:12 +02:00
2015-09-30 10:49:22 +02:00
2016-01-20 08:55:43 +08:00
2016-01-06 16:37:39 +01:00
2016-02-02 10:08:43 -05:00
2010-08-10 08:20:20 +10:00
2015-12-11 09:32:53 +01:00
2016-02-09 11:21:09 +01:00
2014-12-09 09:56:46 +10:00
2015-11-24 11:41:51 +01:00
2016-02-05 15:23:49 +10:00
2015-09-09 14:53:54 +02:00
2015-12-15 13:41:17 +01:00
2015-11-24 11:47:38 +01:00
2015-12-08 16:07:51 +01:00
2016-02-05 15:23:48 +10:00
2014-11-15 09:29:14 +10:00
2014-11-13 13:27:17 +01:00
2015-11-24 11:41:49 +01:00
2012-11-28 18:36:05 +10:00
2014-09-24 11:43:07 +10:00
2015-06-30 19:44:59 -07:00
2015-11-24 10:25:14 +01:00
2015-11-25 16:22:58 +01:00
2015-12-11 09:32:53 +01:00
2016-01-05 16:21:35 +01:00
2015-12-02 23:10:59 +01:00
2015-10-20 12:01:29 +02:00
2013-12-18 11:35:45 +10:00
2015-04-02 19:04:12 +02:00
2015-08-12 12:24:05 -04:00
2015-12-08 16:07:52 +01:00
2015-11-24 11:47:46 +01:00
2015-10-19 11:00:44 +02:00
2016-02-08 09:55:46 +01:00
2013-09-05 13:43:44 +09:00
2014-03-17 20:11:57 +01:00
2015-12-10 13:39:27 +01:00
2014-02-09 15:11:30 +01:00
2015-12-04 19:03:50 +00:00
2015-06-26 10:41:13 +02:00