一、
核心基本配置
1、 修改頂層的makefile
arch?=(subarch)
corss_compile?=
修改為arch=arm
cross_compile=arm-linux-
2、 修改arch/arm/mach-s3c2440/mach-smdk2440.c檔案的時鐘頻率
將s3c24xx_init_clock(16934400)
改為s3c24xx_init_clock(12000000)
3、 執行make menuconfig配置系統型別(system-type)
system type
arm system type (arm ltd.versatile family)
(x) samsung s3c2410, s3c2412, s3c2413, s3c2416, s3c2440, s3c2442
s3c2440and s3c2442 machines
[*]smdk2440
[*]smdk2440 with s3c2440 cpu module (new)
二、nand flash
移植(mtd
分割槽)
1、 修改核心原始碼「arch/arm/plat-s3c24xx/common-smdk.c」
檔案中的「smdk_default_nand_part」的結構體
staticstruct mtd_partition smdk_default_nand_part = {
[0] = {
.name ="bootloader",
.size =sz_1m,
.offset = 0,
[1] = {
.name ="params",
.size =0x00020000,
[2] = {
.name ="kernel",
.size =sz_4m,
[3] = {
.name ="root",
.size =mtdpart_siz_full,
2、 執行make menuconfig配置驅動devicedrivers
device drivers
<*> memory technology device (mtd)support
<*> nand device support
<*> nand flash support for samsung s3c socs
<*> support for generic platform nand driver
<*> caching block device access to mtd devices
<*> direct char device access to mtd devices
三、串列埠驅動配置
1、 執行make menuconfig
device driversà
characterdevices
serialdrivers
<*>samsung soc serial support
[*]support for console on samsung soc serial port
<*>samsung s3c2440/s3c2442/s3c2416 serial port support (new)
四、增加對
yaffs
的支援
2、 給核心打補丁,進入yaffs2目錄,執行
./patch-ker.sh c m /work/system/linux-3.2.81
3、 進入核心目錄,執行make menuconfig
file systemsà
[*]miscellaneous filesystemsà
<*> yaffs2 file system support
五、支援
nfs啟動檔案系統
file systems
network file systems
<*>nfs file system support //要編譯進核心,不能編譯成模組
[*]root file system on nfs
networking
[*]networking support
networking options
[*]ip:kernel level autoconfiguration
六、儲存退出,執行
make uimage
在arch/arm/boot中生成uimage,但是該uimage的載入位址和入口位址一樣,u-boot無法啟動,所以執行
mkimage -n 『linux-3.2.81』 -a arm -o linux -t kernel -c none -a0x30008000 -e 0x30008040 -d zimage uimage
生成的uimage即可使用
本教程使用
arm-linux-gcc-4.3.2
linux核心移植
1.基本開發環境 u boot版本 u boot 2012.04.01 假設u boot已經移植好 linux平台 虛擬機器下ubuntu 14.04 交叉編譯工具 gcc 4.4.3 arm開發板 mini2440 cpu s3c2440 sdram 64m,nor flash 2m,nand f...
Linux核心移植
實驗步驟 1 準備工作 2 修改頂層makefile 3 修改falsh 分割槽 4 配置編譯核心 下面以linux2.6.30.4核心移植到gec2440為例 cd linux 2.6.30.4 解壓後會在當前目錄下生成乙個linux 2.6.30.4 的核心原始碼目錄 安裝交叉工具鏈,然後修改環...
linux3 4 2核心移植詳解(二) 移植核心
解壓進入核心頂層目錄 tar xjf linux 3.4.2.tar.bz2 修改頂層makeflie arch arm cross compile arm linux 執行make s3c2410 defconfig會出現 configuration written to config 此時將預設...