Subversion Repositories HelenOS-historic

Rev

Rev 703 | Rev 830 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 703 Rev 727
Line 33... Line 33...
33
#include <arch/cp0.h>
33
#include <arch/cp0.h>
34
#include <arch.h>
34
#include <arch.h>
35
 
35
 
36
/** Install address space.
36
/** Install address space.
37
 *
37
 *
38
 * Install ASID and if necessary, purge TLB.
38
 * Install ASID.
39
 *
39
 *
40
 * @param as Address space structure.
40
 * @param as Address space structure.
41
 */
41
 */
42
void as_install_arch(as_t *as)
42
void as_install_arch(as_t *as)
43
{
43
{
44
    entry_hi_t hi;
44
    entry_hi_t hi;
45
    ipl_t ipl;
45
    ipl_t ipl;
46
 
46
 
47
    /*
47
    /*
48
     * If necessary, purge TLB.
-
 
49
     */
-
 
50
    tlb_invalidate_asid(as->asid);  /* TODO: do it only if necessary */
-
 
51
 
-
 
52
    /*
-
 
53
     * Install ASID.
48
     * Install ASID.
54
     */
49
     */
55
    hi.value = cp0_entry_hi_read();
50
    hi.value = cp0_entry_hi_read();
56
 
51
 
57
    ipl = interrupts_disable();
52
    ipl = interrupts_disable();