移植linux(1)
硬件环境:TQ2440 软件环境:linux-2.6.30.4
下载源码:ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.4.tar.bz2
步骤:
1.在系统中添加对arm的支持:
修改内核根目录下的Makefile,ARCH=arm,CROSS_COMPILE=arm-linux-
2.修改系统时钟:
修改内核源码“arch-arm-mach-s3c2440/mach-smdk2440.c”,把 s3c24xx_init_clocks(16934400); 换成s3c24xx_init_clocks(12000000);
3. 修改机器码:
把s3c2440对应的机器码由362改为168
4.Nand Flash 驱动移植:
修改内核源码“arch/arm/plat-s3c24xx/common-smdk.c”文件,将结构体数组名为 smdk_default_nand_part改为:
static struct smdk_default_nand_part [] = {
[0] = {
.name = "My_Board_uboot",
.size =0x00040000,
.offset = 0x00000000,
},
[1] = {
.name = "My_Board_kernel",
.offset = 0x00200000,
.size =0x00300000,
},
[2] = {
.name = "My_Board_yaffs2",
.offset = 0x00500000,
.size =MTDPART_SIZ_FULL,
},
};
在这个文件里修改结构体smdk_nand_info:
static struct s3c2410_platform_nand smdk_nand_info = {
.tacls= 10,
.twrph0= 25,
.twrph1= 10,
.nr_sets= ARRAY_SIZE(smdk_nand_sets),
.sets= smdk_nand_sets,
};
最后修改" drivers/mtd/nand/s3c2410.c" :
chip->ecc.mode = NAND_ECC_NONE;
配置内核添加上对Nand Flash 支持的配置选项,然后编译烧写后可以发现分区信息,但是这时候还不能正常启动内核,因为系统还不支持yaffs2文件系统,下一节来构建文件系统。
移植linux(1)的更多相关文章
- 为AM335x移植Linux内核主线代码
/********************************************************************** * 为AM335x移植Linux内核主线代码 * 说明: ...
- 引用 移植Linux到s3c2410上
引用 bsky 的 移植Linux到s3c2410上来源:http://www.embed.com.cn/downcenter/Article/Catalog12/4000.htm 移植Linux到s ...
- Xilinx zynq-7000系列FPGA移植Linux操作系统详细教程
Xilinx zynq-7000系列FPGA移植Linux操作系统详细教程 一:前言 最近手上压了一块米联客的Miz7035,一块xilinx zynq-7000系列的开发板,想着正好学习一下linu ...
- AM335x移植linux内核_转
AM335x移植linux内核 该博客中详细介绍了移植linux内核到AM335x上相关,设备驱动采用设备树(DT)方式加载,包含设备启动.uboot.kernel.driver.rootfs及简单上 ...
- 使用cygwin移植Linux的项目到Windows下之总结(转)
使用cygwin移植Linux的项目到Windows下之总结(转) 原文 http://my.oschina.net/michaelyuanyuan/blog/68615?p=1 一.why ...
- 在基于or1200处理器的SoC上移植linux
经历了前端的艰苦奋斗.SoC前端设计已经调试完毕,如今直接进入uboot移植 首先cd入u-boot-master 找到子文件夹include下得de2_115.h文件进行改动: (下一步计划:加 ...
- S04_CH01_搭建工程移植LINUX/测试EMMC/VGA
S04_CH01_搭建工程移植LINUX/测试EMMC/VGA 1.1概述: 本章内容是在已经提供安装了VIVADO2015.4 的ubuntu系统下,进行.大家可以下周我们已经提供的虚拟机镜像,我们 ...
- ZYNQ跑系统 系列(二) petalinux方式移植linux
三.搭建petalinux工程 0.定位目录 先在shell中找一个准备存放工程的地方,(我的是home/hlf/PRO),命令行cd home/hlf/PRO 1.定位编译链 根据安装p ...
- 移植Linux Kernel SM750 驱动到VxWorks 7
一.SM750简介 SM750 是SiliconMotion 推出的一款适合嵌入式设备的显卡(Embedded GPU),采用PCIe接口与CPU连接,内部集成16MB DDR SDRAM显存,产品具 ...
随机推荐
- ZOJ题目分类
ZOJ题目分类初学者题: 1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331 13 ...
- C# WINFORM 捕获全局异常
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Thr ...
- Project Euler 106:Special subset sums: meta-testing 特殊的子集和:元检验
Special subset sums: meta-testing Let S(A) represent the sum of elements in set A of size n. We shal ...
- iOS开发--UITableView
-.建立 UITableView DataTable = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)]; [Data ...
- JavaWeb笔记——Jsp的指令、内置对象和动作标签
JSP三大指令 一个jsp页面中,可以有0~N个指令的定义! 1. page --> 最复杂:<%@page language="java" info=" ...
- CentOS启动和停止服务详解
服务简介Linux 系统服务是在Linux启 动时自动加载,并在Linux退出时自动停止的系统任务.在Linux 启动过程中,我们可以看得很多“starting … ”提示信息,该信息表示正在启动系统 ...
- docker 笔记(基本概念、快速运行、自定义镜像)
1.docker docker是一个打包应用的工具 非常强大,能把操作系统也打在包里,进行无差别部署和运行. 所以docker也被认为是建立在操作系统上的虚拟机. 2.基本概念 镜像(image) ...
- mysql 转义字符和php addslashes
遇到一个很奇怪的问题,json数据中含有中文: "mail":{"title":"\u6218\u529b\u8fbe\u4eba\u6d3b\u52 ...
- 什么是智能dns解析
智能DNS解析是针对目前电信和网通互联互通不畅的问题推出的一种DNS解决方案.具体实现是:把同样的域名如test.winiis.com的A记录分别设置指向网通和电信IP,当网通的客户访问时,智能DNS ...
- Android之开发杂记(二)
1.android 4.0 以后 高版本没有虚拟菜单键