As far I can tell, the firmware update happens during booting. The firmware is loaded into a staging area and the bios/uefi does the flashing. I've updated the NVMe firmware on my laptop with Linux and it worked out nicely. Maybe I was just lucky :)