tiny4412 從u boot開始(一)

2021-09-27 10:26:37 字數 1270 閱讀 8304

準備業餘時間把armv7 contex-a9 的exynos4412從頭搞一下。

之前學了一些簡單的彙編指令,現在開始在uboot啟動後進行裸板測試。

原始碼:uboot_tiny4412-20130729.tgz

先關閉mmu:

diff --git a/board/samsung/tiny4412/config.mk b/board/samsung/tiny4412/config.mk

index dd7ec07..822a6e4 100644

--- a/board/samsung/tiny4412/config.mk

+++ b/board/samsung/tiny4412/config.mk

@@ -10,4 +10,4 @@

# #-config_sys_text_base = 0xc3e00000

+config_sys_text_base = 0x43e00000

diff --git a/include/configs/tiny4412.h b/include/configs/tiny4412.h

index 2e83d54..676a53e 100644

--- a/include/configs/tiny4412.h

+++ b/include/configs/tiny4412.h

@@ -308,7 +308,7 @@

#define config_sys_monitor_len         (256 << 10)     /* 256 kib */

#define config_ident_string            " for tiny4412"

-#define config_enable_mmu

+#undef config_enable_mmu

#ifdef config_enable_mmu

執行:make tiny4412_config

生成:include/config.mk

include/config.h

make  生成u-boot  u-boot.bin   

system.map 是系統函式對映位址

廠家還提供了燒寫的原始碼,在sd_fuse中。

#生成兩個檔案

gcc -o mkbl2 v310-evt1-mkbl2.c

gcc -o sd_fdisk sd_fdisk.c

後邊使用:sd_fusing.sh指令碼對sd卡寫入uboot時使用,簡單分析如下:

基於tiny4412的u boot移植(一)

開發環境 win7 64位 vmware11 ubuntu14.04 64位 開發板 tiny4412adk s700 4gb emmc 1g ddr3 工具鏈 友善之臂提供的 arm linux gcc version 4.5.1 要移植的u boot版本 u boot 2015 10 本博文簡要...

tiny4412看門狗的禁用

看門狗所在位址為0x10060000 看門狗暫存器的最後一位是禁止位,當最後一位為0的時候將禁用看門狗 在arm架構下,資料從記憶體到cpu之間的移動只能通過ldr str指令來完成.而mov只能在暫存器之間移動資料,或者把立即數移動到暫存器中,並且資料的長度不能超過8位 define pwtcon...

Tiny4412 在linux下的dnw使用

將tiny4412的usb線 串列埠線與電腦連線,在win7 虛擬機器ubuntu的環境下,在win7環境中用驅動精靈裝上串列埠的驅動,在虛擬機器中應該就能檢測到串列埠,我這裡採用的是usb轉串列埠驅動,在ubuntu中用lsusb命令可以查詢到是否檢測到串列埠,如下圖 解壓縮,之後會看到dnw l...