久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 移植2.6.16內核到at91rm9200

移植2.6.16內核到at91rm9200

作者: 時間:2012-05-31 來源:網絡 收藏

1、下載、安裝

本文引用地址:http://cqxgywz.com/article/148955.htm

從 www.kernel.org 上下載Linux版的kernel,解壓到 /usr/src/arm/linux-

從http://maxim.org.za/AT91RM9200/2.6/ 上下載針對rm9200的補丁,文件名:-at91.patch.gz,復制到 /usr/src/arm/linux-2.6.16,然后在命令行界面中執行 zcat 2.6.16-at91.patch.gz |patch -p1

從http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2.tar.gz?view=tar下載YAFFS2補丁 yaffs2.tar.gz 解壓縮后到文件目錄下運行 sh patch-ker.sh ../linux-2.6.16 把YAFF2加到中去;

下載GCC編譯器,文件名:arm-linux-gcc-3.4.1.tar.bz2,解壓到 /usr/local/arm/3.4.1

2、修改

打開原代碼根目錄下的Makefile,找到如下兩行:

ARCH ?=$(SUBARCH)

CROSS_COMPILE ?=

修改為:

ARCH ?=arm

CROSS_COMPILE ?=/usr/local/arm/3.4.1/bin/arm-linux-

3、編譯

執行如下命令:

make dk_defconfig

make xconfig

make

以上是基本的步驟,所有過程的第一步,以下是我自已過程:

1),在make xconfig 時改

boot_option

ZBOOT_BASE_ADDRESS   0X21000000

ZBOOT_ROM_BSS      0X21100000

否則不能動行

其它的可以按 dk 的配置編譯

2),添加devfs文件系統

vi fs/Kconfig

找到menu Pseudo filesystems

添加如下語句:

config DEVFS_FS

bool /dev file system support (OBSOLETE)

default y

config DEVFS_MOUNT

bool Automatically mount at boot

default y

depends on DEVFS_FS

保存退出后編譯下載后就可以在 開發板上的 /proc 目錄下的filesystems里看到了

[root@AT91RM9200DK /proc]$cat filesystems

nodev sysfs

nodev rootfs

nodev bdev

nodev proc

nodev sockfs

nodev pipefs

nodev futexfs

nodev tmpfs

nodev inotifyfs

nodev eventpollfs

nodev devpts

ext2

cramfs

nodev ramfs

nodev devfs

nodev jffs2

3),修改NAND的分驅表

在arch/mach-/board-dk中

改dk-nand-patition[]{

}

下的代碼為自已想要的分驅方式

4),修改NOR的分驅表

在driver/mtd/maps/physmap.c中

添加一個自已的分驅表后將其引用到physmap_set_patition()中

5),添加9200的串口驅動

這個更簡單

改arch/mach-at91rm9200/board-dk.c

.nr_tty = 5,

.tty_map = {4,3,2,1,0}

就把2個串口改為5個了,其對應驅動在相關目錄下都有詳盡的代碼!

需要的是一個認真的態度和不懈的努力!

這也只是個入門,還有更多的東西要學習!



評論


相關推薦

技術專區

關閉