Bug 17682 - HD3200/HDMI shows up-scaled part of the screen
Summary: HD3200/HDMI shows up-scaled part of the screen
Status: RESOLVED NOTABUG
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-20 14:13 UTC by Stefan Becker
Modified: 2008-09-22 13:03 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
X server log with -logverbose 7 (42.03 KB, text/plain)
2008-09-20 14:13 UTC, Stefan Becker
no flags Details
xorg.conf (512 bytes, text/plain)
2008-09-20 14:14 UTC, Stefan Becker
no flags Details
Screenshot of the "moire" pattern in the 1920x1080 mode (304.83 KB, image/jpeg)
2008-09-20 14:16 UTC, Stefan Becker
no flags Details

Description Stefan Becker 2008-09-20 14:13:59 UTC
Created attachment 19041 [details]
X server log with -logverbose 7

I know that R600/700 support is still experimental, but mode setting should work OK already, right?

I have a new AMD 780G motherboard connected via HDMI to a Samsung DLP TV. The TV supports the modes 1920x1080, 1280x720 and 640x480 which are correctly recognized by the driver. The TV also shows that the mode has been correctly negotiated. But only the middle part of the screen is actually visible, e.g. roughly 1800x1000 when using the 1920x1080 mode. Additionally in the 1920x1080 mode the X11 background is displayed with a moire pattern.

I tried with the latest git master (38aa450fc) and X Server 1.5.0 on Fedora 9.
Comment 1 Stefan Becker 2008-09-20 14:14:24 UTC
Created attachment 19042 [details]
xorg.conf
Comment 2 Stefan Becker 2008-09-20 14:16:22 UTC
Created attachment 19043 [details]
Screenshot of the "moire" pattern in the 1920x1080 mode

This also shows the default xterm created by xinit. The upper left corner of it is cut off, i.e. it is not completely visible.
Comment 3 Stefan Becker 2008-09-20 14:19:31 UTC
(In reply to comment #0)
> Created an attachment (id=19041) [details]
> 
> I tried with the latest git master (38aa450fc) and X Server 1.5.0 on Fedora 9.

Sorry that's d100a6a of course...
Comment 4 Rafał Miłecki 2008-09-20 14:34:49 UTC
Funny. In my case 1920x1080 is displayed exactly as 1920x1080 on Sony LCD and it is scaled to something like 1850x1000 (guessing) in case of Samsung LCD. The case with Samsung results in black borders.
When playing with registers (rhd_dump) I found portion of "rhd_dump -w" commands that caused this scaling. Would it be interesting for you developers to provide theses registers?
Comment 5 Stefan Becker 2008-09-20 23:56:50 UTC
Thanks for the hint, that's exactly how it looks like. It probably also explains the "moire" pattern in 1920x1080.

I've updated the bug summary accordingly.

One explanation could be that the driver doesn't touch the R700 scaler registers at all and therefore the values set up by the BIOS are still active. The 80x25 VGA display (BIOS, Linux VT) is up-scaled to 1920x1080@60 (16:9) and fits exactly to the display. When X switches to the graphics mode the output will then be up-scaled too :-/

Can you please share what registers you found that control the R700 scaler? Did you find out how to disable it?

I probably also need to check the code in the driver that produces this output in the X log:

(II) RADEON(0): ParseTable said: CD_SUCCESS
(II) RADEON(0): Call to AtomBIOS Exec succeeded
scaler 0 setup success

Comment 6 Stefan Becker 2008-09-21 00:29:23 UTC
Checked the code in atombios_output_scaler_setup() and the full log output is

Not using RMX
(II) RADEON(0): ParseTable said: CD_SUCCESS
(II) RADEON(0): Call to AtomBIOS Exec succeeded
scaler 0 setup success

    if (radeon_output->Flags & RADEON_USE_RMX) {
...
    } else {
	ErrorF("Not using RMX\n");
	disp_data.ucEnable = ATOM_SCALER_DISABLE;
    }

So the driver obviously tries to disable the scaler for CRTC 0 and thinks it succeeded.
Comment 7 Rafał Miłecki 2008-09-21 01:17:37 UTC
I'll have access to HDMI LCD after few days, will check these registers then.
Comment 8 Alex Deucher 2008-09-21 08:24:57 UTC
This is an issue with your TV.  A lot of TV's have settings to display the native image or to scale/clip the edges thinking it's overscan area as per older analog TV's.  My TV does the exact same thing (edges clipped) with the image coming from the cable box or the computer (either via VGA or component, etc.).
Comment 9 Stefan Becker 2008-09-22 13:03:13 UTC
(In reply to comment #8)
> This is an issue with your TV.  A lot of TV's have settings to display the

Dooohh, boy do I feel stupid now. After reading this I took the remote control and played around with the picture size option. As it turned out the default "16:9" is different from the "Just Scan" setting.

Now the HDMI signal is displayed 1:1 and the moire pattern is gone. I'm still missing roughly 60x30 pixels from the border, but that seems to be a physical limitation of the TV (I guess to hide edge effects of the DLP chip).

Now only XVideo is missing :-)


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.