Announcement

Collapse
No announcement yet.

Flashrom To Support Flashing ATI Graphics Cards

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

  • Flashrom To Support Flashing ATI Graphics Cards

    Phoronix: Flashrom To Support Flashing ATI Graphics Cards

    We have learned that Flashrom, an open-source program for flashing the BIOSes on many different motherboards / chipsets, is soon going to be picking up support for flashing the video BIOS image on ATI graphics cards. Specifically, it should be possible to flash the BIOS of the ATI Radeon X1000 (R500) series and potentially the Radeon HD 2000/3000 (R600) series too...

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

  • #2
    Not working for me

    I tried to use it for my Nvidia 9400 based Gygabite MB (MCP79) and it failed.
    I tried 2 more M/B and had no success ...

    Comment


    • #3
      Nice!
      Free flashing also for graphics cards!

      Comment


      • #4
        i tried flashrom on my k8nf9u gigabyte mainboard. bios chip was detected. i was able to dump the bios. but...

        all i can say - dual bios solution is a life saver.

        Comment


        • #5
          Interesting thing, but it needs of course some content to flash on these VGA-BIOS Chips. And of course one should have a backup card in store. Especially with the lot of possibly different implementations by card vendors you may need a lot of flags/command line options to set as it is with the mainboards.

          Comment


          • #6
            but it needs of course some content to flash on these VGA-BIOS Chips
            if you report bugs on freedesktop.org frequrently you probably would learn the typical linux videocard bios dumping mantra; at least as far as ati cards are concerned.

            it would not be too difficult to get a hold of a e.g. bios file from a different (preferably newer revision of the same model) card this way.

            Comment


            • #7
              Originally posted by yoshi314 View Post
              if you report bugs on freedesktop.org frequrently you probably would learn the typical linux videocard bios dumping mantra; at least as far as ati cards are concerned.
              it would not be too difficult to get a hold of a e.g. bios file from a different (preferably newer revision of the same model) card this way.
              Aww, don't tempt me. Sounds interesting but I might end up bricking my cards.
              Is there a link for a procedure howto and neccessary tools how to do a dump of a (ATI) VGA BIOS?

              Comment


              • #8
                Why does a graphics card have a BIOS???

                What goes on when a graphics card is powered on?

                Comment


                • #9
                  The main point is that the System BIOS doesn't know anything about graphics hardware, so all code and data specific to the display has to be provided by the Video BIOS. That way if you take one graphics card out and put another one in you get new BIOS information to match the new hardware... and you need that in order to light up the screen during the boot process, before the OS and drivers have loaded. Everything soldered onto the motherboard is handled by the System BIOS, everything soldered onto the graphics card is covered by Video BIOS.

                  When you have a motherboard with integrated graphics, there is still a separate VBIOS but the VBIOS image is usually stored in the same ROM as the SBIOS (and the ROM is bigger as a result).

                  As to what happens (ie what the BIOS does) :

                  The SBIOS calls VBIOS to initialize the card, and then makes subsequent calls (typically using INT10) to display information on the screen. BIOS code implements the standard INT10 calls and VESA BIOS Extensions (VBE) which are used by SBIOS and also by a number of operating systems. One example of this is the standard "vesa" DDX driver, which makes VBE calls to control the graphics card.

                  http://en.wikipedia.org/wiki/INT_10

                  http://en.wikipedia.org/wiki/VESA_BIOS_Extensions

                  The VBIOS also provides information which is used by drivers to understand the details of the card, eg what kind of connectors, how they are wired, memory type/size/speed etc. This can either be in the form of data tables or code or both.
                  Last edited by bridgman; 05-13-2009, 08:01 PM.

                  Comment


                  • #10
                    Interesting!

                    Makes one wonder, what the motivation is to flash it

                    I can understand the purpose of coreBoot, if you are Google, but flashing a graphics card BIOS?

                    Comment


                    • #11
                      Originally posted by Louise View Post
                      Interesting!

                      Makes one wonder, what the motivation is to flash it

                      I can understand the purpose of coreBoot, if you are Google, but flashing a graphics card BIOS?
                      Back in the R300 days (and maybe earlier) we shipped some inexpensive cards which used the same GPU chip as more expensive cards but with some of the graphics pipes disabled. The GPUs on those boards were usually ones which failed functional test with all pipes enabled but which passed all the tests with one or more pipes disabled.

                      Flashing the BIOS allowed you to fool the driver into thinking it was running on a more expensive card, which enabled all the pipes and increased performance, but which often resulted in some corruption and occasional hangs as well. Ever since then, the dream of "flashing the BIOS to make my card run twice as fast" has persisted.

                      More recently, there were some cases where board manufacturers shipped VBIOS images which had less-than-optimal temp/speed profiles for the fan controllers. In these cases the manufacturers posted BIOS images with improved fan controller profile settings, along with a utility which allowed the BIOS to be re-flashed with the improved profile.

                      A number of users took advantage of tools which tweaked the clock settings in the BIOS images, allowing them to over-clock the boards further than the manufacturers allowed.

                      When the 4870 came out a number of owners decided to re-flash their boards without manufacturer support and used an existing flash utility. The result in almost every case was a non-functional board since the 4870 boards used a larger (128KB) ROM. This, in turn, resulted in a rash of reports that new 4870 boards were "failing for no reason" after a few hours use. After a new flash utility was released which programmed the *entire* ROM image the reports of "sudden 4870 death" stopped just as suddenly.

                      The main point is that flash tools are great for allowing in-the-field updates provided by the manufacturer (ie putting in an image designed for your board), but flashing with the image from even a slightly different board is generally a Bad Thing, and nearly impossible for the driver to code around since the BIOS contents are the driver's only source of information about the hardware on which it is running.
                      Last edited by bridgman; 05-13-2009, 08:30 PM.

                      Comment


                      • #12
                        I think it is a good thing and if amd does not provide a bios flasher, it's great that other people do. I had problems with an OEM mainboard and flashed a different image, a BIOS from phillips, although i brought the pc in mediamarkt and there war actually a microstar BIOS in it. But this contained many bugs, you cannot imagine how happy I was, if I could flash another image! I hate it to depend on the manufacturer, because they do usually not help in such cases.

                        If a graphics card manufacturer is too stupid to implement good fan control or power saving, why not flash another image to be happy? Of course it is dangerous, but that's the only way.

                        Comment


                        • #13
                          well, back in my nvidia days a lot of people with problems solved them by flashing the card's bios...

                          Comment


                          • #14
                            Originally posted by bridgman View Post
                            Back in the R300 days (and maybe earlier) we shipped some inexpensive cards which used the same GPU chip as more expensive cards but with some of the graphics pipes disabled. The GPUs on those boards were usually ones which failed functional test with all pipes enabled but which passed all the tests with one or more pipes disabled.

                            Flashing the BIOS allowed you to fool the driver into thinking it was running on a more expensive card, which enabled all the pipes and increased performance, but which often resulted in some corruption and occasional hangs as well. Ever since then, the dream of "flashing the BIOS to make my card run twice as fast" has persisted.

                            More recently, there were some cases where board manufacturers shipped VBIOS images which had less-than-optimal temp/speed profiles for the fan controllers. In these cases the manufacturers posted BIOS images with improved fan controller profile settings, along with a utility which allowed the BIOS to be re-flashed with the improved profile.

                            A number of users took advantage of tools which tweaked the clock settings in the BIOS images, allowing them to over-clock the boards further than the manufacturers allowed.
                            So the VBIOS on my Asus graphics card is programmed by Asus, and not ATi?

                            Does IGP's also have a VBIOS? (Sounds expensive to put a flash inside the Northbridge?)

                            Originally posted by bridgman View Post
                            When the 4870 came out a number of owners decided to re-flash their boards without manufacturer support and used an existing flash utility. The result in almost every case was a non-functional board since the 4870 boards used a larger (128KB) ROM. This, in turn, resulted in a rash of reports that new 4870 boards were "failing for no reason" after a few hours use. After a new flash utility was released which programmed the *entire* ROM image the reports of "sudden 4870 death" stopped just as suddenly.
                            haha

                            Originally posted by bridgman View Post
                            The main point is that flash tools are great for allowing in-the-field updates provided by the manufacturer (ie putting in an image designed for your board), but flashing with the image from even a slightly different board is generally a Bad Thing, and nearly impossible for the driver to code around since the BIOS contents are the driver's only source of information about the hardware on which it is running.
                            I will never understand, why someone (today) would want to try and enable extra features on GPU's/CPU's. They are so cheap today, and even thought AMD have planned to release a dual core Phenom, which actually is a quad core Phenom, I would never want to trade a 100% working CPU for a maybe running CPU.

                            Then there's those that say that it is so easy to enable the extra cores on e.g. a triple core to become a quad core, and AMD wants users to do that. But still, a AM2+ quad core costs almost nothing now a days.

                            And with the AMD/Intel case yesterday, we might even see even cheaper quad cores due to increased sells

                            Comment


                            • #15
                              Originally posted by Louise View Post
                              So the VBIOS on my Asus graphics card is programmed by Asus, and not ATi?

                              Does IGP's also have a VBIOS? (Sounds expensive to put a flash inside the Northbridge?)
                              We supply the BIOS code and data tables but the board mfg changes specific data tables to match their board design & preferences.

                              IGPs also have a VBIOS, but it's stored in the same ROM chip on the motherboard which holds the system BIOS (SBIOS). It's not actually stored inside the Northbridge chip.

                              Comment

                              Working...
                              X