Exynos4412 系統移植

2021-07-30 22:33:30 字數 1531 閱讀 3026

移植要點:

1、環境搭建

2、boot配置、移植、編譯及燒寫

3、kernel配置、移植、燒寫及除錯

4、根檔案系統的製作

gcc編譯流程:

預處理

編譯彙編

鏈結

核心子系統:

程序管理

記憶體管理

檔案系統

裝置管理

網路

交叉編譯工具鏈安裝步驟:

1、解壓gcc-4.6.4.tar.gz到~/toolchain/目錄下

tar -xvf gcc-4.6.4.tar.gz

2、export path=$path:~/toolchain/gcc-4.6.4/bin

一次生效

3、永久生效

3.1 sudo vim /etc/bash.bashrc

新增 export path=$path:~/toolchain/gcc-4.6.4/bin到檔案末尾

3.2 source /etc/bash.bashrc

nm:檢視可執行檔案中的符號

strip:去掉檔案中的符號 減小檔案體積

objump 反彙編

tftp服務安裝:

1、檢測是否安裝 dpkg -s tftpd-hpa

2、如果未安裝執行sudo apt-get install tftpd-hpa 安裝

3、tftp服務的配置檔案/etc/default/tftpd-hpa

配置目錄和ip

4、 重啟tftp服務

sudo service tftpd-hpa restart

5、測試

tftp 127.0.0.1

更改許可權

chmod 777 -r /tftpboot

printenv 顯示環境變數

setenv 設定環境變數

setenv ipaddr 192.168.1.32

setenv serverip 192.168.1.122

ping 192.168.1.122

通訊: is alive

tftp 0x40008000 hello

可以通過md檢視hello內容

nfs服務:

1、檢測 dpkg -s nfs-kernel-server 

2、如果未安裝執行sudo apt-get install nfs-kernel-server

3、修改配置指令碼

sudo vi /etc/exports

*()4、showmount -e 檢測nfs伺服器目錄

5、測試本機nfs

sudo mount -o nolock -t nfs 192.168.1.122:/source/nfs /tmp

sudo umount /tmp

Exynos4412啟動過程分析

學習exynos4412啟動流程前,我們先看看三星4412晶元啟動框圖 我們從圖中可以看到4412內部有64k的rom和256k sram,在rom中已經固化好了一段 當硬體上電後首先執行的就是這段 這段 三星起名為blo irom boot 其作用是初始化sram,並將emmc中256k 拷貝到s...

exynos4412中斷程式設計

我們知道,arm核能處理的異常有7種,但僅僅區分異常的種類顯然不能夠滿足需求。拿手機來說,觸控螢幕和按下音量鍵可能都是irq異常,但是arm並不能將他們區分開,而事實的情況是針對這兩種中斷,我們的處理方式顯然不同,為此就需要在soc中整合中斷控制器 generic interupt controll...

Exynos4412晶元的時鐘管理單元

本章介紹exynos4412晶元的時鐘管理單元 cmu cmu控制鎖相環 pll 並為exynos4412晶元中的各個ip 匯流排和模組產生時鐘。它們還與電源管理單元 pmu 通訊,以便在進入某個低功耗模式之前停止時鐘,以通過時鐘切換來降低功耗。1.exynos4412晶元的時鐘體系介紹 不同的模組...