Announcement

Collapse
No announcement yet.

TTM, Radeon KMS Support Goes Into Linux 2.6.31

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TTM, Radeon KMS Support Goes Into Linux 2.6.31

    Phoronix: TTM, Radeon KMS Support Goes Into Linux 2.6.31

    Last week a pull request went in to bring support in the Linux 2.6.31 kernel for Radeon kernel mode-setting and TTM memory management. This initial work was proposed to enter the Linux kernel as a staging driver and then be setup as a proper Linux kernel driver in the next release, Linux 2.6.32. Linus Torvalds has criticized some of this Radeon kernel mode-setting work since there are some known bugs at this time (though at least it wasn't called untested crap), but nevertheless he went ahead and pulled in this new code prior to Linux 2.6.31-rc1. Cheers! There is now Intel and ATI Radeon kernel mode-setting support within the Linux kernel...

    http://www.phoronix.com/vr.php?view=NzMzMA

  • #2
    I am compiling the 2.6.31 right now, so I can try this on F11 and R500.

    The only problem is that the fan on my R500 have a lot of resemblance to this fan

    http://www.youtube.com/watch?v=EXEdq3UnnFE

    So can anyone tell me, how I force it to the lowest possible power state, so I can unplug the fan?

    Comment


    • #3
      Excellent. BTW, what is a staging driver exactly? What limitation will this status imply in 2.6.31?

      Thanks in advance!

      Comment


      • #4
        Originally posted by mendieta View Post
        Excellent. BTW, what is a staging driver exactly? What limitation will this status imply in 2.6.31?

        Thanks in advance!
        http://kerneltrap.org/Linux/Introduc...x_Staging_Tree the link is a bit outdated, but it is still partially true.

        staging was originally a separate tree, now it resides in the kernel.
        Last edited by yoshi314; 06-17-2009, 08:40 AM.

        Comment


        • #5
          Originally posted by yoshi314 View Post
          http://kerneltrap.org/Linux/Introduc...x_Staging_Tree the link is a bit outdated, but it is still partially true.

          staging was originally a separate tree, now it resides in the kernel.
          Thanks, Yoshi. I followed the link. I still don't fully dig it. If this is residing in the kernel, how is it different from other drivers/components? To be specific, if someone want to access the new KMS or TTM in user space, can they just do it? If so, how is this different from being a proper driver/kernel component?

          Many thanks!

          Comment


          • #6
            Albeit it's a great news (I mean really great, pwned Nvidia lovers ). Will one day the radeonhd and the radeon drivers merged ? I guess that the work would have progressed faster if all the devs worked on the same code...

            Comment


            • #7
              Originally posted by Louise View Post
              I am compiling the 2.6.31 right now, so I can try this on F11 and R500. The only problem is that the fan on my R500 have a lot of resemblance to this fan;

              http://www.youtube.com/watch?v=EXEdq3UnnFE

              So can anyone tell me, how I force it to the lowest possible power state, so I can unplug the fan?
              Hi Louise;

              As far as I know the power state code has not yet been ported into the kernel, although it probably is high on the list after stability issues.

              Comment


              • #8
                Cool. I'll give it the updated kernel/drivers/mesa a test drive tonight or tomorrow. At least this means that hopefully when Karmic Koala comes out I won't have to run as many (if any) git/beta modules in order to get this all to work. If we're really lucky, Mesa 7.6 will already be out, and all of this will be included by default (hoping for this, but if I have to compile a few things myself, I'll survive).

                Comment


                • #9
                  Originally posted by mendieta View Post
                  Thanks, Yoshi. I followed the link. I still don't fully dig it. If this is residing in the kernel, how is it different from other drivers/components?
                  staging was created to host drivers that are not suitable for inclusion in mainline kernel; the code there is either highly experimental and/or incomplete or just too ugly (as in 'derived from windows driver') to be considered for inclusion among "regular" drivers. Instead of letting the code rot in some obscure repository it was decided to gather it in a public place hoping that someone might clean it up.

                  Originally posted by mendieta View Post
                  To be specific, if someone want to access the new KMS or TTM in user space, can they just do it? If so, how is this different from being a proper driver/kernel component?
                  In case of radeon KMS/TTM the issue is not the quality of the code, but the userspace interface. The rule is that once an userspace interface has been shipped in a stable kernel it shall be supported indefinitely. In this case the developers feel that the interface might need some further tuning, so it cannot be considered stable yet; at the same time a wider exposure of the code is desired in order to shake out bugs in this fairly large piece of new code. 'staging' seems a good compromise.

                  HTH

                  Comment


                  • #10
                    Originally posted by tettamanti View Post
                    In case of radeon KMS/TTM the issue is not the quality of the code, but the userspace interface. The rule is that once an userspace interface has been shipped in a stable kernel it shall be supported indefinitely. In this case the developers feel that the interface might need some further tuning, so it cannot be considered stable yet; at the same time a wider exposure of the code is desired in order to shake out bugs in this fairly large piece of new code. 'staging' seems a good compromise.

                    HTH
                    It certainly does, thank you! Basically, the radeon, radeonHD folks or whoever else wants to start using those APIs now and report bugs, suggest improvements, etc, and when the driver goes official they switch to the official API. If things change a lot and they have to rewire a few things they can't go out and knock on Linus' door with a trick or treat face

                    Comment


                    • #11
                      Originally posted by Xheyther View Post
                      Albeit it's a great news (I mean really great, pwned Nvidia lovers ). Will one day the radeonhd and the radeon drivers merged ? I guess that the work would have progressed faster if all the devs worked on the same code...
                      Not really. When you talk of radeon and radeonhd drivers you are talking of one *small* part of the puzzle. All work on libdrm, DRM kernel modules and Mesa gets shared. Optimizing away the radeon/radeonhd and combining them would be unlikely to give any extra resources for developing those other bigger parts of the puzzle. After all, much of the differences in the drivers (like modesetting stuff, HDMI audio, TV out and so) seems to be ending in the kernel in a unified solution anyway.

                      Comment


                      • #12
                        Originally posted by Louise View Post
                        So can anyone tell me, how I force it to the lowest possible power state, so I can unplug the fan?
                        Might be dangerous and burn the card even with maximum powersaving options on. I'd recommend using closed drivers and waiting until open drivers get fan control capabilities if noise is an issue.

                        Comment


                        • #13
                          Originally posted by bridgman View Post
                          Hi Louise;

                          As far as I know the power state code has not yet been ported into the kernel, although it probably is high on the list after stability issues.
                          Hi

                          So I can't just pull xf86-video-ati master, and then use ForceLowPowerMode and DynamicPM with 2.6.31?

                          Comment


                          • #14
                            It works !!!

                            Finally, here it is ! I just followed Dave's tutorial and it almost worked immediately.
                            Just had to revert this : http://git.kernel.org/?p=linux/kerne...4c40ac16148ec0
                            If you Xorg log complains about SAREA something, just revert this commit.

                            Ok, on the down side now, I'd complain about performances and drm flooding both my Xorg.log and kernel logs.
                            Xorg.log :
                            RADEON DRM CS failure - corruptions/glitches may occur -22
                            bufmgr: last submission : r:0 vs g:33554432 w:0 vs v:108697185

                            dmesg:
                            [drm:r300_cs_track_check] *ERROR* [drm] No buffer for color buffer 1 !
                            [drm:radeon_cs_ioctl] *ERROR* Invalid command stream !

                            Also, there is some mini tearing on the screen everywhere, may it be moving or not. It is not really beautiful and is also a bit annoying as texts are kind of flickering. Also, there is a backdrop problem when running compiz, for instance, with glxgears, I first see the wheels and half a second later, the black backdrop comes. The problem is the same with every window.
                            I won't use KMS/DRI2 now, this is not ready and I understand the choice to put KMS in the stagging branch. I'll try to follow this as it improves.

                            Well done everyone !
                            Last edited by MPF; 06-17-2009, 04:56 PM.

                            Comment


                            • #15
                              Originally posted by nanonyme View Post
                              Might be dangerous and burn the card even with maximum powersaving options on. I'd recommend using closed drivers and waiting until open drivers get fan control capabilities if noise is an issue.
                              My primary GPU is the onboard 780G (3200 HD), and the R500 PCI-E card is just a card I bought very cheap so I just play with the open source 3D.

                              So I "just" the card dies, it wouldn't be the end of the world, but if it catches fire, or damages the mainboard, I might look at it differently

                              Comment

                              Working...
                              X