Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia64/src/start.S

    r1b20da0 ra35b458  
    5454SYMBOL(kernel_image_start)
    5555        .auto
    56        
     56
    5757        mov psr.l = r0
    5858        srlz.i
    5959        srlz.d
    60        
     60
    6161        # Fill TR.i and TR.d using Region Register #VRN_KERNEL
    62        
     62
    6363        movl r8 = (VRN_KERNEL << VRN_SHIFT)
    6464        mov r9 = rr[r8]
    65        
     65
    6666        movl r10 = (RR_MASK)
    6767        and r9 = r10, r9
    6868        movl r10 = (((RID_KERNEL7) << RID_SHIFT) | (KERNEL_PAGE_WIDTH << PS_SHIFT))
    6969        or r9 = r10, r9
    70        
     70
    7171        mov rr[r8] = r9
    72        
     72
    7373        movl r8 = (VRN_KERNEL << VRN_SHIFT)
    7474        mov cr.ifa = r8
    75        
     75
    7676        mov r11 = cr.itir
    7777        movl r10 = (KERNEL_PAGE_WIDTH << PS_SHIFT)
    7878        or r10 = r10, r11
    7979        mov cr.itir = r10
    80        
     80
    8181        movl r10 = (KERNEL_TRANSLATION_I)
    8282        itr.i itr[r0] = r10
    8383        movl r10 = (KERNEL_TRANSLATION_D)
    8484        itr.d dtr[r0] = r10
    85        
     85
    8686        # Initialize DCR
    87        
     87
    8888        movl r10 = (DCR_DP_MASK | DCR_DK_MASK | DCR_DX_MASK | DCR_DR_MASK | DCR_DA_MASK | DCR_DD_MASK | DCR_LC_MASK)
    8989        mov r9 = cr.dcr
    9090        or r10 = r10, r9
    9191        mov cr.dcr = r10
    92        
     92
    9393        # Initialize PSR
    94        
     94
    9595        movl r10 = (PSR_DT_MASK | PSR_RT_MASK | PSR_IT_MASK | PSR_IC_MASK)  /* Enable paging */
    9696        mov r9 = psr
    97        
     97
    9898        or r10 = r10, r9
    9999        mov cr.ipsr = r10
     
    103103        srlz.d
    104104        srlz.i
    105        
     105
    106106        .explicit
    107        
     107
    108108        /*
    109109         * Return From Interrupt is the only way to
     
    113113
    114114paging_start:
    115        
     115
    116116        /*
    117117         * Now we are paging.
     
    126126        srlz.d ;;
    127127
    128        
     128
    129129        # Switch to register bank 1
    130130        bsw.1
    131        
     131
    132132        # Initialize register stack
    133133        mov ar.rsc = r0
     
    135135        mov ar.bspstore = r8
    136136        loadrs
    137        
     137
    138138        #
    139139        # Initialize memory stack to some sane value and allocate a scratch area
     
    142142        movl sp = stack0 ;;
    143143        add sp = -16, sp
    144        
     144
    145145        # Initialize gp (Global Pointer) register
    146146        movl gp = __gp
    147        
     147
    148148        #
    149149        # Initialize bootinfo on BSP.
     
    153153        addl r21 = @gprel(bootinfo), gp ;;
    154154        st8 [r21] = r20
    155        
     155
    156156        ssm (1 << 19) ;; /* Disable f32 - f127 */
    157157        srlz.i
    158158        srlz.d ;;
    159        
     159
    160160        br.call.sptk.many b0 = ia64_pre_main
    1611610:
Note: See TracChangeset for help on using the changeset viewer.