linux-3.0内核移植到fl2440开发板(以MINI2440为模板)
我们的fl2440开发板使用的是s3c2440的芯片,与MINI2440十分相似,因此需要改动的地方不多,移植也比较容易。
1.[weishusheng@localhost kernel]$ sudo tar -xjf linux-3.0.tar.bz2
2. 进入 linux-3.0,修改顶层Makefile
配置CPU类型和交叉编译器(195,196行)
ARCH ?= arm
CROSS_COMPILE ?= /opt/buildroot-2011.11/arm920t/usr/bin/arm-linux-
添加zImage头制作(559行后面)
cp arch/arm/boot/zImage . -f
/home/weishusheng/kernel/linux-3.0/mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008040 -n "Linux Kernel" -d zImage
linuxrom-s3c2440-wei.bin
rm -f zImage
mkimage是在制作u-boot的时候生成的,在u-boot的/tools目录下,这里我把它拷贝到内核目录下,这段是在linux编译的内核的前面,加上一个64字节的头,让u-boot能够引导内核启动。
3.拷贝 arch/arm/configs/mini440_defconfig作为.config的模板
[weishusheng@localhost linux-3.0]$ sudo cp arch/arm/configs/mini2440_defconfig .config
文章里许多地方我用了sudo,是因为我在实验室的.3服务器上做,很多命令没有权限,大家依据自己的情况决定用不用加
4.[weishusheng@localhost linux-3.0]$ export TERM=vt100
[weishusheng@localhost linux-3.0]$ sudo make menuconfig
System Type --->
S3C2440 and S3C2442 Machines --->
[ ] Simtec Electronics ANUBIS (NEW)
[ ] Openmoko GTA02 / Freerunner phone (NEW)
[ ] Simtec IM2440D20 (OSIRIS) module (NEW)
[ ] HP iPAQ rx3715 (NEW)
[*] SMDK2440
[ ] NexVision NEXCODER 2440 Light Board (NEW)
[*] SMDK2440 with S3C2440 CPU module (NEW)
[ ] SMDM2440 with S3C2442 CPU module (NEW)
[ ] Avantech AT2440EVB development board (NEW)
[ ] MINI2440 development board
[ ] HP iPAQ rx1950 (NEW)
Device Drivers --->
<*> Telephony support --->
5.修改时钟和串口,将arch/arm/mach-s3c2440/mach-smdk2440.c中的__init smdk2440_map_io()函数中对时钟的初始化修改为12MHz:
static void __init smdk2440_map_io(void)
{
s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc));
s3c24xx_init_clocks(12000000);
s3c24xx_init_uarts(smdk2440_uartcfgs, ARRAY_SIZE(smdk2440_uartcfgs));
}
6.将drivers/tty/serial/samsung.c中设置如下:
57行
#define S3C24XX_SERIAL_NAME "ttyS"
885行
.driver_name = "ttyS",
7.修改arch/arm/tools/mach-types,将machine_ID配置为如下
s3c2440 ARCH_S3C2440 S3C2440 1999
mini2440 MACH_MINI2440 MINI2440 362
8.开始编译:make
linux-3.0内核移植到fl2440开发板(以MINI2440为模板)的更多相关文章
- linux-3.0内核移植到fl2440开发板(以s3c2410为模板)
1.新建kernel文件夹,用于存放内核文件 [weishusheng@localhost ~]$ mkdir kernel 2.进入kernel,上传压并解压压缩文件 [weishusheng@lo ...
- linux 3.4.103 内核移植到 S3C6410 开发板 移植失败 (问题总结,日本再战!)
linux 3.4.103 内核移植到 S3C6410 开发板 这个星期差点儿就搭在这里面了,一開始感觉非常不值得,移植这样的浪费时间的事情.想立刻搞定,然后安安静静看书 & coding. ...
- qt-embedded-4.5.3移植到FL2440开发板
1. 2.configure配置 ./configure -opensource -confirm-license -release -shared -fast -no-qt3support -no- ...
- 《Linux设备驱动开发具体解释(第3版)》(即《Linux设备驱动开发具体解释:基于最新的Linux 4.0内核》)网购链接
<Linux设备驱动开发具体解释:基于最新的Linux 4.0内核> china-pub spm=a1z10.3-b.w4011-10017777404.30.kvceXB&i ...
- Centos LInux 7.0 内核3.1 升级简化流程
Centos LInux 7.0 内核3.1 升级建华流程 1)#导入ELRepo软件仓库的公共秘钥rpm --import https://www.elrepo.org/RPM-GPG-KEY-el ...
- 【原创】车载实时路况信息接收终端移植于Smart210开发板 --- 综合教程
[原创]车载实时路况信息接收终端移植于Smart210开发板 --- 综合教程 所用工具: windows电脑 Ubuntu12.04 Smart210开发板 4g以上SD卡 U盘 步骤: 1. ...
- Opencv2.2 移植到am335x-y开发板
1.虚拟机上运行cmake-gui,报找不到文件,指示安装. 2.下载opencv2.2.0 http://opencv.org/downloads.html 3.cmake-gui,配置参考< ...
- linux内核(二)内核移植(DM365-DM368开发攻略——linux-2.6.32的移植)
一.介绍linux-2.6.32: Linux-2.6.32的网上介绍:增添了虚拟化内存 de-duplicacion.重写了 writeback 代码.改进了 Btrfs 文件系统.添加了 ATI ...
- 【linux】内核+文件系统下载到开发板
K开发 欢迎转载,转载时请保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:htt ...
随机推荐
- 采用ubuntu系统来安装tensorflow
最近在学习google新开源的深度学习框架tensorflow.发现安装它的时候,需要依赖python2.7.X;我之前一直使用的linux是centos.而centos不更新了,里面的自带的pyth ...
- Cocoapods的安装
1.先升级Gem sudo gem update --system 2.切换cocoapods的数据源 [先删除,再添加,查看] gem sources --remove https://rubyge ...
- iscroll修改
近期项目中使用iScroll遇到一个问题,在设定wrapper为横向滚动时,如果你手指放在该区域,将无法拉动页面,也就是说该区域取消了默认事件.这个体验是实在是无法接受,特别是页面中有多个横向滚动区域 ...
- linux下进程突然断掉后的日志查询
最近写了一个实现监控的服务,可某天去看的时候进程突然木有了,这就捉急了,好好的是啥原因了呢?不会有人不小心把偶的进程关掉了把! 后发现一个linux日志文件:/var/log/messages 打开文 ...
- 如何在Form++开源组态平台添加硬件采集接口
E-Form++是一套值得推荐的高品质开源C++矢量图形库,C++编程之所以异常困难,主要就是没有很专业的C++基础架构库有关.E-Form++的出现一定程度上填补了这个空白.是开发工控.监控.建模与 ...
- 第一章 web应用程序开发原理
[总结] 1.计算机模式 :主机 哑端计算机模式 优点:速度快 反应快 维护修理方便 数据安全性高 缺点:单台计算机安全操作 应用程序难维护 难以跨出平台 客户端 客户计算机模式 优点:速度快 ...
- fatal: Could not read from remote repository.的解决办法
1. git remote –v查看远端地址或者查看配置 git config –list 2. git status 3. git add . git status git commit -m “本 ...
- ASP.net页面代码执行顺序
<%=TextBox1 .Text%> <asp:TextBox ID="TextBox1" runat="server">abc< ...
- IE10、IE11 ASP.Net 网站无法写入Cookie 问题
在做项目的时候遇上一个奇怪的问题,这个项目是用前端DWZ框架+MVC框架做的,在IE10和IE11上, 用户登录之后,操作界面中的任何操作,都无法操作,抛出异常,经过查找分析发现, 只有在IE10和I ...
- C++学习笔记30:模板与型式参数化
转型操作 接受目标型式作为模板参数 Programmer *p = dynamic_cast<Programmer*>(e) 模板工作原理 使用template<typename T ...