 
	
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [patch 3/3] VT-d cleanup: correct way to submit command to GCMD register
 Per VT-d spec, software should submit only one "incremental" command at a time 
to Global Command reigster. Current implementation uses a variable (gcmd) to 
record the state of Global Status register. It's error prone. A good algorithm 
to use is as follows, whenver software needs to submit a command:
        Read current value of Global Status Register (X);               //  
This tells what is the current state of commands enabled in hardware
        X = Bitwise OR the new command bit to X;                // The only new 
bit set in X is the one new command we are going to issue
        Write X  to Global Command register;                    // Submit the 
command
        Poll Global Status register until it has new value of X ;       // Poll 
until command is done
Signed-off-by: Weidong Han <weidong.han@xxxxxxxxx>
Attachment:
gcmd.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel 
 
 | 
|  | Lists.xenproject.org is hosted with RackSpace, monitoring our |