Announcement

Collapse
No announcement yet.

An Open-Source BIOS For ATI GPUs?

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

  • An Open-Source BIOS For ATI GPUs?

    Phoronix: An Open-Source BIOS For ATI GPUs?

    Oliver McFadden, the developer behind the Revenge reverse-engineering utility for ATI Radeon GPUs, is hoping to create a free software (GPL licensed) Video BIOS for at least one ATI Radeon graphics card. This is certainly a much larger project than just reverse engineering a driver and is much more risky, but at the same time is very interesting and holds merit.

    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
    Okay, I understand of having a Linux BIOS on a motherboard, but what is the interest for the end-user (I'm an end-user, not a programmer) ??

    Will I get more speed of my card if it should have a Linux BIOS ??

    Anyway, I've to admit that I'm a little lost with all the stuff around the GFX in Linux (both Nvidia, ATI and Intel).
    Would it be a good idea to write a little article on the various options of drivers when using a GFX card on Linux, how to activate them, their advantages and drawbacks ??

    For example, what is "AVIVO" ? What is the AtomBIOS ? What is the use for end-user ?

    Kick my ass if those questions as stupidly newbie, but I'm a little lost sometimes...

    Comment


    • #3
      AtomBIOS is a standard BIOS interface for ATI cards, meaning one code set (in theory) can be used to perform basic setup functions on any (relatively modern) ATI card.

      AVIVO is several things. It is a pretty much defunct driver that preceded radeonhd, it is also what ATI calls the video decoding acceleration on their cards.

      In terms of a GFX bios, the real purpose is to get direct control of the hardware's functionality. Unlike the CPU, the GPU cant normally be fed arbitrary instructions. Certain values are put in registers to perform certain operations defined by the card's BIOS. However, this limits the tweak-ability of the card, because the driver is really not much more than another abstraction layer on top of the BIOS. Suppose we could write a BIOS that is specifically designed to run OpenGL, for example. It could greatly reduce the size of the driver needed, as well as improve performance substantially. It could also render pixel-perfect OpenGL, which would allow OpenGL to be used for GUIs and stuff that can't deal with the rather inaccurate way cards typically render it.

      This is a somewhat fuzzy description of these things, as I haven't actually developed any GFX drivers or BIOSs myself, but cracking the BIOS barrier is definitely the key to enabling the hardware to be used to the fullest extent possible.

      Comment


      • #4
        Many thanks, this is much more clear now !

        Comment


        • #5
          I wonder if it might increase the entire boot process like the LinuxBIOS for your motherboard..well just joking.

          Looking forward to test it out

          Comment


          • #6
            Originally posted by TechMage89 View Post
            AtomBIOS is a standard BIOS interface for ATI cards, meaning one code set (in theory) can be used to perform basic setup functions on any (relatively modern) ATI card.

            AVIVO is several things. It is a pretty much defunct driver that preceded radeonhd, it is also what ATI calls the video decoding acceleration on their cards.

            In terms of a GFX bios, the real purpose is to get direct control of the hardware's functionality. Unlike the CPU, the GPU cant normally be fed arbitrary instructions. Certain values are put in registers to perform certain operations defined by the card's BIOS. However, this limits the tweak-ability of the card, because the driver is really not much more than another abstraction layer on top of the BIOS. Suppose we could write a BIOS that is specifically designed to run OpenGL, for example. It could greatly reduce the size of the driver needed, as well as improve performance substantially. It could also render pixel-perfect OpenGL, which would allow OpenGL to be used for GUIs and stuff that can't deal with the rather inaccurate way cards typically render it.

            This is a somewhat fuzzy description of these things, as I haven't actually developed any GFX drivers or BIOSs myself, but cracking the BIOS barrier is definitely the key to enabling the hardware to be used to the fullest extent possible.
            The closed source driver is the only real consumer of the atom bios. In now way the bios get excuted or have control of the card if you don't run it either by issuing a vga or vesa interupt or by directly calling into it. Replacing the bios by some free bios is more a fun project than a things that might add real value or control over the card.

            And from my point of view relying on bios is bad as it's mostly a black box and what it does we could do it in better way. Btw you could run a card without a bios if you know how to post it

            Comment


            • #7
              Originally posted by TechMage89 View Post

              In terms of a GFX bios, the real purpose is to get direct control of the hardware's functionality. Unlike the CPU, the GPU cant normally be fed arbitrary instructions. Certain values are put in registers to perform certain operations defined by the card's BIOS. However, this limits the tweak-ability of the card, because the driver is really not much more than another abstraction layer on top of the BIOS. Suppose we could write a BIOS that is specifically designed to run OpenGL, for example. It could greatly reduce the size of the driver needed, as well as improve performance substantially. It could also render pixel-perfect OpenGL, which would allow OpenGL to be used for GUIs and stuff that can't deal with the rather inaccurate way cards typically render it.
              Wow this whole section is just inaccurate gibber. The BIOS has nothing to do with OpenGL programming. This whole statement is so wrong, I've no idea where to start pointing it out.

              the fact someone linked this into another thread is even scarier.

              Dave.

              Comment


              • #8
                Jerome wrote this in 2007:

                Originally posted by glisse View Post
                The closed source driver is the only real consumer of the atom bios. In now way the bios get excuted or have control of the card if you don't run it either by issuing a vga or vesa interupt or by directly calling into it.
                Is this still accurate? I was under the impression that bypassing AtomBIOS was the RadeonHD way, while the radeon drivers used it (at least for modesetting and other important functionality).

                Comment


                • #9
                  Originally posted by pingufunkybeat View Post
                  Jerome wrote this in 2007:



                  Is this still accurate? I was under the impression that bypassing AtomBIOS was the RadeonHD way, while the radeon drivers used it (at least for modesetting and other important functionality).
                  We now use the atombios functions for modesetting and hw initialization. I must say that using the bios makes things a lot easier (if you have little faith in bios correctness) because bios hide things like the timing the vram needs (oem & ddr chips manufacturer dependant so might vary from one card to another from the same oem thought often the same accross oem) also hide the whole display register shuffling that hw engineer love to perform.

                  Last modesetting is not that important, i mean there is not much magic going in there (beside drm hdcp stuff which we don't care about) it's just a painfull things you have to do.

                  Comment


                  • #10
                    Originally posted by airlied View Post
                    Wow this whole section is just inaccurate gibber. The BIOS has nothing to do with OpenGL programming. This whole statement is so wrong, I've no idea where to start pointing it out.

                    the fact someone linked this into another thread is even scarier.

                    Dave.
                    Whats real funny is when your technical answer is so bad that you manage to convinced Dave Airlie to post on phoronix.

                    Comment

                    Working...
                    X