linux核心移植

2021-06-22 14:22:41 字數 1042 閱讀 1971

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 flash:256m,網絡卡:dm9000ep)

3.移植

一般原始碼移植首先會在最頂層的makefile中指定處理器平台和交叉編譯工具。用vim工具開啟,修改:arch            ?= arm  和cross_compile   ?= arm-linux-這兩行。

由於mini2440開發板在該核心版本中已經有預設配置檔案(mini2440_defconfig),選用預設配置。基本功能的移植,改動較小。

根據u-boot設定分割槽,修改nand flash 分割槽(arch/arm/mach-s3c24xx/mach-mini2440.c),比如我的分割槽結構

static struct mtd_partition mini2440_default_nand_part __initdata = ,

[1] = ,

[2] = ,

[3] = ,

};

然後命令列編譯,生成uimage

#make mini2440_defconfig

#make uimage

tftp 30000000 uimage

nand erase.part kernel

nand write 30000000 kernel

重新啟動開發板,linux啟動成功!

注意:u-boot傳入的machi和linux的machid要匹配。不然在啟動過程中會卡住( mach_mini2440           mini2440                1999)。

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 此時將預設...

linux 核心移植(基本框架)

一 獲得linux原始碼 二 解壓系統原始碼 解壓命令 gzip v rootfile 壓縮乙個檔案rootfile gunzip rootfile.gz 解壓縮乙個檔案 tar命令 既可以壓縮檔案也可以解壓縮檔案,決定於tar命令後面所跟引數 a將檔案新增到現有的tar包 c表示建立新的tar包 ...