Quote:
Originally Posted by hthomas
nueSpinLockPatcher is a tool to patch out the SWP containing procedures in HTC code – inside both drivers and the kernel. Its a tool designed for ROM cooks and developers – see the download page for links and information.
What does this mean? What are SWP?
What are the advantages to being spinlocked.
Help
|
nueSpinLockPatcher-1.1 updates and changelog (post date 5-22-09)
"patching the smem.dll SWP instruction, and replaces branches to INTERRUPTS_ON and INTERRUPTS_OFF branches with the ARMv6 CPSID/CPSIE instruction, reducing the 5 instruction call to one instruction...
For reference, I see no significant difference yet in synthetic benchmarks and 2% performance increase in CorePlayer FLV task. Actual performance gains you see will vary from device to device, but intuition tells me that latencies will decrease, which might not be measured by synthetic benchmarks."
How does a SWP operation on a CPU translate in to bus activity?
A SWP operation will result in a locked sequence of a read transaction followed by a write transaction to the same address.
An interesting case to note is that if an error is received on the read operation the processor must perform another AXI transaction in order to complete the locked sequence and unlock the interconnect for other masters to use. In most cases it is likely that the locked sequence will be completed with a write transaction which has no write strobes asserted.