<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/gpu/drm/i915/intel_bios.c, branch linux-4.7.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.7.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.7.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2016-06-10T07:41:15Z</updated>
<entry>
<title>drm/i915: Extract physical display dimensions from VBT</title>
<updated>2016-06-10T07:41:15Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-05-31T09:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=356d27bbfe332de0f2f78e55636e581960c9774e'/>
<id>urn:sha1:356d27bbfe332de0f2f78e55636e581960c9774e</id>
<content type='text'>
The VBT has these mysterious H/V image sizes as part of the display
timings. Looking at some dumps those appear to be the physical
dimensions in mm. Which makes sense since the timing descriptor matches
the format used by EDID detailed timing descriptor, which defines these
as "H/V Addressable Video Image Size in mm".

So let's use that information from the panel fixed mode to get the
physical dimensions for LVDS/eDP/DSI displays. And with that we can
fill out the display_info so that userspace can get at it via
GetConnector.

v2: Use (hi&lt;&lt;8)|lo instead of broken (hi&lt;&lt;4)+lo
    Handle LVDS and eDP too

Cc: Stephen Just &lt;stephenjust@gmail.com&gt;
Tested-by: Stephen Just &lt;stephenjust@gmail.com&gt;
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96255
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464685714-30507-1-git-send-email-ville.syrjala@linux.intel.com
Reviewed-by: Mika Kahola &lt;mika.kahola@intel.com&gt;
(cherry picked from commit df457245b5b7515cf97763ebd8975229e34d4cf3)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Check VBT for port presence in addition to the strap on VLV/CHV</title>
<updated>2016-06-10T07:40:54Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-06-03T09:17:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a5aac5ab876ad95b7f5e8d862afb07248ee9cae2'/>
<id>urn:sha1:a5aac5ab876ad95b7f5e8d862afb07248ee9cae2</id>
<content type='text'>
Apparently some CHV boards failed to hook up the port presence straps
for HDMI ports as well (earlier we assumed this problem only affected
eDP ports). So let's check the VBT in addition to the strap, and if
either one claims that the port is present go ahead and register the
relevant connector.

While at it, change port D to register DP before HDMI as we do for ports
B and C since
commit 457c52d87e5d ("drm/i915: Only ignore eDP ports that are connected")

Also print a debug message when we register a HDMI connector to aid
in diagnosing missing/incorrect ports. We already had such a print for
DP/eDP.

v2: Improve the comment in the code a bit, note the port D change in
    the commit message

Cc: Radoslav Duda &lt;radosd@radosd.com&gt;
Tested-by: Radoslav Duda &lt;radosd@radosd.com&gt;
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96321
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464945463-14364-1-git-send-email-ville.syrjala@linux.intel.com
Reviewed-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
(cherry picked from commit 22f35042593c2b369861f0b9740efb8065a42db0)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Silence "unexpected child device config size" for VBT on 845g</title>
<updated>2016-06-10T07:38:29Z</updated>
<author>
<name>Chris Wilson</name>
</author>
<published>2016-06-01T17:08:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=36a5fc5c439c7a95cb9b64414fad4067da6ae3ce'/>
<id>urn:sha1:36a5fc5c439c7a95cb9b64414fad4067da6ae3ce</id>
<content type='text'>
My old 845g complains that the child_device_size inside its VBT,
version 110, is incorrect. Let's fiddle with the version matching such
that it works with this VBT (i.e. treat BIOS v110 as having the same size
as v108).

Fixes [drm:intel_bios_init] *ERROR* Unexpected child device config
size 27 (expected 33 for VBT version 110)

Whether this is correct, no one knows - but it works for this particular
machine.

Signed-off-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Acked-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1464800923-6054-1-git-send-email-chris@chris-wilson.co.uk
(cherry picked from commit fa05178c5dc3d1a3ad370f101cad01cf9dd3bbf9)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Determine DP++ type 1 DVI adaptor presence based on VBT</title>
<updated>2016-05-23T08:10:48Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-05-04T11:45:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=55d7f30ee1096474cb5bdbca46b60f23ce8b1f83'/>
<id>urn:sha1:55d7f30ee1096474cb5bdbca46b60f23ce8b1f83</id>
<content type='text'>
DP dual mode type 1 DVI adaptors aren't required to implement any
registers, so it's a bit hard to detect them. The best way would
be to check the state of the CONFIG1 pin, but we have no way to
do that. So as a last resort, check the VBT to see if the HDMI
port is in fact a dual mode capable DP port.

v2: Deal with VBT code reorganization
    Deal with DRM_DP_DUAL_MODE_UNKNOWN
    Reduce DEVICE_TYPE_DP_DUAL_MODE_BITS a bit
    Accept both DP and HDMI dvo_port in VBT as my BSW
    at least declare its DP port as HDMI :(
v3: Ignore DEVICE_TYPE_NOT_HDMI_OUTPUT (Shashank)

Cc: stable@vger.kernel.org
Cc: Tore Anderson &lt;tore@fud.no&gt;
Reported-by: Tore Anderson &lt;tore@fud.no&gt;
Fixes: 7a0baa623446 ("Revert "drm/i915: Disable 12bpc hdmi for now"")
Cc: Paulo Zanoni &lt;paulo.r.zanoni@intel.com&gt;
Cc: Shashank Sharma &lt;shashank.sharma@intel.com&gt;
Cc: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1462362322-31278-1-git-send-email-ville.syrjala@linux.intel.com
Reviewed-by: Shashank Sharma &lt;shashank.sharma@intel.com&gt;
(cherry picked from commit d61992565bd3cc5b66d74ed2e96df043c2a207e2)
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Get panel_type from OpRegion panel details</title>
<updated>2016-04-12T10:23:43Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-04-11T07:23:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a05628195a0d9f3173dd9aa76f482aef692e46ee'/>
<id>urn:sha1:a05628195a0d9f3173dd9aa76f482aef692e46ee</id>
<content type='text'>
We've had problems on several occasions with using the panel type
from the VBT block 40. Usually it seems to be 2, which often
doesn't give us the correct timings for the panel. After some
more digging I found a way to get a panel type via the OpRegion
SWSCI GBDA "Get Panel Details" method. Let's try to use it.

The spec has this to say about the output:
"Bits [15:8] - Panel Type
 Bits contain the panel type user setting from CMOS
 00h = Not Valid, use default Panel Type &amp; Timings from VBT
 01h - 0Fh = Panel Number"

Another version of the spec lists the valid range as 1-16, which makes
more sense since VBT supports 16 panels. Based on actual results
from Rob's G45, 1-16 is what we need to accept.

The other bits in the output don't look relevant for the problem at
hand.

The input is specified as:
"Bits [31:4] - Reserved
 Reserved (must be zero)
 Bits [3:0] - Panel Number
 These bits contain the sequential index of Panel, starting at 0 and
 counting upwards from the first integrated Internal Flat-Panel Display
 Encoder present, and then from the first external Display Encoder
 (e.g., S/DVO-B then S/DVO-C) which supports Internal Flat-Panels.
 0h - 0Fh = Panel number"

For now I've just hardcoded the input panel number as 0. That would seem
like a decent choise for LVDS. Not so sure about eDP when port != A.

v2: Accept values 1-16
    Filter out bogus results in opregion code (Jani)
    Add debug logging for all the different branches (Jani)

Cc: Jani Nikula &lt;jani.nikula@linux.intel.com&gt;
Cc: Rob Kramer &lt;rob@solution-space.com&gt;
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94825
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1460359431-11003-1-git-send-email-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Tested-by: Rob Kramer &lt;rob@solution-space.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Replace the static panel_type variable with dev_priv-&gt;vbt.panel_type</title>
<updated>2016-04-12T10:23:43Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-04-08T13:28:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3e845c7a4095b7f051a61c8eb07d6d379c6e014f'/>
<id>urn:sha1:3e845c7a4095b7f051a61c8eb07d6d379c6e014f</id>
<content type='text'>
Store the extracted panel_type under dev_priv.vbt instead of keeping
around a static variable for it.

Cc: Rob Kramer &lt;rob@solution-space.com&gt;
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Reviewed-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/i915: Reject panel_type &gt; 0xf from VBT</title>
<updated>2016-04-12T10:23:42Z</updated>
<author>
<name>Ville Syrjälä</name>
</author>
<published>2016-04-11T07:22:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eeeebea6cbe0d85817e2fa8eee8a2f5c9d88a44a'/>
<id>urn:sha1:eeeebea6cbe0d85817e2fa8eee8a2f5c9d88a44a</id>
<content type='text'>
VBT can only contain 16 panel entries, indexed with the panel_type.
To play it safe we should reject panel_type &gt; 0xf, so that we don't
read past the valid data.

v2: Add debug logging (Jani)

Cc: Jani Nikula &lt;jani.nikula@linux.intel.com&gt;
Cc: Rob Kramer &lt;rob@solution-space.com&gt;
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Reviewed-by: Jani Nikula &lt;jani.nikula@intel.com&gt; (v1)
Link: http://patchwork.freedesktop.org/patch/msgid/1460359329-10817-1-git-send-email-ville.syrjala@linux.intel.com
</content>
</entry>
<entry>
<title>drm/i915: Set invert bit for hpd based on VBT</title>
<updated>2016-04-06T11:22:48Z</updated>
<author>
<name>Shubhangi Shrivastava</name>
</author>
<published>2016-03-31T10:41:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d252bf68b75792108ae2821c3a6e1cdc58e88cb9'/>
<id>urn:sha1:d252bf68b75792108ae2821c3a6e1cdc58e88cb9</id>
<content type='text'>
This patch sets the invert bit for hpd detection for each port
based on VBT configuration. Since each AOB can be designed to
depend on invert bit or not, it is expected if an AOB requires
invert bit, the user will set respective bit in VBT.

v2: Separated VBT parsing from the rest of the logic. (Jani)

v3: Moved setting invert bit logic to bxt_hpd_irq_setup()
    and changed its logic to avoid looping twice. (Ville)

v4: Changed the logic to mask out the bits first and then
    set them to remove need of temporary variable. (Ville)

v5: Moved defines to existing set of defines for the register
    and added required breaks. (Ville)

Signed-off-by: Sivakumar Thulasimani &lt;sivakumar.thulasimani@intel.com&gt;
Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Shubhangi Shrivastava &lt;shubhangi.shrivastava@intel.com&gt;
Reviewed-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
[Jani: fixed some checkpatch noise, added kernel-doc.]
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1459420907-11383-2-git-send-email-shubhangi.shrivastava@intel.com
</content>
</entry>
<entry>
<title>drm/i915: Update VBT fields for child devices</title>
<updated>2016-04-06T11:10:15Z</updated>
<author>
<name>Shubhangi Shrivastava</name>
</author>
<published>2016-03-31T10:41:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4e27bd50739e41250a93dd131d6a4180e288cb10'/>
<id>urn:sha1:4e27bd50739e41250a93dd131d6a4180e288cb10</id>
<content type='text'>
This patch adds new fields that are not yet added in drm code
in child devices struct

Signed-off-by: Sivakumar Thulasimani &lt;sivakumar.thulasimani@intel.com&gt;
Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Shubhangi Shrivastava &lt;shubhangi.shrivastava@intel.com&gt;
Reviewed-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1459420907-11383-1-git-send-email-shubhangi.shrivastava@intel.com
</content>
</entry>
<entry>
<title>drm/i915: remove unused dev_priv-&gt;render_reclock_avail</title>
<updated>2016-03-29T12:12:40Z</updated>
<author>
<name>Jani Nikula</name>
</author>
<published>2016-03-24T15:50:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=583349896482ed1d6af3cd75b2a15bb334df2777'/>
<id>urn:sha1:583349896482ed1d6af3cd75b2a15bb334df2777</id>
<content type='text'>
Set from VBT, but never used. Good riddance.

Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1458834623-8734-5-git-send-email-jani.nikula@intel.com
</content>
</entry>
</feed>
