diff options
author | Alyssa Rosenzweig <alyssa@rosenzweig.io> | 2017-03-20 20:26:48 -0700 |
---|---|---|
committer | Alyssa Rosenzweig <alyssa@rosenzweig.io> | 2017-03-20 20:26:48 -0700 |
commit | a62fe03d3e84150e6186f57f53029d5a9abe3d7b (patch) | |
tree | 1a1276b32fcc5388165bd42b685c0d9e83380a7b /docs/future | |
parent | 07da8fb0c7d513bc73470b69be99f1add0cb95e5 (diff) | |
download | librebootfr-a62fe03d3e84150e6186f57f53029d5a9abe3d7b.tar.gz librebootfr-a62fe03d3e84150e6186f57f53029d5a9abe3d7b.zip |
undo breakages
Diffstat (limited to 'docs/future')
-rw-r--r-- | docs/future/index.md | 225 | ||||
-rw-r--r-- | docs/future/old.md | 52 |
2 files changed, 146 insertions, 131 deletions
diff --git a/docs/future/index.md b/docs/future/index.md index 535b5726..1336478e 100644 --- a/docs/future/index.md +++ b/docs/future/index.md @@ -1,10 +1,14 @@ -% Development notes + +Development notes +================= These are development notes, for future use. For old (obselete) notes, see [old.html](old.html). Or go [back to main task list](../tasks.html). + + Table of contents ================= @@ -17,6 +21,8 @@ Table of contents - [IntelVbtTool results](#intelvbttool_results) - [Fallback patches for i945](#fallback_patches) + + standard test {#standard_test} ============= @@ -41,6 +47,8 @@ on i945 (X60 and T60). [Back to top of page.](#pagetop) + + T60 cpu microcode {#t60_cpu_microcode} ================= @@ -57,73 +65,56 @@ Every other T7200 tested so far has worked without microcode updates. [Back to top of page.](#pagetop) + + i945 VRAM size {#i945_vram_size} ============== Apparently, only 8MB VRAM is available on i945 GPUs (though it could do -64MB): - +64MB):\ phcoder: No. Hardware default is 8 MiB. When I wanted to make it configurable, I saw that docs mention only one other alternative: 1MiB. Later isn't event enough for 1024x768 at 24bpp without any acceleration or double buffering. It's possible that there are undocumented values. Which options do you have in vendor BIOS? How to find out how much vram -you have: - -phcoder: TOM - BSM - -phcoder: check what vendor BIOS offers as options - -vimuser: I thought it could do 64MB usually - -phcoder: not accorging to doc. - -phcoder: see mobile-945-express-chipset-datasheet page 93 - +you have:\ +phcoder: TOM - BSM\ +phcoder: check what vendor BIOS offers as options\ +vimuser: I thought it could do 64MB usually\ +phcoder: not accorging to doc.\ +phcoder: see mobile-945-express-chipset-datasheet page 93\ phcoder: see also -src/northbridge/intel/i945/{early\_init,northbridge,gma}.c - -vimuser: "011 = DVMT (UMA) mode, 8 MB of memory pre-allocated for - -vimuser: frame buffer." - -vimuser: "Others - reserved" - +src/northbridge/intel/i945/{early\_init,northbridge,gma}.c\ +vimuser: "011 = DVMT (UMA) mode, 8 MB of memory pre-allocated for\ +vimuser: frame buffer."\ +vimuser: "Others - reserved"\ phcoder: the easiest way is a loop at this position which tries -different values and reads (and prints) BSM with them - +different values and reads (and prints) BSM with them\ stefanct: vimuser: they suggest that you change the value and look how -BSM reacts to that - -stefanct: as they pointed out earlier vram size = TOM - BSM - -stefanct: different values of GMS - -stefanct: phcoder: hm... this could be a hint. look at the text -description of TOLUD at page 103 - -stefanct: it mentions 64 MB in the text about BSM as well - -stefanct: table 18... - +BSM reacts to that\ +stefanct: as they pointed out earlier vram size = TOM - BSM\ +stefanct: different values of GMS\ +stefanct: phcoder: hm\... this could be a hint. look at the text +description of TOLUD at page 103\ +stefanct: it mentions 64 MB in the text about BSM as well\ +stefanct: table 18\...\ phcoder: stefanct: I have a guess which value make is 64 but I will not -tell to avoid skewing test results - -stefanct: phcoder: sure... i assumed you were not sure if it supports -it at all. testing it properly is of course a good idea :) - +tell to avoid skewing test results\ +stefanct: phcoder: sure\... i assumed you were not sure if it supports +it at all. testing it properly is of course a good idea :)\ stefanct: test the various possible (but reserved) values of GMS and see -what the resulting VRAM size is - +what the resulting VRAM size is\ vimuser: so, TOM - BSM [Back to top of page.](#pagetop) + + LCD panels on i945 - fix incompatible panels {#lcd_i945_incompatibility} ============================================ Fix T60 issues (see incompatible panels listed at -[../hcl/#supported\_t60\_list](../hcl/#supported_t60_list)). +[../hcl/\#supported\_t60\_list](../hcl/#supported_t60_list)). Run that tool (resources/utilities/i945gpu/intel-regs.py) as root on systems with the offending panels in: @@ -155,8 +146,7 @@ Original getregs.py script can be found at <http://hg.mtjm.eu/scripts/file/tip/intel-regs.py> written by Michał Masłowski. -About fixing remaining LCD panels on 5345: - +About fixing remaining LCD panels on 5345:\ 'polarity' is mentioned in coreboot log (cbmem -c). compare output (with working and non-working panel). (and see the other notes in docs/future/) @@ -170,14 +160,12 @@ working and nonworking panels. How to dump EDID: - # apt-get install i2c-tools - # modprobe i2c-dev -Find out the correct ID to use: - - # i2cdetect -l -Example: - -# **i2cdump -y 2 0x50** +\# **apt-get install i2c-tools**\ +\# **modprobe i2c-dev**\ +Find out the correct ID to use:\ +\# **i2cdetect -l**\ +Example:\ +\# **i2cdump -y 2 0x50** Working panel: EDID dump from LG-Philips LP150E05-A2K1: @@ -245,6 +233,8 @@ LTN141XA-L01: revert to libreboot git commit c943281 to see this [Back to top of page.](#pagetop) + + i945 gfx: X60/T60 VBT implementation (experimental: testing) {#i945_vbt} ============================================================ @@ -270,42 +260,46 @@ You are supposed to: With each boot, make notes about what you see and get logs using the [standard test](#standard_test). You will need the files from -[#intelvbttool\_results](#intelvbttool_results) for each system. +[\#intelvbttool\_results](#intelvbttool_results) for each system. -Results (# means untested): +Results (\# means untested): - **X60/X60s:** - - TMD-Toshiba LTD121ECHB: # - - CMO N121X5-L06: # - - Samsung LTN121XJ-L07: # - - BOE-Hydis HT121X01-101: # + - TMD-Toshiba LTD121ECHB: \# + - CMO N121X5-L06: \# + - Samsung LTN121XJ-L07: \# + - BOE-Hydis HT121X01-101: \# - **X60T XGA:** - - BOE-Hydis HV121X03-100: # + - BOE-Hydis HV121X03-100: \# - **X60T SXGA+:** - - BOE-Hydis HV121P01-100: # + - BOE-Hydis HV121P01-100: \# - **T60 14" XGA:** - - Samsung LTN141XA-L01: # - - CMO N141XC: # - - BOE-Hydis HT14X14: # - - TMD-Toshiba LTD141ECMB: # + - Samsung LTN141XA-L01: \# + - CMO N141XC: \# + - BOE-Hydis HT14X14: \# + - TMD-Toshiba LTD141ECMB: \# - **T60 14" SXGA+** - - TMD-Toshiba LTD141EN9B: # - - Samsung LTN141P4-L02: # - - Boe-Hydis HT14P12: # + - TMD-Toshiba LTD141EN9B: \# + - Samsung LTN141P4-L02: \# + - Boe-Hydis HT14P12: \# - **T60 15" XGA** - - Samsung LTN150XG-L08: # - - LG-Philips LP150X09: # - - 13N7068 (IDtech): # - - 13N7069 (CMO): # + - Samsung LTN150XG-L08: \# + - LG-Philips LP150X09: \# + - 13N7068 (IDtech): \# + - 13N7069 (CMO): \# - **T60 15" SXGA+** - - LG-Philips LP150E05-A2K1: # - - BOE-Hydis HV150P01-100: # + - LG-Philips LP150E05-A2K1: \# + - BOE-Hydis HV150P01-100: \# - **T60 15" UXGA** - - BOE-Hydis HV150UX1-100: # - - IDTech N150U3-L01: # - - BOE-Hydis HV150UX1-102: # + - BOE-Hydis HV150UX1-100: \# + - IDTech N150U3-L01: \# + - BOE-Hydis HV150UX1-102: \# - **T50 15" QXGA** - - IDtech IAQX10N: # - - IDtech IAQX10S: # + - IDtech IAQX10N: \# + - IDtech IAQX10S: \# + +[Back to top of page](#pagetop) + + intelvbttool test results (VGA ROM dumps) {#intelvbttool_results} ========================================= @@ -331,56 +325,56 @@ Get intelvbttool here: <http://review.coreboot.org/#/c/5842> (util/intelvbttool). Now dump a copy of the running VGA BIOS: **\$ sudo dd if=/dev/mem bs=64k -of=runningvga.bin skip=12 count=1** - -Then do (and record the output): - - $ ./intelvbttool runningvga.bin > intelvbttool\_out +of=runningvga.bin skip=12 count=1**\ +Then do (and record the output):\ +**\$ ./intelvbttool runningvga.bin > intelvbttool\_out** Backup both files (runningvga.bin and intelvbttool\_out), renaming them to match the system and LCD panel used. -[../misc/#get\_edid\_panelname](../misc/#get_edid_panelname) will show +[../misc/\#get\_edid\_panelname](../misc/#get_edid_panelname) will show you how to get the name (model) of the LCD panel used. -Test results (# means untested and all had docks, unless noted). +Test results (\# means untested and all had docks, unless noted). ----------------------------------------------------------------- - **X60/X60s:** - - TMD-Toshiba LTD121ECHB: # - - CMO N121X5-L06: # - - Samsung LTN121XJ-L07: # - - BOE-Hydis HT121X01-101: # + - TMD-Toshiba LTD121ECHB: \# + - CMO N121X5-L06: \# + - Samsung LTN121XJ-L07: \# + - BOE-Hydis HT121X01-101: \# - **X60T XGA (1024x768):** - - BOE-Hydis HV121X03-100: # + - BOE-Hydis HV121X03-100: \# - **X60T SXGA+ (1400x1050):** - - BOE-Hydis HV121P01-100: # + - BOE-Hydis HV121P01-100: \# - **T60 14" XGA (1024x768):** - - Samsung LTN141XA-L01: # - - CMO N141XC: # - - BOE-Hydis HT14X14: # - - TMD-Toshiba LTD141ECMB: # + - Samsung LTN141XA-L01: \# + - CMO N141XC: \# + - BOE-Hydis HT14X14: \# + - TMD-Toshiba LTD141ECMB: \# - **T60 14" SXGA+ (1400x1050):** - - TMD-Toshiba LTD141EN9B: # - - Samsung LTN141P4-L02: # - - Boe-Hydis HT14P12: # + - TMD-Toshiba LTD141EN9B: \# + - Samsung LTN141P4-L02: \# + - Boe-Hydis HT14P12: \# - **T60 15" XGA (1024x768):** - - Samsung LTN150XG-L08: # - - LG-Philips LP150X09: # - - 13N7068 (IDtech): # - - 13N7069 (CMO): # + - Samsung LTN150XG-L08: \# + - LG-Philips LP150X09: \# + - 13N7068 (IDtech): \# + - 13N7069 (CMO): \# - **T60 15" SXGA+ (1400x1050):** - - LG-Philips LP150E05-A2K1: # - - BOE-Hydis HV150P01-100: # + - LG-Philips LP150E05-A2K1: \# + - BOE-Hydis HV150P01-100: \# - **T60 15" UXGA (1600x1200):** - - BOE-Hydis HV150UX1-100: # - - IDTech N150U3-L01: # - - BOE-Hydis HV150UX1-102: # + - BOE-Hydis HV150UX1-100: \# + - IDTech N150U3-L01: \# + - BOE-Hydis HV150UX1-102: \# - **T60 15" QXGA (2048x1536):** - - IDtech IAQX10N: # - - IDtech IAQX10S: # + - IDtech IAQX10N: \# + - IDtech IAQX10S: \# [Back to top of page.](#pagetop) + + Fallback patches {#fallback_patches} ================ @@ -390,6 +384,8 @@ Fallback patches {#fallback_patches} [Back to top of page.](#pagetop) + + Other - unlisted (low priority) {#other} =============================== @@ -409,8 +405,9 @@ Other - unlisted (low priority) {#other} [Back to top of page.](#pagetop) -Copyright © 2014, 2015 Leah Rowe <info@minifree.org> + +Copyright © 2014, 2015 Leah Rowe <info@minifree.org>\ Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike 4.0 International license or any later version published by Creative diff --git a/docs/future/old.md b/docs/future/old.md index 33fc4458..dc3b5dbd 100644 --- a/docs/future/old.md +++ b/docs/future/old.md @@ -1,10 +1,14 @@ -% Development notes (old/obsolete notes) + +Development notes (old/obsolete notes) +====================================== For current notes, see [](./). These are old (obsolete) notes that mare kept because they might become useful again in the future. + + Table of contents ================= @@ -17,13 +21,15 @@ Table of contents - [i945/x60: coreboot 5927 testing (3D fix for kernel 3.12+ on replay code)](#x60_cb5927_testing) + + X60 native graphics initialization (with backlight controls) {#x60_native_notes} ============================================================ **This is now obsolete. A better way was found (included in libreboot): <http://review.coreboot.org/#/c/6731/>** -***Also check [#5320\_kernel312fix](#5320_kernel312fix) (to fix 3D on +***Also check [\#5320\_kernel312fix](#5320_kernel312fix) (to fix 3D on kernel 3.12/higher)*** **The fix below was done on 5320/6 (from review.coreboot.org) but should @@ -39,15 +45,14 @@ That's all! **This has also been backported into libreboot 5th release (line 1233 in src/mainboard/lenovo/x60/i915io.c)**. GNUtoo (Denis Carikli) told me about the register **BLC\_PWM\_CTL** and that you could set it to control backlight. I read that address using devmem2 while -running the VBIOS: - - # devmem2 0xe4361254 w +running the VBIOS:\ +**\# devmem2 0xe4361254 w** The change is also included in libreboot 6. When doing this, it gave back that value. The same trick was used to get backlight controls for T60 (see -[#t60\_native\_notes](#t60_native_notes)). +[\#t60\_native\_notes](#t60_native_notes)). Further notes ------------- @@ -86,19 +91,23 @@ to calculate it without hardcoded laptop-specific values. Therefore, I am supposed to find out the 'display core frequency' (mtjm says there might be a register for it; also, it might be in 5320 or the replay code) and the PWM modulation frequency. -https://en.wikipedia.org/wiki/Backlight#Flicker\_due\_to\_backlight\_dimming +https://en.wikipedia.org/wiki/Backlight\#Flicker\_due\_to\_backlight\_dimming phcoder (Vladimir Serbinenko) who is author of 5320 (review.coreboot.org) talks about 'duty cycle limit' and 'flickering frequency'. +[Back to top of page](#pagetop) + + + T60 native graphics initialization (with backlight controls) {#t60_native_notes} ============================================================ **This is now obsolete. A better way was found (included in libreboot): <http://review.coreboot.org/#/c/6731/>** -***Also check [#5320\_kernel312fix](#5320_kernel312fix) (to fix 3D on +***Also check [\#5320\_kernel312fix](#5320_kernel312fix) (to fix 3D on kernel 3.12/higher)*** **The fix below was done on an earlier version of 5345 changeset @@ -109,15 +118,19 @@ included in libreboot 6** change **gpu\_backlight** to **0x58BF58BE** Hold on! Check -[../misc/#get\_edid\_panelname](../misc/#get_edid_panelname) to know +[../misc/\#get\_edid\_panelname](../misc/#get_edid_panelname) to know what LCD panel you have. This is important for the next step! Supported panels ---------------- -[../hcl/#supported\_t60\_list](../hcl/#supported_t60_list). +[../hcl/\#supported\_t60\_list](../hcl/#supported_t60_list). + +See [\#lcd\_i945\_incompatibility](./#lcd_i945_incompatibility). + +[Back to top of page](#pagetop) + -See [#lcd\_i945\_incompatibility](./#lcd_i945_incompatibility). i945: 3D fix (based on 5927) for kernel 3.12+ on 5320 {#5320_kernel312fix} ===================================================== @@ -133,7 +146,7 @@ is also now included in libreboot 6 (using the proper way, not the now obsolete. This needs to be re-done for the latest version of 5320. The fix below is (in practise) only for reference, therefore.** -See [#x60\_cb5927\_testing](#x60_cb5927_testing) for the original (and +See [\#x60\_cb5927\_testing](#x60_cb5927_testing) for the original (and current) fix, for the replay code. Now we want to implement that on top of <http://review.coreboot.org/#/c/5320> which is the current code for native graphics initialization on i945. @@ -160,6 +173,10 @@ apt-get repositories) using tool "intel\_gtt": - with coreboot (no vbios or native init): <http://paste.debian.net/104341> +[Back to top of page](#pagetop) + + + i945/X60: Coreboot 5927 testing (3D fix for kernel 3.12+ on replay code) {#x60_cb5927_testing} ======================================================================== @@ -186,10 +203,8 @@ For historical purposes, here is a collection of IRC logs that once existed on this page, related to the issue: [kernel312\_irc](dumps/kernel312_irc). -PGETBL\_CTL differs between VBIOS (-) and native graphics init (+). - -- PGETBL\_CTL: 0x3ffc0001 - +PGETBL\_CTL differs between VBIOS (-) and native graphics init (+).\ +- PGETBL\_CTL: 0x3ffc0001\ + PGETBL\_CTL: 0x3f800001 GTT (graphics translation table) size is PGETBL\_save, max 256 KiB. BSM @@ -210,8 +225,11 @@ GTT (graphics translation table) size is PGETBL\_save, max 256 KiB. BSM - [/sys/class/drm/card0/error](dumps/5927_crashdump) - [.config](dumps/5927_config) -Copyright © 2014, 2015 Leah Rowe <info@minifree.org> +[Back to top of page](#pagetop) + + +Copyright © 2014, 2015 Leah Rowe <info@minifree.org>\ Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike 4.0 International license or any later version published by Creative |