亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mmu.s

?? 使用三星ARM2410的eboot程序
?? S
字號:
;
; Copyright (c) Microsoft Corporation.  All rights reserved.
;
;
; Use of this source code is subject to the terms of the Microsoft end-user
; license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
; If you did not accept the terms of the EULA, you are not authorized to use
; this source code. For a copy of the EULA, please see the LICENSE.RTF on your
; install media.
;
; Module Name:
;
;   mmu.s
;
; Abstract:
;
;   This module contains code for setting up a page table, enabling the MMU,
;   and enabling the Dcache.  It is used to set up for the bootloader.
;
; Author:
;
;    Thomas Fenwick (thomasf) 04-Feb-97
;
; Environment:
;
;    Kernel mode only.
;
; Revision History:
;
;   Janet Schneider (v-janets) 06-November-1997
;   Scott Shell (scottsh) 18-Jan-1999               Revised for Hornet
;
;   Revised from armtrap.s
;
;--

    INCLUDE kxarm.h

MemoryMap   EQU 0x2a4       ; From ksarm.h - to get this to compile

BANK_SIZE   EQU 0x00100000  ; 1MB per bank in MemoryMap array
BANK_SHIFT  EQU 20

;
;   Define RAM space for the Page Tables:
;

PHYBASE     EQU 0x30000000  ; physical start
;PTs     EQU 0x30010000  ; 1st level page table address (PHYBASE + 0x10000)
PTs     EQU 0x31E00000
                    ; save room for interrupt vectors.

    MACRO
    MTC15   $cpureg, $cp15reg
    mcr p15, 0, $cpureg, $cp15reg, c0, 0
    MEND

    MACRO
    MFC15   $cpureg, $cp15reg
    mrc p15, 0, $cpureg, $cp15reg, c0, 0
    MEND

    TEXTAREA

    IMPORT  main

; KernelStart - Set up the MMU and Dcache for bootloader
;
; This routine will initialize the first-level page table based up the contents
; of the MemoryMap array and enable the MMU and caches.
;
;   Entry   (r0) = pointer to MemoryMap array in physical memory
;   Exit    returns if MemoryMap is invalid

; For Catfish, we are always in RAM.

    LEAF_ENTRY KernelStart

15  mov r11, r0         ; (r11) = &MemoryMap (save pointer)
    ldr r10, =PTs       ; (r10) = 1st level page table

; Setup 1st level page table (using section descriptor) 
; Fill in first level page table entries to create "un-mapped" regions
; from the contents of the MemoryMap array.
;
;   (r10) = 1st level page table
;   (r11) = ptr to MemoryMap array

    add r10, r10, #0x2000   ; (r10) = ptr to 1st PTE for "unmapped space"

    mov r0, #0x0E       ; (r0) = PTE for 0: 1MB cachable bufferable
    orr r0, r0, #0x400      ; set kernel r/w permission
20  mov r1, r11         ; (r1) = ptr to MemoryMap array

        
25  ldr r2, [r1], #4        ; (r2) = virtual address to map Bank at
    ldr r3, [r1], #4        ; (r3) = physical address to map from
    ldr r4, [r1], #4        ; (r4) = num MB to map

    cmp r4, #0                  ; End of table?
    beq %F29

    ldr r5, =0x1FF00000
    and r2, r2, r5              ; VA needs 512MB, 1MB aligned.                

    ldr r5, =0xFFF00000
    and r3, r3, r5              ; PA needs 4GB, 1MB aligned.

    add r2, r10, r2, LSR #18
    add r0, r0, r3              ; (r0) = PTE for next physical page

28  str r0, [r2], #4
    add r0, r0, #0x00100000     ; (r0) = PTE for next physical page
    sub r4, r4, #1              ; Decrement number of MB left 
    cmp r4, #0
    bne %B28                    ; Map next MB

    bic r0, r0, #0xF0000000     ; Clear Section Base Address Field
    bic r0, r0, #0x0FF00000     ; Clear Section Base Address Field
    b   %B25                    ; Get next element
        
29  tst r0, #8
    bic r0, r0, #0x0C       ; clear cachable & bufferable bits in PTE
    add r10, r10, #0x0800   ; (r10) = ptr to 1st PTE for "unmapped uncached space"
    bne %B20            ; go setup PTEs for uncached space
    sub r10, r10, #0x3000   ; (r10) = restore address of 1st level page table


; setup mmu to map (VA == 0) to (PA == 0x30000000)

    ldr r0, =PTs        ; PTE entry for VA = 0
    ldr r1, =0x3000040E     ; uncache/unbuffer/rw, PA base == 0x30000000
    str r1, [r0]

; uncached area

    add r0, r0, #0x0800     ; PTE entry for VA = 0x0200.0000 , uncached 
    ldr r1, =0x30000402     ; uncache/unbuffer/rw, base == 0x30000000
    str r1, [r0]
    
; Comment:
; The following loop is to direct map RAM VA == PA. i.e. 
;   VA == 0x30XXXXXX => PA == 0x30XXXXXX for S3C2400
; Fill in 8 entries to have a direct mapping for DRAM

    ldr r10, =PTs       ; restore address of 1st level page table
    ldr r0,  =PHYBASE

    add r10, r10, #(0x3000 / 4) ; (r10) = ptr to 1st PTE for 0x30000000

    add r0, r0, #0x1E       ; 1MB cachable bufferable
    orr r0, r0, #0x400      ; set kernel r/w permission
    mov r1, #0 
    mov r3, #64
35  mov r2, r1          ; (r2) = virtual address to map Bank at
    cmp r2, #0x20000000:SHR:BANK_SHIFT
    add r2, r10, r2, LSL #BANK_SHIFT-18
    strlo   r0, [r2]
    add r0, r0, #0x00100000 ; (r0) = PTE for next physical page
    subs    r3, r3, #1
    add r1, r1, #1
    bgt %B35

    ldr r10, =PTs       ; (r10) = restore address of 1st level page table

;
; The page tables and exception vectors are setup. Initialize the MMU and turn
; it on.

    mov     r1, #1
    MTC15   r1, c3                  ; setup access to domain 0
    MTC15   r10, c2
    mcr     p15, 0, r0, c8, c7, 0   ; flush I+D TLBs
    mov     r1, #0x0071             ; Enable: MMU
    orr     r1, r1, #0x0004     ; Enable the cache

    ldr     r0, =VirtualStart

    cmp     r0, #0                  ; make sure no stall on "mov pc,r0" below
    MTC15   r1, c1                  ; enable the MMU & Caches
    mov     pc, r0                  ;  & jump to new virtual address
    nop

; MMU & caches now enabled.
;
;   (r10) = physcial address of 1st level page table

VirtualStart

    mov sp, #0x8C000000
    add sp, sp, #0x30000    ; arbitrary initial super-page stack pointer
    b   main

    END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
bt欧美亚洲午夜电影天堂| 日韩不卡手机在线v区| 成人综合激情网| 日本成人中文字幕在线视频 | 亚洲一区二区综合| 91国在线观看| 全国精品久久少妇| 精品日韩一区二区| 97精品久久久久中文字幕| 亚洲在线视频一区| 日韩三级伦理片妻子的秘密按摩| 美女视频黄免费的久久| 国产精品色婷婷久久58| 一本色道久久加勒比精品| 亚洲va欧美va人人爽| 日韩欧美的一区二区| 国产91精品在线观看| 亚洲精品精品亚洲| 日韩欧美在线不卡| 99久久精品费精品国产一区二区| 国内成人免费视频| 久久久噜噜噜久噜久久综合| 成人av午夜影院| 亚洲h精品动漫在线观看| 久久综合九色综合欧美98| av成人免费在线观看| 日产国产高清一区二区三区| 欧美极品美女视频| 欧美日韩中文精品| 国产成人精品1024| 五月婷婷综合激情| 国产网站一区二区三区| 欧美日韩国产在线观看| 国产大陆亚洲精品国产| 亚洲成人av一区二区| 国产日产欧美一区| 51精品秘密在线观看| 成人av片在线观看| 精品一区二区三区在线播放 | 97精品久久久午夜一区二区三区| 奇米影视一区二区三区小说| 日韩一区在线免费观看| 久久一区二区三区四区| 欧美日韩一区视频| 色综合天天综合色综合av | 成人sese在线| 免费观看91视频大全| 一区二区三区鲁丝不卡| 国产精品色婷婷| 久久久久久久国产精品影院| 5566中文字幕一区二区电影 | 国产乱子伦一区二区三区国色天香| 亚洲黄色录像片| 欧美激情艳妇裸体舞| 91精品国产91久久久久久一区二区| av电影在线不卡| 成人永久aaa| 国产乱理伦片在线观看夜一区| 五月天中文字幕一区二区| 中文字幕在线播放不卡一区| 国产欧美日产一区| 国产亚洲欧洲997久久综合| 日韩三级高清在线| 欧美丰满嫩嫩电影| 欧美日韩中文字幕一区二区| 91黄色在线观看| 色婷婷亚洲婷婷| 一本一道综合狠狠老| 91香蕉视频污| 91国偷自产一区二区三区观看 | 欧美另类z0zxhd电影| 91久久国产综合久久| 色婷婷综合久久久久中文一区二区| av成人老司机| 91国产视频在线观看| 欧美做爰猛烈大尺度电影无法无天| 91浏览器打开| 在线免费观看不卡av| 欧美日韩一级大片网址| 欧美日韩电影在线播放| 欧美顶级少妇做爰| 精品区一区二区| 国产女人18水真多18精品一级做| 中文字幕第一区二区| 1024国产精品| 亚洲网友自拍偷拍| 日韩 欧美一区二区三区| 美国毛片一区二区三区| 奇米四色…亚洲| 国产精品自产自拍| 成人av先锋影音| 在线免费不卡电影| 91精品国产综合久久蜜臀| 欧美成人精品二区三区99精品| 精品区一区二区| 国产精品三级视频| 国产精品高潮呻吟| 老司机精品视频在线| 国产午夜精品一区二区三区四区| 久久久久99精品国产片| 国产精品毛片大码女人| 一区二区三区在线观看视频| 天堂久久久久va久久久久| 精品亚洲国产成人av制服丝袜| 国产一区二区影院| 91在线高清观看| 91.com在线观看| 久久欧美一区二区| 亚洲欧洲日韩一区二区三区| 天堂在线一区二区| 国产精品一区免费视频| 欧洲日韩一区二区三区| 欧美不卡在线视频| 综合激情成人伊人| 婷婷成人激情在线网| 成人免费视频视频在线观看免费| 色香蕉成人二区免费| 精品成人在线观看| 亚洲一本大道在线| 国产高清久久久久| 欧美日韩一二三| 国产精品久久久久久久久图文区| 五月综合激情日本mⅴ| jizz一区二区| 精品99一区二区| 午夜精品福利一区二区蜜股av| 国产专区欧美精品| 欧美三级视频在线播放| 日本一区二区三区dvd视频在线 | 日韩精品视频网| 国产精品自拍三区| 欧美日韩国产一级片| 中文欧美字幕免费| 久久精品国产秦先生| 日本精品一级二级| 中文一区一区三区高中清不卡| 日韩中文欧美在线| 日本韩国一区二区| 亚洲欧洲精品一区二区精品久久久| 麻豆成人综合网| 欧美日韩黄色影视| 一区二区三区四区亚洲| 成人国产精品免费观看动漫| 精品欧美一区二区久久 | 亚洲精品高清在线| 国产传媒欧美日韩成人| 欧美岛国在线观看| 日韩精品亚洲专区| 欧美日韩电影一区| 亚洲国产乱码最新视频| 91蝌蚪国产九色| 国产精品亲子乱子伦xxxx裸| 国产一区二区网址| 日韩网站在线看片你懂的| 午夜精品福利在线| 欧美日韩国产一区| 亚洲va韩国va欧美va精品| 成人精品一区二区三区四区| 久久久久久日产精品| 精品一区二区三区久久| 精品国产免费一区二区三区香蕉| 青青草精品视频| 6080日韩午夜伦伦午夜伦| 亚洲www啪成人一区二区麻豆| 欧洲精品一区二区三区在线观看| 亚洲免费伊人电影| 91黄色免费版| 五月婷婷色综合| 欧美一区二区三区男人的天堂| 日韩综合小视频| 制服丝袜中文字幕一区| 奇米精品一区二区三区在线观看| 欧美一区二区久久| 另类综合日韩欧美亚洲| 精品国产一区二区三区久久影院| 极品美女销魂一区二区三区 | 欧美一区二区三区免费观看视频 | 日韩午夜在线观看视频| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩女优制服丝袜电影| 国产在线一区二区综合免费视频| 久久亚洲综合av| eeuss鲁片一区二区三区| 一区二区三区日韩精品视频| 欧美午夜精品久久久久久超碰| 亚洲国产精品久久人人爱蜜臀| 欧美高清视频一二三区| 经典三级视频一区| 中文字幕日韩av资源站| 欧美唯美清纯偷拍| 欧美aⅴ一区二区三区视频| 精品久久久久久久久久久院品网| 成人性生交大片免费看中文网站| 亚洲欧美另类久久久精品2019| 欧美日韩在线直播| 经典三级在线一区| 国产精品电影一区二区| 精品视频在线免费看| 国产一区二区久久| 亚洲精品老司机|