Opened 13 months ago

Closed 5 months ago

#14280 closed bug (fixed)

Booting on gma 900 results in black screen

Reported by: halamix2 Owned by: kallisti5
Priority: normal Milestone: R1/beta2
Component: Drivers/Graphics/intel_extreme Version: R1/Development
Keywords: gma900 Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Laptop Lifebook s7020:

  • GPU is Intel gma 900
  • Haiku build 52098

When booting, only black screen is visible, blacklisting intel_extreme "fixes" this.

Attachments (1)

syslog.old (512.1 KB ) - added by halamix2 13 months ago.

Download all attachments as: .zip

Change History (7)

by halamix2, 13 months ago

Attachment: syslog.old added

comment:1 by diver, 13 months ago

Platform: x86All

grep intel_extreme syslog.old

KERN: intel_extreme: CALLED status_t init_hardware()
KERN: intel_extreme: CALLED status_t init_driver()
KERN: intel_extreme: detect_intel_pch: No PCH detected.
KERN: intel_extreme: (0) i915GM, revision = 0x3
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: package_daemon [154362387:   466] 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: Init Intel generation 3 GPU without PCH split.
KERN: intel_extreme: REGS_NORTH_SHARED: 0x0
KERN: intel_extreme: REGS_NORTH_PIPE_AND_PORT: 0x60000
KERN: intel_extreme: REGS_NORTH_PLANE_CONTROL: 0x70000
KERN: intel_extreme: REGS_SOUTH_SHARED: 0x0
KERN: intel_extreme: REGS_SOUTH_TRANSCODER_PORT: 0x60000
KERN: intel_extreme:CALLED status_t intel_en_gating(intel_info &)
KERN: intel_extreme:i96KERN: 5 quirk
KERN: intel_extreme:CALLED status_t intel_en_downclock(intel_info &)
KERN: package_daemon [154857486:   466] intel_extreme:intel_en_downclock: Downclocking not supported on this chipset.
KERN: intel_extreme: mapping VBIOS: 0xc0000 -> 0x81494000
KERN: intel_extreme: parsing BDB blocks
KERN: intel_extreme: found LFP of size 1024 x 768 in BIOS VBT tables
KERN: intel_extreme: intel_extreme_init: completed successfully!
KERN: package_daemon [155082012:   466] intel_extreme: accelerant: intel_extreme.accelerant
KERN: intel_extreme: CALLED status_t intel_init_accelerant(int)
KERN: intel_extreme: Pipe A. Pipe Base: 0x0 Plane Base: 0x0
KERN: intel_extreme: Pipe B. Pipe Base: 0x1000 Plane Base: 0x1000
KERN: intel_extreme: pipe control for: 0xffffffff 0xffffffff
KERN: intel_extreme: adpa: 40008c18
KERN: intel_extreme: dova: 00000000, dovb: 00480004, dovc: 00480000
KERN: intel_extreme: lvds: c0308300
KERN: intel_extreme: IsConnected: DisplayPort A PortRegister: 0x2004000
KERN: intel_extreme: IsConnected: DisplayPort A link not detected
KERN: intel_extreme: IsConnected: DisplayPort B PortRegister: 0x5004100
KERN: intel_extreme: IsConnected: DisplayPort B link not detected
KERN: intel_extreme: IsConnected: DisplayPort C PortRegister: 0x5004200
KERN: intel_extreme: IsConnected: DisplayPort C link not detected
KERN: intel_extreme: IsConnected: DisplayPort D PortRegister: 0x5004300
KERN: intel_extreme: IsConnected: DisplayPort D link not detected
KERN: intel_extreme: IsConnected: Embedded DisplayPort A PortRegister: 0x2004000
KERN: intel_extreme: IsConnected: Embedded DisplayPort A link not detected
KERN: intel_extreme: IsConnected: DVI B PortRegister: 0x5001140
KERN: intel_extreme: CALLED status_t Port::GetEDID(edid1_info *, bool = false)
KERN: intel_extreme: DVI B: trying to read EDID
KERN: intel_extreme: DVI B: using ddc @ 0x4005020
KERN: intel_extreme: DVI B: no EDID information found.
KERN: intel_extreme: IsConnected: LVDS C PortRegister: 0x5001180
KERN: intel_extreme: CALLED status_t Port::GetEDID(edid1_info *, bool = false)
KERN: intel_extreme: LVDS C: trying to read EDID
KERN: intel_extreme: LVDS C: using ddc @ 0x4005018
KERN: intel_extreme: LVDS C: no EDID information found.
KERN: intel_extreme: LVDS: Couldn't find any valid EDID!
KERN: intel_extreme: IsConnected: Analog A PortRegister: 0x5001100
KERN: intel_extreme: CALLED status_t Port::GetEDID(edid1_info *, bool = false)
KERN: intel_extreme: Analog A: trying to read EDID
KERN: intel_extreme: Analog A: using ddc @ 0x4005010
KERN: intel_extreme: Analog A: no EDID information found.
KERN: intel_extreme: dump_ports: No ports connected
KERN: intel_extreme: Warning: zero active displays were found!
KERN: intel_extreme: CALLED status_t intel_get_edid_info(void *, long unsigned int, uint32 *)
KERN: intel_extreme: CALLED uint32 intel_accelerant_mode_count()
KERN: intel_extreme: CALLED status_t intel_get_mode_list(display_mode *)
KERN: intel_extreme: intel_set_display_mode(1024x768)
KERN: intel_extreme: intel_set_display_mode: Port configuration completed successfully!
KERN: intel_extreme: CALLED status_t intel_get_frame_buffer_config(frame_buffer_config *)

Last edited 13 months ago by diver (previous) (diff)

comment:2 by diver, 13 months ago

Looks like intel_extreme driver is unable any active displays. Warning: zero active displays were found!

comment:3 by halamix2, 13 months ago

Connected screen should be LVDS one

comment:4 by pulkomandy, 10 months ago

Milestone: UnscheduledR1/beta2

comment:5 by SuperPrower, 6 months ago

I wanted to add few details there that I found out thanks to PulkoMandy (please correct me if I am wrong anywhere).

It seems that older, 'working' versions of the driver also had similar problem, i.e. no displays are properly detected with EDID's, but they were still enabled by some kind of fallback magic that since was removed.

Also, (in my case of i915GM), driver falsely detects this chip as being non-mobile, and since it's Gen 3, currently it just skips entire check altogether. Currently I just disabled this check altogether.

Now for the interesting part: If I2C Trace is enabled, it can be seen that any DDC query for EDID (can I even say like that?) time out, including the one for internal LVSD monitor. So there is assumption that someone, somewhere, gives us wrong addresses or data or something like that.

However I just figured out that my display doesn't really support EDID so you probably should check for yourself and your test device.

Last edited 6 months ago by SuperPrower (previous) (diff)

comment:6 by waddlesplash, 5 months ago

Resolution: fixed
Status: newclosed

Merged in hrev53040. Thanks for your contribution!

Note: See TracTickets for help on using tickets.