You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Programmers that need x86 MSR or port IO: internal, atahpt, atapromise, nic3com, nicnatsemi, nicrealtek, rayer_spi, and satamv
I²C programmers: lspcon_i2c_spi, mediatek_i2c_spi, and realtek_mst_i2c_spi
Perhaps some of these should be supported in the future! However, at the moment, they're incompatible with Windows.
The problem
In the latest stable version of Flashrom, v1.2, it sufficed to specify -Dpciutils=false, -Dconfig_linux_mtd=false, and -Dconfig_linux_spi=false. Disabling pciutils automatically disabled PCI programmers. However, when building the latest commit (b9e8b89), it requires you to manually disable each programmer – otherwise it'll error out, either saying “one or more enabled programmer requires PCI access”, or producing a mysterious compiler or linker error. Thus, the command currently required to build at all on Windows is the unwieldy:
I personally wrestled with this for days before I managed to find a combination of options that worked (creating #243 and #244, now closed, in the process). It's clear that it's not the most user-friendly build flow!
The fix
I suggest doing one of the following:
Automatically disable incompatible programmers when the system is detected to be Windows.
Provide override options to disable whole categories at once (say, -Dconfig_no_libpci=true, etc., or even -Dconfig_windows_programmers_only=true).
Which would you rather be implemented?
Build instructions
To build on Windows to test this, go through the following steps:
The presupposition that all these categories of programmer are unsupported on Windows is based on an understanding cobbled together from (potentially outdated) documentation and code-skimming, so if someone could confirm or deny that I've got the correct list, that would be nice as well!
Background
As it stands, there are four categories of programmer that are unsupported by Flashrom on Windows. They are:
linux_mtd
andlinux_spi
atahpt
,atapromise
,atavia
,drkaiser
,gfxnvidia
,internal
,it8212
,nic3com
,nicintel
,nicintel_eeprom
,nicintel_spi
,nicnatsemi
,nicrealtek
,ogp_spi
,satamv
, andsatasii
internal
,atahpt
,atapromise
,nic3com
,nicnatsemi
,nicrealtek
,rayer_spi
, andsatamv
lspcon_i2c_spi
,mediatek_i2c_spi
, andrealtek_mst_i2c_spi
Perhaps some of these should be supported in the future! However, at the moment, they're incompatible with Windows.
The problem
In the latest stable version of Flashrom, v1.2, it sufficed to specify
-Dpciutils=false
,-Dconfig_linux_mtd=false
, and-Dconfig_linux_spi=false
. Disablingpciutils
automatically disabled PCI programmers. However, when building the latest commit (b9e8b89), it requires you to manually disable each programmer – otherwise it'll error out, either saying “one or more enabled programmer requires PCI access”, or producing a mysterious compiler or linker error. Thus, the command currently required to build at all on Windows is the unwieldy:I personally wrestled with this for days before I managed to find a combination of options that worked (creating #243 and #244, now closed, in the process). It's clear that it's not the most user-friendly build flow!
The fix
I suggest doing one of the following:
-Dconfig_no_libpci=true
, etc., or even-Dconfig_windows_programmers_only=true
).Which would you rather be implemented?
Build instructions
To build on Windows to test this, go through the following steps:
pacman -S git base-devel pactoys
.pacboy -S meson cc pkg-config libftdi libusb
.cd
into it:git clone https://github.com/flashrom/flashrom.git && cd flashrom
.The text was updated successfully, but these errors were encountered: