#12982 closed bug (invalid)
Screen is shifted a few pixels down leaving unused black space on the top
Reported by: | FridayHaiku | Owned by: | pulkomandy |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Drivers/Graphics/intel_extreme/9xx | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Details about the issue: first few pixels of the screen remain black and the screen area used by Haiku extends past the visible area of the monitor on the bottom by the same amount of missing pixels in the top.
Screen preferences identify my GPU as "Intel GMA (Atom N4xx)" (it's an Intel GMA 3150).
I am using the latest revision at the time of writing this (50563 gcc2 hybrid) but I also had this problem with rev 50559.
Forum thread about this issue is this one. As suggested in the thread blacklisting the intel_extreme driver (and using VESA) makes the problem go away.
Attachments (2)
Change History (21)
by , 8 years ago
Attachment: | syslog.txt added |
---|
comment:1 by , 8 years ago
comment:2 by , 8 years ago
comment:4 by , 8 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
follow-up: 9 comment:5 by , 8 years ago
comment:6 by , 8 years ago
comment:7 by , 8 years ago
Ok, he undid a lot of those horrible hacks in hrev50512. Looking at the commits hrev50512 looks to contain the regression somewhere.
Regression causes:
Strong Maybe Things I don't agree with and need some additional research on their correctness. Intel docs say you *always* need to unlock the panel register on PCH or they won't change when modified.
- LVDSPort init - No longer unlocking panel registers if PCH
- enable_lvds_panel - No longer unlocking panel registers if PCH
Weak Maybe
I want to beleve there was some research to this change as it "feels" ok ^_^
- ConfigureTimings - Checking for a transcoder before setting display timings
I actually see the enable_lvds_panel change potentially causing the code to loop forever... if the panel registers aren't unlocked, you can't modify them to turn the panel on. If you can't modify them, the panel will never turn on... thus the for loop runs forever.
comment:8 by , 8 years ago
If I try to unlock the ports on my SandyBridge laptop, I only get a black screen. Maybe it is better for me to not touch them at all and hope the BIOS did set things the way we need.
In both this and the timings, there was not this much research from my side: I just made things happen in the same order they were before your changes, so as to get my native video mode working again.
I think we can reasonably expect the BIOS to setup LVDS properly. We may still need to adjust some display base address or similar.
For the timings, relying on the BIOS is not the safest way, especially on machines where it doesn't use the native mode.
I can try to further reduce my changes but I can only test on the hardware I own, which makes it a bit difficult for me to see if I fix your problem.
comment:9 by , 8 years ago
Replying to kallisti5:
Could you now test with hrev50504? This regression looks to have happened due to Pulkomandy's changes in hrev50504 or hrev50512
I can't find that revision on the downloads page and to be honest I don't know how to build Haiku (I'm just an user). Is it okay if I try hrev50501?
follow-up: 11 comment:10 by , 8 years ago
I have attached a zip with the intel extreme driver and accelerant of hrev50501.
Here is how I think it should work that this older driver overrides the packaged one that's currently broken on your hardware:
- copy intel_extreme to /system/non-packaged/add-ons/kernel/drivers/bin
- put a link to it into /system/non-packaged/add-ons/kernel/drivers/dev/graphics
- copy intel_extreme.accelerant to /system/non-packaged/add-ons/accelerant
comment:11 by , 8 years ago
Replying to humdinger:
I have attached a zip with the intel extreme driver and accelerant of hrev50501.
Here is how I think it should work that this older driver overrides the packaged one that's currently broken on your hardware:
- copy intel_extreme to /system/non-packaged/add-ons/kernel/drivers/bin
- put a link to it into /system/non-packaged/add-ons/kernel/drivers/dev/graphics
- copy intel_extreme.accelerant to /system/non-packaged/add-ons/accelerant
Thank you, this works.
follow-ups: 13 14 comment:12 by , 8 years ago
Can you enter KDL and run the following commands (with both drivers if possible):
ie_reg 0x7119C ie_reg 0x7019C
One of my machine had a similar problem, and I needed to set 7019C to the same value as 7119C:
ie_reg 0x7019C 0x100000
Does this help?
comment:13 by , 8 years ago
I will try that during the week, sorry for the late reply I've been busy.
comment:14 by , 8 years ago
Replying to pulkomandy:
Can you enter KDL and run the following commands (with both drivers if possible):
ie_reg 0x7119C ie_reg 0x7019COne of my machine had a similar problem, and I needed to set 7019C to the same value as 7119C:
ie_reg 0x7019C 0x100000Does this help?
Sorry for the late reply, I tried it using hrev50608, both values are 0 in both drivers (modified and original). It didn't help.
comment:15 by , 6 years ago
Milestone: | Unscheduled → R1/beta2 |
---|
comment:17 by , 5 years ago
Component: | Drivers/Graphics/intel_extreme → Drivers/Graphics/intel_extreme/9xx |
---|
comment:19 by , 5 years ago
Milestone: | R1/beta2 |
---|
Remove milestone for tickets with status = closed and resolution != fixed
This is supposed to be a regression: