Changeset 7208b6c in mainline for kernel/arch/ia64/src/start.S
- Timestamp:
- 2008-02-09T10:31:11Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a4884c70
- Parents:
- 71eef11
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/src/start.S
r71eef11 r7208b6c 36 36 #define PS_SHIFT 2 37 37 38 #define KERNEL_TRANSLATION_I 0x0010000000000661 39 #define KERNEL_TRANSLATION_D 0x0010000000000661 38 #define KERNEL_TRANSLATION_I 0x0010000000000661 39 #define KERNEL_TRANSLATION_D 0x0010000000000661 40 #define KERNEL_TRANSLATION_VIO 0x0010000000000671 41 #define KERNEL_TRANSLATION_IO 0x00100FFFFC000671 42 #define VIO_OFFSET 0x0002000000000000 43 44 #define IO_OFFSET 0x0001000000000000 45 46 40 47 41 48 .section K_TEXT_START, "ax" … … 47 54 .auto 48 55 56 mov psr.l = r0 57 srlz.i 58 srlz.d 59 49 60 # Fill TR.i and TR.d using Region Register #VRN_KERNEL 61 50 62 51 63 movl r8 = (VRN_KERNEL << VRN_SHIFT) 52 64 mov r9 = rr[r8] 65 66 53 67 movl r10 = (RR_MASK) 54 68 and r9 = r10, r9 55 69 movl r10 = ((RID_KERNEL << RID_SHIFT) | (KERNEL_PAGE_WIDTH << PS_SHIFT)) 56 70 or r9 = r10, r9 71 72 57 73 mov rr[r8] = r9 74 75 58 76 59 77 movl r8 = (VRN_KERNEL << VRN_SHIFT) 60 78 mov cr.ifa = r8 61 movl r10 = (KERNEL_PAGE_WIDTH << PS_SHIFT) 62 mov cr.itir = r10 79 80 81 mov r11 = cr.itir ;; 82 movl r10 = (KERNEL_PAGE_WIDTH << PS_SHIFT);; 83 or r10 =r10 , r11 ;; 84 mov cr.itir = r10;; 85 86 63 87 movl r10 = (KERNEL_TRANSLATION_I) 64 88 itr.i itr[r0] = r10 89 90 65 91 movl r10 = (KERNEL_TRANSLATION_D) 66 92 itr.d dtr[r0] = r10 67 93 94 95 movl r7 = 1 96 movl r8 = (VRN_KERNEL << VRN_SHIFT) | VIO_OFFSET 97 mov cr.ifa = r8 98 movl r10 = (KERNEL_TRANSLATION_VIO) 99 itr.d dtr[r7] = r10 100 101 102 mov r11 = cr.itir ;; 103 movl r10 = ~0xfc;; 104 and r10 =r10 , r11 ;; 105 movl r11 = (IO_PAGE_WIDTH << PS_SHIFT);; 106 or r10 =r10 , r11 ;; 107 mov cr.itir = r10;; 108 109 110 movl r7 = 2 111 movl r8 = (VRN_KERNEL << VRN_SHIFT) | IO_OFFSET 112 mov cr.ifa = r8 113 movl r10 = (KERNEL_TRANSLATION_IO) 114 itr.d dtr[r7] = r10 115 116 117 118 68 119 # initialize PSR 69 mov psr.l = r070 srlz.i71 srlz.d72 120 movl r10 = (PSR_DT_MASK | PSR_RT_MASK | PSR_IT_MASK | PSR_IC_MASK) /* Enable paging */ 73 121 mov r9 = psr
Note:
See TracChangeset
for help on using the changeset viewer.