Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#10878 closed bug (fixed)

[intel_extreme] 1600x900 is not supported (regression)

Reported by: starsseed Owned by: korli
Priority: normal Milestone: R1/beta1
Component: Drivers/Graphics/intel_extreme Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Booting Haiku hrev47195 the best resolution available for my 1600x900 laptop display is 1440x900.

1600x900 used to be perfectly supported with hrev44989

PCI-ID :

8086:0116 (Intel SandyBridge HD3000)

driver loaded :

/boot/system/add-ons/kernel/drivers/dev/graphics/intel_extreme /boot/system/add-ons/kernel/drivers/dev/graphics/vesa

Attachments (2)

syslog.hrev45797 (127.0 KB ) - added by starsseed 5 years ago.
syslog.hrev45831 (131.2 KB ) - added by starsseed 5 years ago.

Download all attachments as: .zip

Change History (16)

comment:1 by luroh, 5 years ago

Really, you have been around here long enough to know that this ticket will most likely just rot away in Trac unless you:

1) Attach your syslog. 2) Reduce your monster regression range by testing nightly builds until you have something workable. http://haiku-files.org/

comment:2 by starsseed, 5 years ago

the regression appeared between hrev45797​ and hrev45831

comment:3 by luroh, 5 years ago

Owner: changed from axeld to korli
Status: newassigned
Summary: [intel_extreme] 1600x900 is not spported (regression)[intel_extreme] 1600x900 is not supported (regression)

Thanks! Given that hrev45822 and hrev45828 are in your regression range, perhaps korli would like to have a look.

comment:4 by waddlesplash, 5 years ago

Milestone: R1R1/alpha5

The first syslog is from a VirtualBox machine, which does not have access to the host video card.

Did you upload the wrong thing, starsseed?

comment:5 by starsseed, 5 years ago

@waddlesplash : yes I uploaded the right log. I Install Haiku from the vmdk image to the Physical hdd (sda1) within VirtualBox so the installer copy the syslog. When I restart in the physical environment, the syslog is not cleaned up so the first part of the file contains the virtual session log, and the second part the log for the physical session (I will upload a reduced log)

by starsseed, 5 years ago

Attachment: syslog.hrev45797 added

by starsseed, 5 years ago

Attachment: syslog.hrev45831 added

comment:6 by starsseed, 5 years ago

And now the relevant part : comparing grep intel_extreme syslog.hrev45797

KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_driver()
KERN: intel_extreme: (0) SandyBridge Mobile GT2, revision = 0x9
KERN: intel_extreme: CALLED const char ** publish_devices()
KERN: intel_extreme: CALLED struct device_hooks * find_device(const char *)
KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/graphics/intel_extreme
KERN: intel_extreme: CALLED status_t device_open(const char *, long unsigned int, void **)
KERN: intel_extreme: intel_extreme: CALLED status_t intel_extreme_init(intel_info &)
KERN: intel_extreme: error: could not map GART aperture!

and grep intel_extreme syslog.hrev45831

KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_driver()
KERN: intel_extreme: (0) SandyBridge Mobile GT2, revision = 0x9
KERN: intel_extreme: CALLED const char ** publish_devices()
KERN: intel_extreme: CALLED struct device_hooks * find_device(const char *)
KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/graphics/intel_extreme
KERN: intel_extreme: CALLED status_t device_open(const char *, long unsigned int, void **)
KERN: intel_extreme: intel_extreme: CALLED status_t intel_extreme_init(intel_info &)
KERN: intel_extreme:CALLED status_t intel_en_gating(intel_info &)
KERN: intel_extreme:SandyBridge clock gating
KERN: intel_extreme:CALLED status_t intel_en_downclock(intel_info &)
KERN: intel_extreme: intel_en_downclock: Enabling Intel GPU auto downclocking depth 1
KERN: intel_extreme: intel_extreme_init: completed successfully!
KERN: intel_extreme: accelerant: intel_extreme.accelerant
KERN: intel_extreme accelerant:CALLED status_t intel_init_accelerant(int)
KERN: intel_extreme accelerant:head detected: 0x1
KERN: intel_extreme accelerant:adpa: 00c40000, dova: 00000018, dovb: 00000018, lvds: 00000000
KERN: intel_extreme accelerant:getting EDID on port A (analog) failed : No Error (8). Trying on port C (lvds)
KERN: intel_extreme accelerant:getting EDID on port C failed : No Error (8)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme accelerant:CALLED uint32 intel_accelerant_mode_count()
KERN: intel_extreme accelerant:CALLED status_t intel_get_mode_list(display_mode *)
KERN: intel_extreme accelerant:intel_set_display_mode(1024x768)
KERN: intel_extreme accelerant:PLL limits, min: p 5 (p1 1, p2 10), n 1, m 79 (m1 12, m2 5)
KERN: intel_extreme accelerant:PLL limits, max: p 80 (p1 8, p2 5), n 5, m 127 (m1 22, m2 9)
KERN: intel_extreme accelerant:compute_pll_divisors: required MHz: 65
KERN: intel_extreme accelerant:compute_pll_divisors: found: 64.8 MHz, p = 40 (p1 = 4, p2 = 10), n = 4, m = 108 (m1 = 20, m2 = 8)
KERN: intel_extreme accelerant:CALLED status_t intel_get_frame_buffer_config(frame_buffer_config *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_accelerant_device_info(accelerant_device_info *)
KERN: intel_extreme accelerant:CALLED status_t intel_propose_display_mode(display_mode *, const display_mode *, const display_mode *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_pixel_clock_limits(display_mode *, uint32 *, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_propose_display_mode(display_mode *, const display_mode *, const display_mode *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_pixel_clock_limits(display_mode *, uint32 *, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_accelerant_device_info(accelerant_device_info *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_pixel_clock_limits(display_mode *, uint32 *, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_pixel_clock_limits(display_mode *, uint32 *, uint32 *)
KERN: intel_extreme accelerant:CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)

I suspect that after the intel_gart support was added in hrev45822, the intel_extreme driver try to set the resolution instead of continuing to use the one set by the BIOS (note that in both cases, the boot splash screen seems to be set at 1600x900)

Last edited 5 years ago by starsseed (previous) (diff)

comment:7 by waddlesplash, 5 years ago

I'm not so sure about that. I think the culprit is more likely hrev45828 -- hrev45822 doesn't break existing configurations, as it evaluates the same way on bridges that aren't multi-display.

comment:8 by korli, 5 years ago

In hrev45797​ the vesa driver is used, in hrev45831, the intel_extreme driver is used. I'd suggest to blacklist the intel_extreme driver as a workaround. Please check if this works.

About the bug itself, it seems intel_extreme couldn't retrieve edid information from your panel, and/or the pll limits used aren't good enough to list the native mode. Both are reasonable reasons in my opinion.

comment:9 by pulkomandy, 5 years ago

Milestone: R1/alpha5Unscheduled

Moving non-fatal hardware issue out of alpha5 milestone.

comment:10 by axeld, 5 years ago

Please try with a revision newer than or equal to hrev47304.

comment:11 by axeld, 5 years ago

hrev47307 should also make it keep the native resolution after the boot screen (this will only work if you haven't saved it already, ie. on a new install).

comment:12 by starsseed, 5 years ago

Fixed (hrev47313) it works fine now. Thanks

comment:13 by korli, 5 years ago

Milestone: UnscheduledR1/alpha5
Resolution: fixed
Status: assignedclosed

comment:14 by pulkomandy, 5 years ago

Milestone: R1/alpha5R1/beta1
Note: See TracTickets for help on using tickets.