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

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)友表達個人看法,并不表明本站同意其觀點或證實其描述)
色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区
主站蜘蛛池模板: 欧美福利在线观看| 亚洲字幕在线观看| 欧美综合国产精品久久丁香| 91精品国产亚洲| 国产精品1区2区在线观看| 国产精品香蕉av| 亚洲国产精品久久91精品| 国产手机视频精品| 夜夜嗨av一区二区三区四区| 中文字幕最新精品| 福利视频一区二区| 国产ts人妖一区二区三区| 国产区精品在线观看| 亚洲精品国产精品乱码不99按摩 | 狠狠做深爱婷婷久久综合一区| 欧美日韩中文在线| 欧洲永久精品大片ww免费漫画| 国产精品日韩欧美综合| 亚洲精品97久久| 久久久av网站| 91av免费观看91av精品在线| 国产免费一区二区三区香蕉精| 亚洲精品资源美女情侣酒店| 久久久精品国产亚洲| 性日韩欧美在线视频| 亚洲va欧美va国产综合剧情| 在线观看91久久久久久| 久久久久久有精品国产| 91精品视频免费| 精品国内自产拍在线观看| 韩剧1988免费观看全集| 亚洲一区二区三区视频播放| 久久成人精品视频| 国产精品福利网站| 中日韩美女免费视频网址在线观看 | 日韩精品免费综合视频在线播放 | 久久婷婷国产麻豆91天堂| 欧美成人黑人xx视频免费观看| 欧美极品美女电影一区| 国产精品美乳一区二区免费| 一级做a爰片久久毛片美女图片|