summaryrefslogtreecommitdiffstats
path: root/docs/hcl/gm45_lcd.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/hcl/gm45_lcd.html')
-rw-r--r--docs/hcl/gm45_lcd.html297
1 files changed, 297 insertions, 0 deletions
diff --git a/docs/hcl/gm45_lcd.html b/docs/hcl/gm45_lcd.html
new file mode 100644
index 0000000..9d85702
--- /dev/null
+++ b/docs/hcl/gm45_lcd.html
@@ -0,0 +1,297 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+
+ <style type="text/css">
+ @import url('../css/main.css');
+ </style>
+
+ <title>ThinkPad T500</title>
+</head>
+
+<body>
+
+ <div class="section">
+ <h1 id="pagetop">LCD compatibility on GM45 laptops</h1>
+
+ <p>
+ On the T400 and T500 (maybe others), some of the higher resolution panels
+ (e.g. 1440x900, 1680x1050, 1920x1200) fail in libreboot.
+ </p>
+
+ <p>
+ <a href="index.html">Back to previous index</a>.
+ </p>
+ </div>
+
+ <div class="section">
+ <h1>The problem</h1>
+ <p>
+ In some cases, backlight turns on during boot, sometimes not. In all cases,
+ no display is shown in GRUB, nor in GNU/Linux.
+ </p>
+ <h1>
+ Current workaround:
+ </h1>
+ <p>
+ T500/R400 are clones of the T400. See <b>coreboot/src/mainboard/lenovo/t400/devicetree.cb</b> in libreboot,
+ and note that <b>register "gfx.lvds_dual_channel" = "0"</b> - in other words, single channel LVDS mode is
+ enforced. This works on the lower resolution panels (1280x800), but not on the higher ones.
+ </p>
+ <p>
+ For the high-res panels, re-compiling with <b>register "gfx.lvds_dual_channel" = "1"</b> partially solves
+ the problem for those displays; there is still no display in GRUB, but once the kernel takes over, there
+ is a display.
+ </p>
+ <p>
+ Linux (kernel) has its own init code (including EDID parsing). The current suspicion is that coreboot's
+ own initialization code has buggy EDID parsing in some way, such that the proper settings for the panel
+ are not used, leading to the failure. The actual graphics initialization does work.
+ </p>
+ </div>
+
+ <div class="section">
+
+ <h2 id="edid">EDID</h2>
+
+ <p>
+ One T500 had a screen (1920x1200) that is currently incompatible. Working to fix it. EDID:
+ </p>
+<pre>
+user@user-ThinkPad-T500:~/Desktop$ sudo i2cdump -y 2 0x50
+No size specified (using byte-data access)
+ 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
+00: XX ff ff ff ff ff ff 00 30 ae 55 40 00 00 00 00 X.......0?U@....
+10: 00 11 01 03 80 21 15 78 ea ba 70 98 59 52 8c 28 .????!?x??p?YR?(
+20: 25 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01 %PT...??????????
+30: 01 01 01 01 01 01 e7 3a 80 8c 70 b0 14 40 1e 50 ???????:??p??@?P
+40: 24 00 4b cf 10 00 00 19 16 31 80 8c 70 b0 14 40 $.K??..??1??p??@
+50: 1e 50 24 00 4b cf 10 00 00 19 00 00 00 0f 00 d1 ?P$.K??..?...?.?
+60: 0a 32 d1 0a 28 11 01 00 32 0c 00 00 00 00 00 fe ?2??(??.2?.....?
+70: 00 4c 50 31 35 34 57 55 31 2d 54 4c 42 31 00 9a .LP154WU1-TLB1.?
+80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
+</pre>
+ <p>
+ What happens: backlight turns on at boot, then turns off. At no point is there
+ a working visual display.
+ </p>
+
+ <p>
+ Another incompatible screen (EDID) 1680 x 1050 with the same issue:
+ </p>
+<pre>
+EDID:
+00 ff ff ff ff ff ff 00 30 ae 53 40 00 00 00 00
+00 11 01 03 80 21 15 78 ea cd 75 91 55 4f 8b 26
+21 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
+01 01 01 01 01 01 a8 2f 90 e0 60 1a 10 40 20 40
+13 00 4b cf 10 00 00 19 b7 27 90 e0 60 1a 10 40
+20 40 13 00 4b cf 10 00 00 19 00 00 00 0f 00 b3
+0a 32 b3 0a 28 14 01 00 4c a3 50 33 00 00 00 fe
+00 4c 54 4e 31 35 34 50 33 2d 4c 30 32 0a 00 7e
+Extracted contents:
+header: 00 ff ff ff ff ff ff 00
+serial number: 30 ae 53 40 00 00 00 00 00 11
+version: 01 03
+basic params: 80 21 15 78 ea
+chroma info: cd 75 91 55 4f 8b 26 21 50 54
+established: 00 00 00
+standard: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+descriptor 1: a8 2f 90 e0 60 1a 10 40 20 40 13 00 4b cf 10 00 00 19
+descriptor 2: b7 27 90 e0 60 1a 10 40 20 40 13 00 4b cf 10 00 00 19
+descriptor 3: 00 00 00 0f 00 b3 0a 32 b3 0a 28 14 01 00 4c a3 50 33
+descriptor 4: 00 00 00 fe 00 4c 54 4e 31 35 34 50 33 2d 4c 30 32 0a
+extensions: 00
+checksum: 7e
+
+Manufacturer: LEN Model 4053 Serial Number 0
+Made week 0 of 2007
+EDID version: 1.3
+Digital display
+Maximum image size: 33 cm x 21 cm
+Gamma: 220%
+Check DPMS levels
+DPMS levels: Standby Suspend Off
+Supported color formats: RGB 4:4:4, YCrCb 4:2:2
+First detailed timing is preferred timing
+Established timings supported:
+Standard timings supported:
+Detailed timings
+Hex of detail: a82f90e0601a1040204013004bcf10000019
+Did detailed timing
+Detailed mode (IN HEX): Clock 122000 KHz, 14b mm x cf mm
+ 0690 06b0 06f0 0770 hborder 0
+ 041a 041b 041e 042a vborder 0
+ -hsync -vsync
+Hex of detail: b72790e0601a1040204013004bcf10000019
+Detailed mode (IN HEX): Clock 122000 KHz, 14b mm x cf mm
+ 0690 06b0 06f0 0770 hborder 0
+ 041a 041b 041e 042a vborder 0
+ -hsync -vsync
+Hex of detail: 0000000f00b30a32b30a281401004ca35033
+Manufacturer-specified data, tag 15
+Hex of detail: 000000fe004c544e31353450332d4c30320a
+ASCII string: LTN154P3-L02
+Checksum
+Checksum: 0x7e (valid)
+WARNING: EDID block does NOT fully conform to EDID 1.3.
+ Missing name descriptor
+ Missing monitor ranges
+bringing up panel at resolution 1680 x 1050
+Borders 0 x 0
+Blank 224 x 16
+Sync 64 x 3
+Front porch 32 x 1
+Spread spectrum clock
+Single channel
+Polarities 1, 1
+Data M1=2132104, N1=8388608
+Link frequency 270000 kHz
+Link M1=236900, N1=524288
+Pixel N=9, M1=24, M2=8, P1=1
+Pixel clock 243809 kHz
+waiting for panel powerup
+panel powered up
+</pre>
+
+ <p>
+ For comparison, here is a working display (T400 screen, but was
+ connected to a T500. Some T500 displays also work, but no EDID
+ available on this page yet):
+ </p>
+<pre>
+EDID:
+00 ff ff ff ff ff ff 00 30 ae 31 40 00 00 00 00
+00 12 01 03 80 1e 13 78 ea b3 85 95 58 53 8a 28
+25 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
+01 01 01 01 01 01 26 1b 00 7d 50 20 16 30 30 20
+36 00 30 be 10 00 00 18 8b 16 00 7d 50 20 16 30
+30 20 36 00 30 be 10 00 00 18 00 00 00 0f 00 81
+0a 32 81 0a 28 14 01 00 30 e4 28 01 00 00 00 fe
+00 4c 50 31 34 31 57 58 33 2d 54 4c 52 31 00 d8
+Extracted contents:
+header: 00 ff ff ff ff ff ff 00
+serial number: 30 ae 31 40 00 00 00 00 00 12
+version: 01 03
+basic params: 80 1e 13 78 ea
+chroma info: b3 85 95 58 53 8a 28 25 50 54
+established: 00 00 00
+standard: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+descriptor 1: 26 1b 00 7d 50 20 16 30 30 20 36 00 30 be 10 00 00 18
+descriptor 2: 8b 16 00 7d 50 20 16 30 30 20 36 00 30 be 10 00 00 18
+descriptor 3: 00 00 00 0f 00 81 0a 32 81 0a 28 14 01 00 30 e4 28 01
+descriptor 4: 00 00 00 fe 00 4c 50 31 34 31 57 58 33 2d 54 4c 52 31
+extensions: 00
+checksum: d8
+
+Manufacturer: LEN Model 4031 Serial Number 0
+Made week 0 of 2008
+EDID version: 1.3
+Digital display
+Maximum image size: 30 cm x 19 cm
+Gamma: 220%
+Check DPMS levels
+DPMS levels: Standby Suspend Off
+Supported color formats: RGB 4:4:4, YCrCb 4:2:2
+First detailed timing is preferred timing
+Established timings supported:
+Standard timings supported:
+Detailed timings
+Hex of detail: 261b007d502016303020360030be10000018
+Did detailed timing
+Detailed mode (IN HEX): Clock 69500 KHz, 130 mm x be mm
+ 0500 0530 0550 057d hborder 0
+ 0320 0323 0329 0336 vborder 0
+ -hsync -vsync
+Hex of detail: 8b16007d502016303020360030be10000018
+Detailed mode (IN HEX): Clock 69500 KHz, 130 mm x be mm
+ 0500 0530 0550 057d hborder 0
+ 0320 0323 0329 0336 vborder 0
+ -hsync -vsync
+Hex of detail: 0000000f00810a32810a2814010030e42801
+Manufacturer-specified data, tag 15
+Hex of detail: 000000fe004c503134315758332d544c5231
+ASCII string: LP141WX3-TLR1
+Checksum
+Checksum: 0xd8 (valid)
+WARNING: EDID block does NOT fully conform to EDID 1.3.
+ Missing name descriptor
+ Missing monitor ranges
+bringing up panel at resolution 1280 x 800
+Borders 0 x 0
+Blank 125 x 22
+Sync 32 x 6
+Front porch 48 x 3
+Spread spectrum clock
+Single channel
+Polarities 1, 1
+Data M1=1214600, N1=8388608
+Link frequency 270000 kHz
+Link M1=134955, N1=524288
+Pixel N=10, M1=14, M2=11, P1=1
+Pixel clock 138857 kHz
+waiting for panel powerup
+panel powered up
+</pre>
+
+ </div>
+
+ <div class="section">
+
+ <p>
+ Copyright &copy; 2015 Francis Rowe &lt;info@gluglug.org.uk&gt;<br/>
+ Permission is granted to copy, distribute and/or modify this document
+ under the terms of the GNU Free Documentation License, Version 1.3
+ or any later version published by the Free Software Foundation;
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+ A copy of the license can be found at <a href="../gfdl-1.3.txt">../gfdl-1.3.txt</a>
+ </p>
+
+ <p>
+ Updated versions of the license (when available) can be found at
+ <a href="https://www.gnu.org/licenses/licenses.html">https://www.gnu.org/licenses/licenses.html</a>
+ </p>
+
+ <p>
+ UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
+ EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
+ AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
+ ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
+ IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
+ WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
+ PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
+ ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
+ KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
+ ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
+ </p>
+ <p>
+ TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
+ TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
+ NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
+ INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
+ COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
+ USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
+ ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
+ DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
+ IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
+ </p>
+ <p>
+ The disclaimer of warranties and limitation of liability provided
+ above shall be interpreted in a manner that, to the extent
+ possible, most closely approximates an absolute disclaimer and
+ waiver of all liability.
+ </p>
+
+ </div>
+
+</body>
+</html>