Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/mips32/src/mm/frame.c

    ra35b458 r1b20da0  
    8282        if (frame == (KA2PA(MSIM_VIDEORAM) >> ZERO_PAGE_WIDTH))
    8383                return false;
    84 
     84       
    8585        /* MSIM device (dkeyboard) */
    8686        if (frame == (KA2PA(MSIM_KBD_ADDRESS) >> ZERO_PAGE_WIDTH))
     
    9292                return false;
    9393#endif
    94 
     94       
    9595        return true;
    9696}
     
    108108        if ((frame << ZERO_PAGE_WIDTH) < KA2PA(config.base))
    109109                return false;
    110 
     110       
    111111        /* Kernel */
    112112        if (overlaps(frame << ZERO_PAGE_WIDTH, ZERO_PAGE_SIZE,
    113113            KA2PA(config.base), config.kernel_size))
    114114                return false;
    115 
     115       
    116116        /* Kernel stack */
    117117        if (overlaps(frame << ZERO_PAGE_WIDTH, ZERO_PAGE_SIZE,
    118118            KA2PA(config.stack_base), config.stack_size))
    119119                return false;
    120 
     120       
    121121        /* Init tasks */
    122122        bool safe = true;
     
    128128                        break;
    129129                }
    130 
     130       
    131131        return safe;
    132132}
     
    161161                            ZONE_AVAILABLE | ZONE_HIGHMEM);
    162162        }
    163 
     163       
    164164        if (phys_regions_count < MAX_REGIONS) {
    165165                phys_regions[phys_regions_count].start = first;
     
    182182{
    183183        ipl_t ipl = interrupts_disable();
    184 
     184       
    185185        /* Clear and initialize TLB */
    186186        cp0_pagemask_write(ZERO_PAGE_MASK);
     
    194194                tlbwi();
    195195        }
    196 
     196               
    197197        pfn_t start_frame = 0;
    198198        pfn_t frame;
    199199        bool avail = true;
    200 
     200       
    201201        /* Walk through all 1 MB frames */
    202202        for (frame = 0; frame < ZERO_FRAMES; frame++) {
     
    211211                                tlb_prepare_entry_lo(&lo1, false, false, false, false, 0);
    212212                                tlb_prepare_entry_hi(&hi, ZERO_PAGE_ASID, ZERO_PAGE_ADDR);
    213 
     213                               
    214214                                cp0_pagemask_write(ZERO_PAGE_MASK);
    215215                                cp0_entry_lo0_write(lo0.value);
     
    218218                                cp0_index_write(ZERO_PAGE_TLBI);
    219219                                tlbwi();
    220 
     220                               
    221221                                ZERO_PAGE_VALUE = 0;
    222222                                if (ZERO_PAGE_VALUE != 0)
     
    229229                        }
    230230                }
    231 
     231               
    232232                if (!avail) {
    233233                        frame_add_region(start_frame, frame, true);
     
    236236                }
    237237        }
    238 
     238       
    239239        frame_add_region(start_frame, frame, true);
    240 
     240       
    241241        /* Blacklist interrupt vector frame */
    242242        frame_mark_unavailable(0, 1);
     
    267267        frame_mark_unavailable(0, 1024 * 1024 / FRAME_SIZE);
    268268#endif
    269 
     269       
    270270        /* Cleanup */
    271271        cp0_pagemask_write(ZERO_PAGE_MASK);
     
    275275        cp0_index_write(ZERO_PAGE_TLBI);
    276276        tlbwi();
    277 
     277       
    278278        interrupts_restore(ipl);
    279279}
     
    286286{
    287287        printf("[base    ] [size    ]\n");
    288 
     288       
    289289        size_t i;
    290290        for (i = 0; i < phys_regions_count; i++) {
Note: See TracChangeset for help on using the changeset viewer.