next up previous
Next: 4.1 IO Port space Up: Porting Drivers to HP Previous: 3.2 More than 256

4 Posted vs Non-Posted Writes

Many linux drivers were initially implemented using IO Port address space since ISA/EISA was the standard when linux was born. On IA32, special instructions (yes, most of you know this already) exist to access this alternative address space.

What's key here is IO Port space also has different semantics. One similarity is reads and writes to either IO Port or MMIO space do not interact with CPU Cache. But a subtle difference is writes to IO Port space are Non-Post-able. This means the CPU stalls waiting for the transaction to complete. More on this below.



Subsections

Grant Grundler 2002-06-17