• Shannon Nelson's avatar
    DCA: Add Direct Cache Access driver · 7589670f
    Shannon Nelson authored
    
    
    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: default avatarShannon Nelson <shannon.nelson@intel.com>
    Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    7589670f