DCA: Add Direct Cache Access driver
Direct Cache Access (DCA) is a method for warming the CPU cache before data is used, with the intent of lessening the impact of cache misses. This patch adds a manager and interface for matching up client requests for DCA services with devices that offer DCA services. In order to use DCA, a module must do bus writes with the appropriate tag bits set to trigger a cache read for a specific CPU. However, different CPUs and chipsets can require different sets of tag bits, and the methods for determining the correct bits may be simple hardcoding or may be a hardware specific magic incantation. This interface is a way for DCA clients to find the correct tag bits for the targeted CPU without needing to know the specifics. [Dave Miller] use DEFINE_SPINLOCK() Signed-off-by:Shannon Nelson <shannon.nelson@intel.com> Acked-by:
David S. Miller <davem@davemloft.net> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
Showing
- drivers/Kconfig 2 additions, 0 deletionsdrivers/Kconfig
- drivers/Makefile 1 addition, 0 deletionsdrivers/Makefile
- drivers/dca/Kconfig 11 additions, 0 deletionsdrivers/dca/Kconfig
- drivers/dca/Makefile 2 additions, 0 deletionsdrivers/dca/Makefile
- drivers/dca/dca-core.c 200 additions, 0 deletionsdrivers/dca/dca-core.c
- drivers/dca/dca-sysfs.c 88 additions, 0 deletionsdrivers/dca/dca-sysfs.c
- include/linux/dca.h 47 additions, 0 deletionsinclude/linux/dca.h
Loading
Please register or sign in to comment