[LinuxBIOS] Winflashrom -- Current Status

Roman Kononov kononov at dls.net
Fri Aug 10 15:38:34 CEST 2007

Peter Stuge wrote:
> But PCI config accesses are not atomic operations. Is there a
> guarantee that the other CPUs are not in the middle of doing a PCI
> access already?
> And even if they are actually doing something else, perhaps they
> (erroneously? but we don't want to break them anyway) rely on 0xcfc
> being what they set it to in the last PCI config access?
By making all the CPUs spinning inside your DPC you avoid these 
problems. The Windoze kernel protects itself and does not execute 
scheduled DPC when the CPU is in the middle of a PCI access or anything 
similar. For sure, when a CPU makes a PCI access its "IRQL" is raised to 
"HIGH_LEVEL", which means that a dedicated spin lock is acquired and 
that CPU's interrupts are disabled.

I did not take the above statement about IRQL from an official document, 
I made it based on my experience and common sense.



More information about the coreboot mailing list