I was able to change MAC address of my NIC. Required specifying `iomem=relaxed` to kernel cmdline.
$ lspci -vnn ... 08:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03) Subsystem: Gigabyte Technology Co., Ltd Device [1458:e000] Flags: bus master, fast devsel, latency 0, IRQ 39 Memory at fcb00000 (32-bit, non-prefetchable) [size=128K] I/O ports at f000 [size=32] Memory at fcb20000 (32-bit, non-prefetchable) [size=16K] Capabilities: <access denied> Kernel driver in use: igb Kernel modules: igb
$ sudo flashrom -pnicintel_eeprom -r 123 flashrom v1.2 on Linux 5.8.18-200.fc32.x86_64 (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). === 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 Programmer flash chip "Opaque flash chip" (4 kB, Programmer- specific) on nicintel_eeprom. Reading flash... done.
Reading is no problem. Writing operation reports 'Flash update failed' at the end, however changes apply to the flash.
$ sudo flashrom -pnicintel_eeprom -w 123 flashrom v1.2 on Linux 5.8.18-200.fc32.x86_64 (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). === 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 Programmer flash chip "Opaque flash chip" (4 kB, Programmer- specific) on nicintel_eeprom. Reading old flash chip contents... done. Erasing and writing flash chip... Erase/write done. Verifying flash... VERIFIED. Flash update failed