Subversion Repositories HelenOS-historic

Rev

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

Rev 612 Rev 618
Line 392... Line 392...
392
               i, hi.asid, hi.vpn2, mask.mask, lo0.g, lo0.v, lo0.d, lo0.c, lo0.pfn,
392
               i, hi.asid, hi.vpn2, mask.mask, lo0.g, lo0.v, lo0.d, lo0.c, lo0.pfn,
393
               lo1.g, lo1.v, lo1.d, lo1.c, lo1.pfn);
393
               lo1.g, lo1.v, lo1.d, lo1.c, lo1.pfn);
394
    }
394
    }
395
}
395
}
396
 
396
 
397
/** Invalidate all TLB entries. */
397
/** Invalidate all not wired TLB entries. */
398
void tlb_invalidate_all(void)
398
void tlb_invalidate_all(void)
399
{
399
{
400
    ipl_t ipl;
400
    ipl_t ipl;
401
    entry_lo_t lo0, lo1;
401
    entry_lo_t lo0, lo1;
402
    int i;
402
    int i;
403
 
403
 
404
    ipl = interrupts_disable();
404
    ipl = interrupts_disable();
405
 
405
 
406
    for (i = 0; i < TLB_ENTRY_COUNT; i++) {
406
    for (i = TLB_WIRED; i < TLB_ENTRY_COUNT; i++) {
407
        cp0_index_write(i);
407
        cp0_index_write(i);
408
        tlbr();
408
        tlbr();
409
 
409
 
410
        lo0.value = cp0_entry_lo0_read();
410
        lo0.value = cp0_entry_lo0_read();
411
        lo1.value = cp0_entry_lo1_read();
411
        lo1.value = cp0_entry_lo1_read();