Bir anakartın BIOS'unu güncellemek için flashrom kullanabilirsiniz .
Örnek (Abit KN9 Ultra):
Kurulu AMD Athlon 64 kurulu, AM2 Soket, Nvidia yonga seti, 2006 yılında piyasaya sürüldü. Değiştirilebilir 256 KB flash çip var. BIOS, Phoenix'in ticari markası gibi görünen 'Award' ile etiketlenmiştir.
Flashrom bu yonga setini ve bu flaş yongasını destekler.
Destek aşağıdaki gibi bir komutla test edilebilir:
# flashrom --programmer internal
Calibrating delay loop... OK.
Found chipset "NVIDIA MCP55".
Enabling flash write... OK.
Enabling full flash access for board "abit KN9 Ultra"... OK.
Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH) mapped at physical address 0x00000000fff80000.
Öncelikle flaş çipinin mevcut içeriğini yedeklemek mantıklıdır:
# flashrom --programmer internal -c Pm49FL004 -r backup.bin
Daha sonra satıcıdan gelen bir vanilya görüntü dosyası ile karşılaştırılabilir (örn. xxd
Ve kullanılarak vimdiff
).
Bazı farklılıklar beklenir - çünkü bazı BIOS'lar flaşta ek bilgiler (örn. DMI) ve yapılandırma (ör. MAC adresleri) depolar. Abit KN9 Ultra için de durum aynı. DMI verileri ilk 1872 baytta depolanır - ve önyükleme sırasında BIOS tarafından kolayca yeniden oluşturulur. MAC adresleri 0x74E30 göreli konumunda depolanır.
Satıcı ürün yazılımı dosyaları, içeren awdflash.exe
bir arşivde ve BIN
örneğin bir dosyada paketlenmiştir M520A_23.BIN
. Bu örnekte, bin dosyası BIOS görüntüsünü olduğu gibi içerir, yani flaş çipini aşağıdaki gibi bir komutla doğrudan yazılabilir:
# flashrom --programmer internal -c Pm49FL004 -w M520A_23.BIN
Calibrating delay loop... OK.
Found chipset "NVIDIA MCP55".
Enabling flash write... OK.
Enabling full flash access for board "abit KN9 Ultra"... OK.
Found PMC flash chip "Pm49FL004" (512 kB, LPC, FWH) mapped at physical address 0x00000000fff80000.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
Güncellemeye bağlı olarak, bir sonraki yeniden başlatma için CMOS'un temizlenmesi gerekebilir - aksi takdirde BIOS başlatılamayabilir. Bu kartta CMOS bir atlama teli ayarı ile silinebilir. Yazılım ile temizleme de mümkündür (örn . CmosPwd aracılığıyla ).
Benzersiz varsayılan MAC adreslerini korumak için, yeni satıcı resmi yanıp sönmeden önce yamalanabilir, örn:
dd if=backup.bin of=mac.bin bs=1 count=16 skip=$(echo 16 i 74E30 p | dc)
dd if=mac.bin of=M520A_23_with_mac.bin bs=1 seek=$(echo 16 i 74E30 p | dc) \
conv=notrunc
tuzaklar:
- Flash yazma henüz flashrom tarafından uygulanmayan anakarta özel kart etkinleştirme (yazma korumasını devre dışı bırakmak için) nedeniyle başarısız olabilir .