Bug 17094

Summary: Banding on Radeon HD 3670
Product: xorg Reporter: Mario Limonciello <mario_limonciello>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: bugzi11.fdo.tormod, pedretti.fabio
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log
none
Photo showing banding
none
rv635_dithering.patch
none
Enable dithering on rv635 hardware none

Description Mario Limonciello 2008-08-12 10:09:39 UTC
Created attachment 18239 [details] [review]
Xorg log

This is tested on Ubuntu Intrepid, using the default xorg.conf which defaults to the radeon driver.

This results in banding across the display.
Comment 1 Bryce Harrington 2008-09-05 18:04:36 UTC
Created attachment 18698 [details]
Photo showing banding

Mario sent me the hardware in question; I've taken a photo of the screen to illustrate the banding.

This is with -ati version 1:6.9.0+git20080802.1f3eee36-1ubuntu1.  I'll test with the a3cc1d7a once it's built.
Comment 2 Bryce Harrington 2008-09-05 18:06:18 UTC
Some additional details...

This seems to only occur with gradients.  I can reproduce the issue both in Inkscape and Gimp when using their gradients.
Comment 3 Alex Deucher 2008-09-06 13:33:06 UTC
Dithering is probably enabled for that output.  You'd need to fix up dfp_disable_dither() in atombios_output.c for DCE 3.0 cards.
Comment 4 Bryce Harrington 2008-09-11 16:36:14 UTC
Noticed that the log didn't specify the pci info:

01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Radeon Mobility HD 3670 [1002:9593]
	Subsystem: Dell Device [1028:0272]
Comment 5 Bryce Harrington 2008-09-18 17:36:31 UTC
Created attachment 18990 [details] [review]
rv635_dithering.patch

I'm having some trouble determining what register needs to be poked.  I've tried all the ones in the current code, and tried finding some docs to see if there is a new BIT_DEPTH_CONTROL register, but no luck so far.  Maybe something has to be done in addition to setting the bit depth?
Comment 6 Bryce Harrington 2008-09-19 00:21:38 UTC
I've also tried each of the following without luck:

            OUTREG(0x6710, 0);

            OUTREG(0x6f10, 0);

Comment 7 Bryce Harrington 2008-09-22 12:48:12 UTC
Created attachment 19105 [details] [review]
Enable dithering on rv635 hardware

After a whole bunch of experimentation and advice from Alex, this patch enables dithering and greatly diminishes the banding.  (The banding's still there, but you have to look close to see it.)
Comment 8 Bryce Harrington 2008-09-24 15:49:19 UTC
Alex, please let me know if there are changes you'd like to see to this patch before it can be committed to upstream git.  I've incorporated it into Ubuntu's -ati package.
Comment 9 Fabio Pedretti 2008-10-10 07:55:01 UTC
Is this bug supposed to be fixed with current git?
Comment 10 Alex Deucher 2008-10-10 08:06:52 UTC
(In reply to comment #9)
> Is this bug supposed to be fixed with current git?
> 

Ajax' commit (d744dc013cf5ca3141c0fdf55e36d713fe9f53ba) should fix it I think.
Comment 11 Bryce Harrington 2008-11-10 18:08:52 UTC
I finally got a chance to re-test this.  Unfortunately, it did not eliminate the banding.  At least it seems to be no worse than the patch I'd posted earlier, but the banding is still present if you look closely.


Comment 12 Alex Deucher 2009-10-21 13:46:10 UTC
Is this still an issue with ati git master?
Comment 13 Alex Deucher 2010-10-19 16:38:57 UTC
closing due to lack of feedback.

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.