色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区

Hi,歡迎來到嵌入式培訓高端品牌 - 華清遠見教育科技集團<北京總部官網(wǎng)>,專注嵌入式工程師培養(yǎng)15年!
當前位置: > 華清遠見教育科技集團 > 嵌入式學習 > 講師博文 > s5pc100中uboot移植之內(nèi)存控制器的設(shè)置
s5pc100中uboot移植之內(nèi)存控制器的設(shè)置
時間:2017-01-05作者:華清遠見

s5pc100是三星公司推出的基于Cortax-A8核心的一款專門針對應用、消費類電子產(chǎn)品而設(shè)計的芯片,針對它的介紹網(wǎng)上有很多了,我們就不專門介紹這款芯片了。

今天是針對U-boot的移植。我們先來看看u-boot的特點,u-boot是Boot-loader的一種可以負責板子上電后硬件初始化工作,以及內(nèi)核引導。它可以為用戶提供一個可交互的界面,使開機過程可控,可調(diào),方便開發(fā)人員調(diào)試。

今天我們移植的版本是u-boot1.3.1這是一個比較成熟的版本,我們先來看看要移植一個u-boot需要注意哪些問題。

首先我們應該先拿到一個u-boot源碼,應該是如下圖:

《源碼》

其中比較重要的、有針對性的目錄是board, cpu, include等。我們要修改的大部分內(nèi)容將集中在這些目錄里面。

由于,篇幅有限這次只介紹CPU中針對內(nèi)存控制器的初始化部分的內(nèi)容:

ldr r0, =0xE6000000
        ldr r1, =0xE0000000
        ldr r2, [r1]
        bic r2, #0xfffffdff
        mov r2, r2, lsr #9
        cmp r2, #0x1
        beq onenand_pop

這部分內(nèi)容是用匯編語言寫的看起來比較清爽,沒有太多的復雜的邏輯。

上面的代碼是用來判斷我們處理器的封裝形式的,其中r1中存放著芯片ID寄存器的地址,這是一個32位寄存器,其中記錄了芯片的型號如果是s5pc100的話,這個寄存器的前20位應該是“0x43100”。其中,第9位是用來判斷芯片的封裝形式的,如果為1,表示是POP形式就是。為0,表示是分立元件。我們一般使用分立式元件。

ldr r1, =0x6a101000
        str r1, [r0, #0x18]
        ldr r1, =0x000084f4
        str r1, [r0, #0x1c]
        ldr r1, =0x0
        str r1, [r0, #0x20]

這部分是真對,DDR內(nèi)存而設(shè)置的,DLL(delay locked loop)參數(shù)。

ldr r1, =0x6a101002
        str r1, [r0,#0x18]
        ldr r1, =0x6a101003
        str r1, [r0,#0x18]

這是開啟DLL工作。
        ldr r2, =0xe6000040
        loop1:
        ldr r1,[r2]
        ands r1,r1,#4
        beq loop1

檢查DLL鎖,是否已經(jīng)鎖上。

ldr r1,[r2]
        mov r1,r1, LSR #(0x6)
        ldr r2, =0xE6000018
        ldr r3,[r2]
        bic r3,r3,#(0xff000000)
        orr r1,r3,r2
        str r1,[r2]

ldr r1, =0x6a101003
        str r1, [r0, #0x18]

ldr r1, =0x6a101009
        str r1, [r0, #0x18]

完成必要的設(shè)置,暫停DLL。

ldr r1, =0x20f01313
        str r1, [r0, #0x08]
        ldr r1, =0x40f01313
        str r1, [r0, #0x0c]

配置256MB內(nèi)存AXI設(shè)置地址。

ldr r1, =0x20000000
        str r1, [r0, #0x14]
        ldr r1, =0x00100004
        str r1, [r0, #0x28]

設(shè)置自刷新周期

ldr r1, =0x0000050E
        str r1,[r0, #0x30]
        ldr r1, =0x16233297
        str r1, [r0,#0x34]
        ldr r1, =0x23230000
        str r1, [r0,#0x38]

ldr r1, =0x07c80232
        str r1, [r0, #]

這個地方是設(shè)置內(nèi)存芯片的交流(AC)參數(shù)時序信息包括TimingAref, TimingRow, TimingData 和 TimingPower

ldr r1, =0x07000000
        str r1, [r0, #0x10]
        ldr r1, =0x01000000
        str r1, [r0, #0x10]

ldr r1, =0x00020000
        str r1, [r0, #0x10]

ldr r1, =0x00030000
        str r1, [r0, #0x10]

ldr r1, =0x00010400
        str r1, [r0, #0x10]

ldr r1, =0x00000532
        str r1, [r0, #0x10]

ldr r1, =0x01000000
        str r1, [r0, #0x10]

ldr r1, =0x05000000
        str r1, [r0, #0x10]

ldr r1, =0x00000432
        str r1, [r0, #0x10]

ldr r1, =0x00010780
        str r1, [r0, #0x10]

ldr r1, =0x00010402
        str r1, [r0, #0x10]

首先是喚醒chip0,然后所有模塊預充電(這是為讀取操作做準備),對bank2-3發(fā)msr/emsr命令(模式設(shè)定),設(shè)定內(nèi)存進入自動刷新模式。后是對EMRS寄存器進行設(shè)設(shè)置。

ldr r1, =0x00ff20b0
        str r1, [r0, #0x0]
        ldr r1, =0x00212413
        str r1, [r0, #0x4]
        b exit_cpu_init

打開自動刷新,設(shè)定讀數(shù)據(jù)的取周期,設(shè)定內(nèi)存的類型為DDR2和32位位寬。芯片數(shù)是2片,BL(burst length)=4。

發(fā)表評論
評論列表(網(wǎng)友評論僅供網(wǎng)友表達個人看法,并不表明本站同意其觀點或證實其描述)
色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区
主站蜘蛛池模板: 久久中文字幕在线| 成人亚洲欧美一区二区三区| 久久精品视频在线观看| xvideos亚洲| 欧美大胆a视频| 欧美性生交xxxxxdddd| 91精品国产色综合久久不卡98| 午夜精品福利视频| 国产精品激情av电影在线观看| 国产剧情久久久久久| 亚洲欧美综合图区| 久久天天躁狠狠躁夜夜av| 欧美激情亚洲国产| 国产精品久久久久久久久久ktv| 成人久久一区二区| 国产亚洲一区二区精品| 欧美成人午夜激情| 18性欧美xxxⅹ性满足| 成人午夜在线视频一区| 亚洲一级一级97网| 欧美日韩国产在线| 国产精品久久久久久av福利| 精品无人区太爽高潮在线播放| 日韩在线欧美在线| 69影院欧美专区视频| 日韩av影片在线观看| 久久久久www| 国产精品www色诱视频| 亚洲毛片一区二区| 狠狠躁夜夜躁人人爽天天天天97| 日韩美女福利视频| 尤物yw午夜国产精品视频明星| 欧美午夜精品久久久久久浪潮| 国产精品久久久久久网站| 日韩电影大片中文字幕| 狠狠色狠狠色综合日日五| 国产日韩中文字幕| 欧美猛交ⅹxxx乱大交视频| 国产精品99久久99久久久二8| 亚洲人成网在线播放| 欧美一级视频一区二区|