Announcement

Collapse
No announcement yet.

AMD Finally Enabling PSR By Default For Newer Hardware With Linux 5.16

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

  • AMD Finally Enabling PSR By Default For Newer Hardware With Linux 5.16

    Phoronix: AMD Finally Enabling PSR By Default For Newer Hardware With Linux 5.16

    With it getting late into the Linux 5.15 kernel cycle, the focus is shifting by the Direct Rendering Driver maintainers from new feature work targeting the next cycle (5.16) to instead on bug fixes. AMD sent out a pull request of new AMDGPU Linux 5.16 material this week that is primarily delivering bug fixes but one notable addition is finally enabling PSR by default for newer GPUs...

    https://www.phoronix.com/scan.php?pa...Linux-5.16-PSR

  • #2
    Can we test this by forcing it enabled? Any kernel parameter?

    Comment


    • #3
      Yes, how can I test this with other models?

      Comment


      • #4
        R41N3R juxuanu googling led me to amdgpu.dcfeaturemask=0x8, which inspecting source code should be it, PSR enabling bit is 3rd one in dcfeaturemask, but unfortunatelly does not work with me. I see PSR support: 0 in dmesg

        Comment


        • #5
          Forgive my ignorance, but what is panel self refresh exactly for?

          Comment


          • #6
            Originally posted by Zeioth View Post
            Forgive my ignorance, but what is panel self refresh exactly for?
            Yes.

            I miss this kind of explanations in Phoronix articles, sincerely. I understand Michael may be busy, but this would be greatly appreciated.

            Is this?

            https://www.anandtech.com/show/7208/...l-self-refresh

            Then it seems only useful for SoC devices. Am I right?

            Comment


            • #7
              Originally posted by Zeioth View Post
              Forgive my ignorance, but what is panel self refresh exactly for?
              It's power saving feature for graphics chips, Intel has it forever, but it's also usually disabled by default.

              Comment


              • #8
                Thou I think display also has to have support for it to work, and then it can enter lower power states when screen content is mostly static

                Comment


                • #9
                  Originally posted by Zeioth View Post
                  Forgive my ignorance, but what is panel self refresh exactly for?
                  From the article:
                  Originally posted by phoronix
                  Panel Self Refresh os a power-savings feature for when the display/monitor contents is static by being able to power-down extra circuitry.

                  Comment


                  • #10
                    Originally posted by Zeioth View Post
                    Forgive my ignorance, but what is panel self refresh exactly for?
                    You usually see it in laptops or other mobile devices that use eDP (embedded displayport) for their display.

                    There's two versions IIRC, the original would save power by not constantly refreshing the display with the same data if there was no change. And this helped quite a bit with power savings as beyond the display it allowed other hardware to enter a lower idle power state too.

                    You might be aware of S3 vs S2idle (what newer products use instead of proper S3 suspend), but at least with linux sometimes something like the iGPU cannot power down low enough to enter one of it's substates to get decent power savings and ends up draining battery still. PSR is usually important there, but not only do you need GPU vendor support along with driver and OS support, you also need the display to use the correct version of eDP.

                    That version of eDP was 1.1 or 1.2 IIRC. The spec version doesn't align with official DisplayPort versions though, usually lags behind a bit, but these were a thing back in 2011-2012. Still when I bought a modern Intel laptop with 10th gen CPU back in 2019Q4 it failed to support PSR (despite Intel supporting it and Linux having good support for Intel iGPU with PSR, unlike AMD at the time), because the display panel (which was manufactured in 2017) was saving some cents by using an older eDP connection. The laptop itself with that Intel CPU supported newer eDP, but since the display panel didn't I was out of luck, and would need to replace the panel if I really wanted it (that'd cost about half what I paid for the laptop, a budget Acer).

                    I think it was around 2016 a newer eDP version added support for PSR2, which is an improvement that takes a dirty tile approach or something like that. Instead of only working on a static screen, you could do something like subdivide the display update to still work for mostly static screens (eg only cursor or clock are updating, so only that data needs to be sent), and that'd help save even more power IIRC.

                    Intel would market that support about 1W displays, where a display might usually require 5-6W or so without the PSR support. They also had some other feature, which might only apply to Windows/mac, where fullscreen video was quite lowpower and efficient via some optimization and allowed for over 10 hours on battery playback (this was years ago too).

                    Comment

                    Working...
                    X