libv / flashrom

Personal copy of flashrom
GNU General Public License v2.0
7 stars 6 forks source link

[Test results] Polaris10 works (read, write, verify) #5

Open Djhg2000 opened 5 years ago

Djhg2000 commented 5 years ago

I have a Sapphire RX 470 8GB Mining Edition (the later version without a DVI port) and I can confirm your flashrom fork works perfectly fine with it!

I bought the card used and it came with a broken overclock written to the primary bios slot and it has a whooping 4 VBIOS flash slots operated by hardware switches, so I had very little to lose. I read out both the broken and the safe mode VBIOS, then compared them to the dumps made with GPU-Z in a Windows 10 VM (which is driving me nuts). Since they both matched I went ahead with overwriting the broken VBIOS with the safe mode one, and the card did indeed boot and read out the safe mode VBIOS with GPU-Z!

Attached below is the log of me restoring the broken VBIOS to the card and verifying that the safe mode VBIOS is no longer on there (just so that I had a log to show you):

# ./flashrom -pati_spi -v RX470_safemode_flashrom.bin   
flashrom  on Linux 4.20.0 (x86_64)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Detected 1002:67df@01:00.0 "Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480]"
===
This PCI device is UNTESTED. Please report the 'flashrom -p xxxx' output
to flashrom@flashrom.org if it works for you. Please add the name of your
PCI device to the subject. Thank you for your help!
===
Found GigaDevice flash chip "GD25Q20(B)" (256 kB, SPI) on ati_spi.
Verifying flash... VERIFIED.
# ./flashrom -pati_spi -w RX470_default_flashrom.bin 
flashrom  on Linux 4.20.0 (x86_64)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Detected 1002:67df@01:00.0 "Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480]"
===
This PCI device is UNTESTED. Please report the 'flashrom -p xxxx' output
to flashrom@flashrom.org if it works for you. Please add the name of your
PCI device to the subject. Thank you for your help!
===
Found GigaDevice flash chip "GD25Q20(B)" (256 kB, SPI) on ati_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
# ./flashrom -pati_spi -v RX470_safemode_flashrom.bin 
flashrom  on Linux 4.20.0 (x86_64)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Detected 1002:67df@01:00.0 "Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480]"
===
This PCI device is UNTESTED. Please report the 'flashrom -p xxxx' output
to flashrom@flashrom.org if it works for you. Please add the name of your
PCI device to the subject. Thank you for your help!
===
Found GigaDevice flash chip "GD25Q20(B)" (256 kB, SPI) on ati_spi.
Verifying flash... FAILED at 0x00000021! Expected=0x65, Found=0x2c, failed byte count from 0x00000000-0x0003ffff: 0x2e3b
# ./flashrom -pati_spi -v RX470_default_flashrom.bin 
flashrom  on Linux 4.20.0 (x86_64)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Detected 1002:67df@01:00.0 "Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480]"
===
This PCI device is UNTESTED. Please report the 'flashrom -p xxxx' output
to flashrom@flashrom.org if it works for you. Please add the name of your
PCI device to the subject. Thank you for your help!
===
Found GigaDevice flash chip "GD25Q20(B)" (256 kB, SPI) on ati_spi.
Verifying flash... VERIFIED.
guub187 commented 3 years ago

I also confirm the last flashrom-ati's commit works perfectly on my Sapphire Radeon RX470 ( for reading, writting and erasing ).

Ellesmere/Polaris 10 Pro card VendorID = 1002 (ATI) DeviceID = 67df (Ellesmere RX470) SPI = Gigadevice GD25Q40(B) of 512KB

Many thanks for this software!