Announcement

Collapse
No announcement yet.

Initial Rust DRM Abstractions, AGX Apple DRM Driver Posted For Review

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

  • Initial Rust DRM Abstractions, AGX Apple DRM Driver Posted For Review

    Phoronix: Initial Rust DRM Abstractions, AGX Apple DRM Driver Posted For Review

    After being in development for several months, Asahi Lina with the Asahi Linux project has posted the initial Rust Direct Rendering Manager (DRM) subsystem abstractions for review as well as a preview of the experimental state of the AGX DRM driver providing the open-source kernel graphics driver support for Apple M1/M2 hardware...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    This is very exciting!

    Hopefully this work can later be used for getting other PowerVR GPUs -- Apple's is based on PowerVR -- working well in Linux too.

    EDIT: Okay y'all, I get it, it's "not really PowerVR" -- I said *based on*, and it's based on Mali to, I get it. I'm saying that the work involved, and the familiarity with it, might help get other stuff running too, indirectly.
    Last edited by mulenmar; 07 March 2023, 11:01 PM.

    Comment


    • #3
      Originally posted by mulenmar View Post
      This is very exciting!

      Hopefully this work can later be used for getting other PowerVR GPUs -- Apple's is based on PowerVR -- working well in Linux too.


      The answer is no this does not help with powervr support. The Apple M1/M2 gpu developers appeared to have looked at PowerVR GPU design this is true but its operation and behavior is massively different in many places. Yes the M1/M2 GPU design also appears bits from the ARM MALI GPU design as well. More apple gpu has been reversed more it looks to be a new GPU design that has taken concepts from other mobile tile based gpus and scaled up making it its own unique beast.

      This basically means when you have something odd happening with the Apple M1/M2 you can read the Mali and PowerVR documentation to get ideas on how you could attempt to fix the problem but suggestions from both lots of documentation may be useless because the M1/M2 GPU could be designed completely different in that area. So the work to support M1/M2GPU work cannot really be reused to support powervr gpus other than the Rust DRM abstractions that are being designed to be generic.

      There is a lot of stories going around that the GPU is powervr based but the reversing has not really proved that out. There is a big difference between based and just taken concepts from. Based suggests you care share code with powervr and M1/M2 GPU in the driver and this is not the case. M1/M2 GPU appears to take concepts from Mali and PowerVR and possible others and some own unique concepts thrown in for good measure so very much a custom new GPU design.

      Comment


      • #4
        has posted the initial Rust Direct Rendering Manager (DRM) subsystem abstractions for review
        The cynic in me reads that as "has posted the initial Rust bindings clutter for review".

        Comment


        • #5
          Originally posted by oiaohm View Post
          There is a lot of stories going around that the GPU is powervr based but the reversing has not really proved that out.
          There are, however, some indications that Apple may have used some relevant PowerVR IP in the design, as Imagination seems to have gotten quite a bit of money in a licensing settlement. Which part of that IP relates to what Apple GPU area is unknown to those without access to the various underlying details.

          Comment


          • #6
            Originally posted by mulenmar View Post
            This is very exciting!

            Hopefully this work can later be used for getting other PowerVR GPUs -- Apple's is based on PowerVR -- working well in Linux too.
            PowerVR is working alongside upstream to support their latest GPUs. There are zero plans to support anything older than that.

            Comment


            • #7
              Originally posted by CommunityMember View Post
              There are, however, some indications that Apple may have used some relevant PowerVR IP in the design, as Imagination seems to have gotten quite a bit of money in a licensing settlement. Which part of that IP relates to what Apple GPU area is unknown to those without access to the various underlying details.
              There is a big difference between based and just taken concepts from. << Concepts still equals patent infringement if you don't pay for IP licenses. Used IP does not answer if it concepts that are covered by patents or a design. The reverse so far says Concepts.

              Think GPU implementing concept of "S3 Texture Compression" when it was patented. All the interface and setup instructions can be unique.

              You can work out some of it by comparing what is known about the PowerVR vs Apple GPU. Large amounts of the Apple GPU does not look like PowerVR and is most likely independent development.

              Comment


              • #8
                Originally posted by kpedersen View Post

                The cynic in me reads that as "has posted the initial Rust bindings clutter for review".
                If even Linus is onboard, you can be sure it's not "clutter". This is the guy that threw the C++ proposals out the window on several occasions.

                Comment


                • #9
                  This person is incredible, and so is the progress they make.

                  This project really is a whole infrastructure/ecosystem effort. Once all the parts are in place, getting new Apple (and other) devices to work will be much, much easier.

                  Comment


                  • #10
                    Originally posted by anarki2 View Post

                    If even Linus is onboard, you can be sure it's not "clutter". This is the guy that threw the C++ proposals out the window on several occasions.
                    It's just the same old Rust Derangement Syndrome. Some people will never accept that it's not the 1980s any more.

                    Comment

                    Working...
                    X