從0移植uboot 四 點亮除錯LED

2021-09-07 09:35:49 字數 1234 閱讀 4091

這一節主要討論1個問題:點燈。點燈是實際開發中,特別是裸板開發中常見的除錯手段,相當於主機開發中漫天飛舞的printf/printk。為了追蹤程式的現場執**況,很多時候我們都使用點乙個燈的方法來進行初步的判斷。如果你把剛才編譯的程式燒錄到soc,你又怎麼知道這個uboot有沒有工作呢?所以,我們在這裡就要完成這樣乙個程式的改造。

雖說只是點乙個燈, 但麻雀雖小五臟俱全, 也算是對uboot原始碼進行修改, 我總結了一點改造uboot的流程, 這一篇就按下面的改造流程來組織:

找執行邏輯,即插入**的位置。

根據執行邏輯編寫功能**。找配置邏輯,即修改哪些檔案使配置生效。

根據配置邏輯修改配置使功能**生效。重新編譯燒寫uboot。根據我的電路板。我的led最終接在了gpf3_5介面,所以我配置相應的暫存器,點亮乙個燈,並將這部分**新增到"arch/arm/cpu/armv7/start.s +134"

135         msr     cpsr,r0

136

137 #if 1

138 ldr r0, =0x114001e0 @load gpf3con address to register

139 ldr r1, [r0] @load data in gpf3_5con

140 bic r1, r1,#0xff0000 @output 0x110000

141 orr r1, r1,#0x110000

142 str r1, [r0]

143

144 ldr r0, =0x114001e4 @load gpf3_5dat address to register

145 mov r1, #0x20 @10 0000

146 str r1, [r0]

147 #endif

148 /*

這段**不需要額外的配置即可工作

無改寫完程式,重新編譯uboot(強烈建議寫指令碼,我這裡就不貼了),如果沒有問題,我們的燈就可以亮了

uboot移植 uboot啟動回顧

一 uboot啟動的第一階段start.s 路徑uboot cpu s5pc11x start.s 1 include 標頭檔案包含,config.件原始碼中不存 在,配置後自動生成 路徑 include linux config.h 2 include 標頭檔案包含,version.件原始碼中不存...

u boot移植詳解 初識u boot

u boot是一種普遍用於嵌入式系統中的bootloader。bootloader是基於特定硬體平台來實現的,因此幾乎不可能為所有的嵌入式系統建立乙個通用的bootloader,不同的處理器架構都有不同的bootloader,bootloader不但依賴於cpu的體系結構,還依賴於嵌入式系統板級裝置...

uboot移植記錄

首先是uboot移植記錄系列。這系列文章適合於uboot移植的初學者,這裡基於常見的開發平台s3c2410。若需要移植uboot到乙個全新開發板,則需要參考更多的資料並對uboot有更深入的了解。本人對此也有所鑽研,也有個較牛的同事專門做這這個的,呵呵 若感興趣的朋友大家可以一起 因此關於新平台ub...