Changeset fd537a0 in mainline for arch/ia64/src/mm/page.c


Ignore:
Timestamp:
2006-01-15T18:05:11Z (19 years ago)
Author:
Jakub Vana <jakub.vana@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ae10582
Parents:
4be51c8
Message:

VHPT setup to be able to use ttag and thash instructions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia64/src/mm/page.c

    r4be51c8 rfd537a0  
    3333#include <panic.h>
    3434
     35
     36static void set_VHPT_environment(void)
     37{
     38        /*
     39        TODO:
     40        */
     41       
     42        int i;
     43       
     44        /* First set up REGION REGISTER 0 */
     45       
     46        region_register rr;
     47        rr.map.ve=0;                  /*Disable Walker*/
     48        rr.map.ps=PAGE_WIDTH;
     49        rr.map.rid=REGION_RID_MAIN;
     50       
     51        asm
     52        (
     53                "mov rr[r0]=%0;;"
     54                :
     55                :"r"(rr.word)
     56        );
     57               
     58        /* And Invalidate the rest of REGION REGISTERS */
     59       
     60        for(i=1;i<REGION_REGISTERS;i++)
     61        {
     62                rr.map.rid=REGION_RID_FIRST_INVALID+i-1;
     63                asm
     64                (
     65                        "mov r8=%1;;"
     66                        "mov rr[r8]=%0;;"
     67                        :
     68                        :"r"(rr.word),"r"(i)
     69                        :"r8"
     70                );
     71        };
     72
     73        PTA_register pta;
     74        pta.map.ve=0;                   /*Disable Walker*/
     75        pta.map.vf=1;                   /*Large entry format*/
     76        pta.map.size=VHPT_WIDTH;
     77        pta.map.base=VHPT_BASE;
     78       
     79       
     80        /*Write PTA*/
     81        asm
     82        (
     83                "mov cr8=%0;;"
     84                :
     85                :"r"(pta.word)
     86        );     
     87       
     88}       
     89
     90
    3591void page_arch_init(void)
    3692{
    3793        page_operations = &page_ht_operations;
     94        set_VHPT_environment();
    3895}
Note: See TracChangeset for help on using the changeset viewer.