Bug 56828 - Driver for Radeon has broken acceleration functionality with HD 5450
Summary: Driver for Radeon has broken acceleration functionality with HD 5450
Status: RESOLVED NOTABUG
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/r600 (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-11-07 00:27 UTC by Zbigniew
Modified: 2012-11-07 14:21 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Xorg.0.log (45.60 KB, text/plain)
2012-11-07 00:27 UTC, Zbigniew
Details

Description Zbigniew 2012-11-07 00:27:54 UTC
Created attachment 69649 [details]
Xorg.0.log

Tested today released xf86-video-ati 7.0 and, unfortunately, it doesn't support properly Radeon HD 5450.
The problems turned up while trying to run some "more graphically demanding" application, say: game, for instance. For example: running FooBillard noticed, that most of the time the game window was OK, but attempt to move it results in garbage within the game window. While trying to run "CG Madness" the situation was much worse: the entire screen started to blink strange way, there was no other option, than to leave graphics with Control-Alt-Backspace. On the text console there were messages:

radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.
radeon: The kernel rejected CS, see dmesg for more information.

"dmesg" reported:

radeon 0000:02:00.0: evergreen_surface_check_2d:285 cb height 608 invalid must be aligned with 64
radeon 0000:02:00.0: evergreen_cs_track_validate_cb:427 cb[0] invalid (0x00000063 0x00001daf 0x00090880 0x01088468)
radeon 0000:02:00.0: evergreen_packet3_check:2105 invalid cmd stream 588
[drm:radeon_cs_ib_chunk] *ERROR* Invalid command stream !
radeon 0000:02:00.0: evergreen_surface_check_2d:285 cb height 608 invalid must be aligned with 64
radeon 0000:02:00.0: evergreen_cs_track_validate_cb:427 cb[0] invalid (0x00000063 0x00001daf 0x00090880 0x01088468)
radeon 0000:02:00.0: evergreen_packet3_check:2105 invalid cmd stream 574
[drm:radeon_cs_ib_chunk] *ERROR* Invalid command stream !
radeon 0000:02:00.0: evergreen_surface_check_2d:285 cb height 608 invalid must be aligned with 64
radeon 0000:02:00.0: evergreen_cs_track_validate_cb:427 cb[0] invalid (0x00000063 0x00001daf 0x00090880 0x01088468)
radeon 0000:02:00.0: evergreen_packet3_check:2105 invalid cmd stream 588
[drm:radeon_cs_ib_chunk] *ERROR* Invalid command stream !
radeon 0000:02:00.0: evergreen_surface_check_2d:285 cb height 608 invalid must be aligned with 64
radeon 0000:02:00.0: evergreen_cs_track_validate_cb:427 cb[0] invalid (0x00000063 0x00001daf 0x00090880 0x01088468)
radeon 0000:02:00.0: evergreen_packet3_check:2105 invalid cmd stream 588
[drm:radeon_cs_ib_chunk] *ERROR* Invalid command stream !

I was testing the driver using newest Slackware 14.0, with libdrm 2.4.39, kernel 3.6.0. The system was 32-bit(!), although actually ran on 64-bit hardware.

Very similar installation using this newest driver, ran on much older hardware with K7 processor (early Sempron 1.8 GHz) - and with old Radeon 9600 - works with no problems whatsoever (tested with both mentioned games, CG Madness reached 36 FPS).

My /etc/xorg.conf

# Transparency on
Section "Extensions"
        Option "Composite" "Enable"
        Option "RENDER" "Enable"
EndSection

Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
#       Screen      1  "Screen1" RightOf "Screen0"
#       Screen      2  "Screen2" RightOf "Screen1"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath   "/usr/lib/xorg/modules"
        FontPath     "/usr/share/fonts/Speedo"
        FontPath     "/usr/share/fonts/TTF"
        FontPath     "/usr/share/fonts/OTF"
        FontPath     "/usr/share/fonts/Type1"
        FontPath     "/usr/share/fonts/misc"
        FontPath     "/usr/share/fonts/kanjistrokeorders"
        FontPath     "/usr/share/fonts/75dpi/:unscaled"
        FontPath     "/usr/share/fonts/100dpi/:unscaled"
        FontPath     "/usr/share/fonts/75dpi"
        FontPath     "/usr/share/fonts/100dpi"
        FontPath     "/usr/share/fonts/cyrillic"
EndSection

Section "Module"
        Load  "extmod"
        Load  "record"
        Load  "dri2"
        Load  "dri"
        Load  "glx"
        Load  "dbe"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"  
        Option "XkbRules" "xorg"
        Option "XkbModel" "pc104"
        Option "XkbLayout" "pl" 
#       Option "AutoRepeat" "250 40"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "IMPS/2"
        Option      "Device" "/dev/input/mice"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        VertRefresh 43-75
        HorizSync 28-50   
        #DisplaySize      380   300     # mm
        Identifier   "Monitor0"
        VendorName   "Proview" 
        ModelName    "900P"    
 ### Comment all HorizSync and VertRefresh values to use DDC:
        HorizSync    30.0 - 65.0
        VertRefresh  50.0 - 75.0
        Option      "DPMS"
EndSection

Section "Monitor"
        VertRefresh 43-75
        HorizSync 28-50  
        #DisplaySize      380   300     # mm
        Identifier   "Monitor1"
        VendorName   "Proview" 
        ModelName    "900P"    
 ### Comment all HorizSync and VertRefresh values to use DDC:
        HorizSync    30.0 - 65.0
        VertRefresh  50.0 - 75.0
        Option      "DPMS"
EndSection

Section "Monitor"
        VertRefresh 43-75
        HorizSync 28-50  
        #DisplaySize      380   300     # mm
        Identifier   "Monitor2"
        VendorName   "Proview" 
        ModelName    "900P"    
 ### Comment all HorizSync and VertRefresh values to use DDC:
        HorizSync    30.0 - 65.0
        VertRefresh  50.0 - 75.0
        Option      "DPMS"
EndSection

Section "Device"
        Identifier  "Card1"
        Driver      "modesetting"
        VendorName  "ATI Technologies Inc"
        BoardName   "ATI Radeon HD 5450" # "Radeon RV250 If [Radeon 9000]"
        BusID       "PCI:2:0:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "NoAccel"                   # [<bool>]
        #Option     "SWcursor"                  # [<bool>]
        #Option     "Dac6Bit"                   # [<bool>]
        #Option     "Dac8Bit"                   # [<bool>]
        #Option     "BusType"                   # [<str>] 
        #Option     "CPPIOMode"                 # [<bool>]
        #Option     "CPusecTimeout"             # <i>
        #Option     "AGPMode"                   # <i>
        #Option     "AGPFastWrite"              # [<bool>]
        #Option     "AGPSize"                   # <i>
        #Option     "GARTSize"                  # <i>
        #Option     "RingSize"                  # <i>
        #Option     "BufferSize"                # <i>
        #Option     "EnableDepthMoves"          # [<bool>]
#        Option     "EnablePageFlip"            "True"
        #Option     "NoBackBuffer"              # [<bool>]
        #Option     "DMAForXv"                  # [<bool>]
        #Option     "FBTexPercent"              # <i>
        #Option     "DepthBits"                 # <i>
        #Option     "PCIAPERSize"               # <i>
#        Option     "AccelDFS"                  "True"
        #Option     "IgnoreEDID"                # [<bool>]
        #Option     "CustomEDID"                # [<str>] 
        #Option     "DisplayPriority"           # [<str>] 
        #Option     "PanelSize"                 # [<str>] 
        #Option     "ForceMinDotClock"          # <freq>  
#        Option     "ColorTiling"               "True"    
        #Option     "VideoKey"                  # <i>     
        #Option     "RageTheatreCrystal"        # <i>     
        #Option     "RageTheatreTunerPort"      # <i>     
        #Option     "RageTheatreCompositePort"  # <i>     
        #Option     "RageTheatreSVideoPort"     # <i>     
        #Option     "TunerType"                 # <i>     
        #Option     "RageTheatreMicrocPath"     # <str>   
        #Option     "RageTheatreMicrocType"     # <str>   
        #Option     "ScalerWidth"               # <i>     
#        Option     "RenderAccel"               "True"    
        #Option     "SubPixelOrder"             # [<str>] 
        #Option     "ClockGating"               # [<bool>]
        #Option     "VGAAccess"                 # [<bool>]
        #Option     "ReverseDDC"                # [<bool>]
        #Option     "LVDSProbePLL"              # [<bool>]
#        Option     "AccelMethod"               "EXA"
        Option     "DRI"                        "True"
        #Option     "ConnectorTable"            # <str>
        #Option     "DefaultConnectorTable"     # [<bool>]
        #Option     "DefaultTMDSPLL"            # [<bool>]
        #Option     "TVDACLoadDetect"           # [<bool>]
        #Option     "ForceTVOut"                # [<bool>]
        #Option     "TVStandard"                # <str>   
        #Option     "IgnoreLidStatus"           # [<bool>]
        #Option     "DefaultTVDACAdj"           # [<bool>]
        #Option     "Int10"                     # [<bool>]
        #Option     "EXAVSync"                  # [<bool>]
        #Option     "ATOMTVOut"                 # [<bool>]
        #Option     "R4xxATOM"                  # [<bool>]
        #Option     "ForceLowPowerMode"         # [<bool>]
        #Option     "DynamicPM"                 # [<bool>]
        #Option     "NewPLL"                    # [<bool>]
        #Option     "ZaphodHeads"               # <str>   
        Identifier  "Card0"
        Driver      "radeon"
        BusID       "PCI:2:0:0"
        VendorName  "ATI Technologies Inc"
        BoardName   "ATI Radeon HD 5450" # "Radeon RV250 If [Radeon 9000]"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "ShadowFB"                  # [<bool>]
        #Option     "DefaultRefresh"            # [<bool>]
        #Option     "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card2"
        Driver      "vesa" 
        BusID       "PCI:2:0:0"
EndSection

Section "Screen"
        DefaultDepth 24
        Identifier "Screen0"
        Device     "Card0"  
        Monitor    "Monitor0"
        SubSection "Display" 
           Depth                24
           Modes                "800x600" "1024x768" "1280x1024" "640x480"
         # ADD A VIRTUAL LINE TO PROVIDE FOR THE LARGEST SCREENS YOU WILL HOTPLUG
#           Virtual              1600 1200
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"  
        Monitor    "Monitor1"
        SubSection "Display" 
                Viewport   0 0
                Depth     1   
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4   
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8   
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15  
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16  
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24  
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen2"
        Device     "Card2"  
        Monitor    "Monitor2"
        SubSection "Display" 
                Viewport   0 0
                Depth     1   
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4   
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

#Section "DRI"
#        Group   0
#        Mode    0666
#EndSection
Comment 1 Andreas Boll 2012-11-07 07:58:51 UTC
What's your mesa version. Could you attach the output from glxinfo?
You need at least mesa 9.0 .
2D tiling has been activated by default in xf86-video-ati 7.0
which only affects r6xx+ asics.
If you don't want to upgrade mesa you can disable that feature with setting

Option "ColorTiling2D" "False"

in your Xorg.conf
Comment 2 Zbigniew 2012-11-07 13:01:09 UTC
Yes, you're quite right:
1. I was using Mesa 8.0.4 - not being aware, that there's a need for more recent version.
2. After adding "ColorTiling2D" "False" everything works fine, "CG Madness" reached 62 fps.
3. After replacing Mesa 8.0.4 with Mesa 9.0 + GLU (it's excluded by now, had to be added separately) - everything works fine with or without "ColorTiling2D" "False". BTW: although on www.x.org radeon pages found an information: "2D tiled mode can provide significant performance benefits over 1D tiling with 3D applications.", actually in CG Madness I didn't notice any difference in performance (no further "boost"), my guess is, that maybe it turns up in some specific conditions, or with special kind of games/applications (or maybe this game is just set to keep not more than around 60 fps, which perfectly makes sense, since more FPS than 50-60 won't offer "more fluent" motion graphics).

Therefore it's not a bug, but my mistake rather. Sorry for bothering, and thanks for your assistance.


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.