Improving the Intel Extreme Driver (Was: Graphics on Dell laptop in Vesa mode only)

BTW Kapix, if you have a bit of time to spare, could you have a quick look at the retrace semaphore on your system? I think it’s down (did not look at it yet), causing GLTeapot to not show frames (‘hang’).

And I have a question: how were you able to test the driver? You’re on UEFI no? Did the unpackaged user hierarchy work for you? if not: how did you manage? This is a quite nasty situation for me at least…

1 Like

I added my Kabylake ID in https://review.haiku-os.org/c/haiku/+/4740
It works nicely at native resolution. Weird duplicate display at lower resolutions (reported here https://dev.haiku-os.org/ticket/17430)

6 Likes

Even with UEFI your driver will be loaded.
Should I open a own bug report for my hp pavillion laptop?

Hi Korli, thanks for testing! You forgot to make it a mobile system. No display is recognized yet, making the weird behaviour actually normal. I placed more details in Gerrit, could you try again? Love to also again see a syslog… :slight_smile:

  • Iris Plus Graphics 640/645/650/655 (Gen 9.5) - mainly: edp 1.4, 4K HEVC/VP9, HDCP 2.2

PCI ID update needed for these integrated GPUs…

Hi rudolfc, I manually choose the native resolution 1600 x 900 at bootscreen.
This way it works.
Syslog and picture I put on trac…

Demo, Teapot does not start.

1 Like

Yes, correct. In combination with their memory controllers for the GART driver…

@Korli, @brunobastardi: You both have laptops and both did not ‘detect’ the internal panel. It’s a fault and missing piece still in the driver I now found. I’m working on it, but I don’t know if I have something for you today.

(@Korli, the mobile version for your system you did not yet add to the GART driver in Gerrit, I guess it should be changed though it probably doesn’t matter really there. But for completeness sake maybe :wink: )

2 Likes

Never mind now we know how to deal with that for now…

At boot screen choose the nativ resulution for now…

And then again in screen preferences one has to choose their native resulution. This has to be done once.

But how to test your driver now?

I’ll update the driver again in git, for the laptop panel detection and scaling.

  • Scaling is now up and running here on a simulated laptop, where the internal panel sits on eDP, but is actually my eDP to VGA connector. Very cool I was able to do this trick as I now know reasonably sure this is gonna work indeed :wink:
  • After all the kerneldriver was already detecting your panels guys, I just need to check that and use it. So also the native resolution will automatically be set after the next commit.

After that commit, it’s time to add all those ID’s for skylake compatible (so gen 9) desktop and laptop systems. I’d say keep those ID’s coming :ok_hand:

EDIT: the update in git will not come today, first I have to cleanup a bit.

5 Likes

Well, based on this info, I will try and report back any info I can gather. Thanks!

Does that include gen9LP? I have one laptop that has gen9lp (Apollo lake) gpu (device id 5A85) and it seems the driver has not support for that.

1 Like

Hi, a few questions to get the picture complete:

  • you had a VGA screen connected, the converter for it is on DDID, that was surprising, but it’s looking good from the log
  • DDIC is where the digital connection was. This was a non-DP connection, EDID was found: but you manually removed it from the log you shared: correct? The missing ID stuff was a bit confusing :wink:
  • Both screens work fine in different resolutions, correct?
  • how many screen connectors are on your system again, and what types?

Thanks in advance for answering (again) :blush:

1 Like

Hi, the patch for laptop panels is applied in git, see: hrev55669
@KapiX @korli @brunobastardi : Please test this version… Probably means you have to re-add your ID’s and patches as they are not yet in git apparantly.
@brunobastardi: You don’t need any patches since recognition was already there I think…

I’m very curious if the internal panels now start in native resolution, and can be used in other resolutions where the resolution is scaled to it’s native res… :slight_smile:

EDIT: @KapiX : Oh wait, you have a desktop system, so if all is right nothing would change for you. Anyhow, no harm in checking anyway :wink:

6 Likes

Hi @rudolfc tested here https://dev.haiku-os.org/ticket/17430#comment:4 (it is scaled, but doesn’t start in native resolution).

2 Likes

Looked at your syslog: all seems perfectly OK. Did you remove the vesa settings and the app_server_Settings file before booting? Only if you delete both startup in native mode should happen.

Also: you can connect an external screen now if all is right and have the desktop on both internal and external screens, while being able to work with various resolutions and refreshrates.

Beware though: when you work with native resolution for the internal screen, the refreshrate will be applied there, where in all other (scaling) modes, refresh is fixed at the panel’s default (60Hz).

It’s a custom anyboot image build, so there is no setting included AFAICT.

Hmm, in that case Haiku pulls more tricks ;-). The behaviour is OK in the driver AFAICT (or upscaling would fail).

Yes, the registers are completely different in Broadwell and up. I have an idea how to fix it, and will test it soon.

Yes, EDID info has no prefix so it doesn’t make it through grep 'intel_' :slight_smile:

I suppose, it started with 1024x768 on VGA and changed correctly to 1280x1024.

VGA, DVI, HDMI.

Super, thanks!
The Z170 mainboard I have here (skylake) has 4 outputs, I guess that explains why I have the VGA converter on the eDP output normally used for laptop panels. I’ve got a DP port extra compared to you.

EDIT: I saw that you had those two modes working indeed :wink:
EDIT2: Oh BTW skylake also very nicely scales down, in case you have a ‘high res’ external screen. Over here it’s no problem to display 1920x1080 on a 1280x1024 5:4 aspect display via downscaling by the extreme chipset, both screens simultaneously displaying of course. Of course aspect is off on the 5:4 screen using that widescreen mode though.
EDIT3: Oh, I believe I mix up things again :blush: : you are desktop right? There the driver does not do scaling, it does though on a laptop. (Which I was simulating during that test)

1 Like