Intel's XScale Microarchitecture provides support for locking of TLB entries in both the instruction and data TLBs. This file provides an overview of the API that has been developed to take advantage of this feature from kernel space. Note that there is NO support for user space. In general, this feature should be used in conjunction with locking data or instructions into the appropriate caches. See the file cache-lock.txt in this directory. If you have any questions, comments, patches, etc, please contact me. Deepak Saxena API DESCRIPTION I. Header file #include II. Locking an entry into the TLB SYNOPSIS xscale_tlb_lock(u8 tlb_type, u32 addr); /* * TLB types */ #define ITLB 0x0 #define DTLB 0x1 DESCRIPTION This function locks the virtual to physical mapping for virtual address addr into the requested TLB. RETURN VALUE If the entry is properly locked into the TLB, a 0 is returned. In case of an error, an appropriate error is returned. -ENOSPC No more entries left in the TLB -EIO Unknown error III. Unlocking an entry from a TLB SYNOPSIS xscale_tlb_unlock(u8 tlb_type, u32 addr); DESCRIPTION This function unlocks the entry for virtual address addr from the specified cache. RETURN VALUE If the TLB entry is properly unlocked, a 0 is returned. In case of an error, an appropriate error is returned. -ENOENT No entry for given address in specified TLB