Opened 3 years ago

Closed 3 years ago

#17430 closed bug (fixed)

Kabylake Mobilte GT2

Reported by: korli Owned by: rudolfc
Priority: normal Milestone: Unscheduled
Component: Drivers/Graphics/intel_extreme/kabylake Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description (last modified by korli)

I added the ids on https://review.haiku-os.org/c/haiku/+/4739/2

It works nicely at native resolution. At lower resolutions everything gets duplicated.


diff --git a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp
index 0148571a0c..9818f4edbe 100644
--- a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp
+++ b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp
@@ -143,7 +143,10 @@ const struct supported_device {
        {0x1904, 0x192a, INTEL_MODEL_SKYS, "Skylake GT3"},
        {0x1904, 0x192b, INTEL_MODEL_SKY,  "Skylake GT3"},
 
-       {0x3ec2, 0x3e92, INTEL_MODEL_CFL,  "CoffeeLake GT2"}
+       {0x5914, 0x5917, INTEL_MODEL_KBY,  "Kabylake Mobile"},
+
+       {0x3ec2, 0x3e92, INTEL_MODEL_CFL,  "CoffeeLake GT2"},
+       
 };
 
 struct intel_info {
diff --git a/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp b/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp
index 82805d2acb..47790f89c1 100644
--- a/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp
+++ b/src/add-ons/kernel/drivers/graphics/intel_extreme/driver.cpp
@@ -134,6 +134,8 @@ const struct supported_device {
        {0x192a, INTEL_MODEL_SKYS, "Skylake GT3"},
        {0x192b, INTEL_MODEL_SKY,  "Skylake GT3"},
 
+       {0x5917, INTEL_MODEL_KBY,  "Kabylake Mobile"},
+
        {0x3e92, INTEL_MODEL_CFL,  "CoffeeLake GT2"}
 };


The image on screen is duplicated at 1024*768

Attachments (6)

IMG_20211128_104432204.jpg (3.2 MB ) - added by korli 3 years ago.
screen shot
syslog (204.9 KB ) - added by korli 3 years ago.
syslog.2 (210.3 KB ) - added by korli 3 years ago.
syslog https://review.haiku-os.org/c/haiku/+/4740/3
syslog.3 (219.4 KB ) - added by korli 3 years ago.
syslog https://review.haiku-os.org/c/haiku/+/4740/6
syslog.4 (212.2 KB ) - added by korli 3 years ago.
syslog https://review.haiku-os.org/c/haiku/+/4749/1
kabylake_i915_dump.txt (28.1 KB ) - added by korli 3 years ago.
intel_reg dump

Change History (22)

by korli, 3 years ago

Attachment: IMG_20211128_104432204.jpg added

screen shot

by korli, 3 years ago

Attachment: syslog added

comment:1 by korli, 3 years ago

Description: modified (diff)

comment:2 by rudolfc, 3 years ago

Hi Korli, the panel is not programmed at least because you forgot to define it as a mobile chipset. As it is now only colordepth and virtual size will be programmed, hence the repeating pattern. This is a quite normal display in this situation (your screenshot).

Thanks for testing! (see gerrit for more details ;-)

comment:3 by korli, 3 years ago

Hi Rudolf, I adjusted in https://review.haiku-os.org/c/haiku/+/4740/3

Please find the syslog.2 attached. It seems the mobile chipset makes no difference.

comment:4 by korli, 3 years ago

Hi Rudolf, I tested in ​https://review.haiku-os.org/c/haiku/+/4740/6 rebased on hrev55669

The display starts with 1024*768 scaled correctly to fullscreen. Native resolution still has to be changed manually.

comment:5 by rudolfc, 3 years ago

Hi, super that scaling works indeed! Did you start without app_server_settings and vesa settings files during the native startup test?

comment:6 by rudolfc, 3 years ago

Oh, and can you upload a full syslog from the test? Thanks! Ah, ok syslog.3. so never mind this post ;-)

Last edited 3 years ago by rudolfc (previous) (diff)

comment:7 by rudolfc, 3 years ago

Looking at the syslog all seems OK. If you also connect an external monitor you should have the desktop at both screens, and also be able to switch various resolutions and refreshrates..

Driver is fully OK apart from the patches I did +2 on (did that on 3)

Your patches can be applied to Haiku's git from gerrit, but I don't know how this should be done. Can you (or someone else) helpout here?

Thanks for testing/your help!

comment:8 by korli, 3 years ago

I can't really check with an external monitor ATM. I pushed the two first patches already.

comment:9 by rudolfc, 3 years ago

Thank you! BTW Feel free to close the ticket if you feel it's time. Or are there still open issues?

comment:10 by korli, 3 years ago

the changes are merged. Open issue: on boot: intel_set_display_mode(1024x768, virtual: 1024x768) instead of the native resolution.

comment:11 by rudolfc, 3 years ago

Hi,

I see we need to update routine intel_get_edid_info to also return OK if got_vbt, but -only- on laptops. That should fix the native mode on first boot. Unfortunately I don't have time until tonight ;-)

Also routine intel_get_accelerant_device_info probably needs some txt updating since we now support more cardtypes ;-)

After this (and you testing) you can close the ticket then :)

If you'd have time to spare you can update the driver with it yourself ;-)

Last edited 3 years ago by rudolfc (previous) (diff)

comment:12 by korli, 3 years ago

Hi Rudolf, I have tried what you propose in intel_get_edid_info. It doesn't seem to help. app_server still set 1024*768 as resolution.

comment:13 by rudolfc, 3 years ago

Hmm, well thank you for your test at least indeed! I'll retry simulating a laptop over here then to see where it goes wrong. I'll get back on this..

comment:14 by korli, 3 years ago

It looks like the app_server ignores modes without detailed timing: https://git.haiku-os.org/haiku/tree/src/servers/app/drawing/interface/local/AccelerantHWInterface.cpp#n925

get_preferred_display_mode isn't implemented, right?

comment:15 by korli, 3 years ago

hi Rudolf, i added the hook in https://review.haiku-os.org/c/haiku/+/4749 and it works, the first boot gets the native resolution chosen.

comment:16 by korli, 3 years ago

Resolution: fixed
Status: newclosed

Applied in hrev55674 Thanks!

by korli, 3 years ago

Attachment: kabylake_i915_dump.txt added

intel_reg dump

Note: See TracTickets for help on using tickets.