Opened 12 years ago

Last modified 7 months ago

#1924 in-progress bug

Incomplete support of 1002:564f: M26 [Radeon Mobility X700 XL (PCIE)]

Reported by: siarzhuk Owned by: euan
Priority: normal Milestone: R1
Component: Drivers/Graphics/radeon Version: R1/pre-alpha1
Keywords: Cc: mario.fetka@…
Blocked By: #7662 Blocking:
Has a Patch: no Platform: All

Description

I have observed wrong behavior of the radeon driver with laptop that have following graphics hardware:

device Display controller (VGA compatible controller, VGA) [3|0|0]
  vendor 1002: ATI Technologies Inc
  device 564f: M26 [Radeon Mobility X700 XL (PCIE)]

This test was performed on clean build of Haiku hrev24409. Attached syslog was acquired during all test session. syslog contains my comments about test phases. Those comments are separated from other log information by following marks:

>>>>>>>>>>>>>>>>>>>>>>>>>>
SZ: <text of comment goes here>
>>>>>>>>>>>>>>>>>>>>>>>>>>

Note: All issues described in this test are related to embedded laptop LCD panel. No tests with external monitor were performed. Note: This laptop has some set of extended keyboard shortcuts (function shurtcuts). One of this shortcuts is used to switch graphic output between internal LCD panel of the laptop and external monitor output. This switch output shortcut mentioned below as "Fn-<SwitchDisplay> shortcut".

== The Test. ==

Step 1. I boot into Haiku and wait enough time to let system finish all setup actions. The image on the screen is mainly black. Only small band of pixels contains some graphic information. This band has about 10-20 pixels of height and it's height changed sporadically. The image in this band mainly correspond to data at the top of normal Desktop. that means that there top of Deskbar panel at the right side and mouse pointer can be visible in case it was moved at the top of the screen.

Step 2. Now I press the Fn-<SwitchDisplay> keyboard shortcut once and can see normal Haiku desktop at full screen height. Note that Deskbar panel is not visible now. Looks like default resolution is set to 1280x800 but physical resolution of the screen is 800x600 pixels. Deskbar panel is not visible because it is out of the "viewport".

Step 3. I called Screen Perflet and try to change screen resolution to 800x600. After pressing Apply button the screen goes black. I wait for some minutes to let the system change resolution back to initial value. The screen is left black for this time. I have to press Fn-<SwitchDisplay> keyboard shortcut once again to see the Desktop.

Step 4. Next attempt to change screen resolution to 800x600. After pressing Apply button I pressed Fn-<SwitchDisplay> button immediately and acknowledged screen resolution change. Now I can see normal Haiku desktop. Note that Deskbar is visible now at it's normal place at right edge of the screen. Looks like physical screen resolution correspond to Haiku Desktop resolution now.

Step 5. At the next step I tried to change screen resolution to 640x480. After pressing Apply button I pressed Fn-<SwitchDisplay> button immediately and acknowledged screen resolution change. Looks like physical resolution is 800x600 but Desktop resolution was changed to 640x480. The image I have observed after this you can see in attached "640x480" file. Part of information at right side of the screen duplicate the same one from the left edge of the screen. The band at the bottom of the screen contains some garbage.

Step 6. Now I change the resolution to 800x600, press Apply button, press Fn-<SwitchDisplay> immediately and confirm resolution change. The situation is the same as in step 4 of this test. Desktop is a bit stretched but looks like usable.

== Conclusion ==

Current revison (hrev24409) of the radeon driver has following problems:

  • cannot initialize internal laptop display on system start or in case of resolution change.
  • cannot change physical resolution of the display. Changing of the resolution changes only Desktop one - the "viewport" resolution is always 800x600 pixels.

Beside of those problems radeon driver on ATI X700 XL looks usable in 800x600 mode.

Attachments (2)

syslog (171.3 KB ) - added by siarzhuk 12 years ago.
system log acquired during test session
640X480.JPG (38.9 KB ) - added by siarzhuk 12 years ago.
screenshot at 640x480 screen resolution

Download all attachments as: .zip

Change History (10)

by siarzhuk, 12 years ago

Attachment: syslog added

system log acquired during test session

by siarzhuk, 12 years ago

Attachment: 640X480.JPG added

screenshot at 640x480 screen resolution

comment:1 by euan, 12 years ago

Status: newassigned

Looks like the syslog is missing the radeon driver's debug. We should be able to see the memory init, bios readouts, edid, etc. Did you change the debug levels?

Regardless it seems similar to the issue I get with Dual DVI when the resolution on the second screen is changed to a non-native resolution. Because there is only one scaler, when the resolution is > native the image wraps over the vieable area (like the screenshot). When < the vertical / horizontal native screen resolution garbage is displayed because the framebuffer isn't cleared before hand (sort of an "uncentered" centered timings rather than using the scaler to stretch).

Looks like perhaps the connector table is wrong in the bios, and is worked around in other OS's. Or that our connector mapping can't handle it.

At least your backlight comes on. Most M26 owners are greeted with darkness :)

Will look into it when merging the Xx000 support.

in reply to:  1 comment:2 by siarzhuk, 12 years ago

Replying to euan:

Looks like the syslog is missing the radeon driver's debug. We should be able to see the memory init, bios readouts, edid, etc. Did you change the debug levels?

No. I tried to find any "switches" to increase debug output level in source code but was unlucky. Could you, please, say me how can I acquire more informative syslog?

Regardless it seems similar to the issue I get with Dual DVI when the resolution on the second screen is changed to a non-native resolution.

Note that initial state, right after system boot and before I pressed Fn-<SwitchDisplay> is looks like 800x600. I see the top of Deskbar panel in this "sporadic band". After pressing Fn-<SwitchDisplay> shortcut I get the 1280x800 Desktop resolution. But this pseudo-800x600 can be a result of horizontal overlapping. It looks like "non-initialized height".

Looks like perhaps the connector table is wrong in the bios, and is worked around in other OS's. Or that our connector mapping can't handle it.

I remember Year ago we have used some additional software to get registers under windows. If you need this info again - let me know. This laptop has Windows XP and FreeBSD installations on it.

At least your backlight comes on. Most M26 owners are greeted with darkness :)

I'm just lucky with this "sporadic top band" issue. Note that after I try to switch resolution with Screen Perflet - the screen goes completely black. I don't think that blackened display with backlight on has different look than display with backlight switched off. ;-)

Will look into it when merging the Xx000 support.

Of course, you can request from me any information or tests you will need.

Thank you.

comment:3 by geos_one, 10 years ago

Cc: mario.fetka@… added

i also have the same problem i get a black screen when i hit enter the live cd starts (cd drive is running) so i think its relatet to the same issue as with xorg on xorg i have to add MonitorLayout "crt,lvds" to tell the driver where to find the internal lvds lcd even the vesa mode is not working it also switches to the wrong connector

comment:4 by siarzhuk, 10 years ago

Note that activatng ACPI to ON with revisions corresponding to Alpha 2 prevent me from using Fn-<SwitchDispay> combination to "reset" the LCD to 1024x768 mode as it was prior. Disabling ACPI restored described above situation.

comment:5 by scottmc, 8 years ago

Can you recheck this one? There's been some recent work on the Radeon HD driver, though it's not yet complete AFAIK.

comment:6 by scottmc, 8 years ago

Blocking: 7662 added

in reply to:  5 comment:7 by siarzhuk, 8 years ago

Replying to scottmc:

Can you recheck this one? There's been some recent work on the Radeon HD driver, though it's not yet complete AFAIK.

This chipset supported by radeon driver, not radeon_hd one. So nothing new here.

comment:8 by waddlesplash, 7 months ago

Blocked By: 7662 added
Blocking: 7662 removed
Note: See TracTickets for help on using tickets.