移植内核到s3c2440

发布者:第二眼帅哥最新更新时间:2022-04-25 来源: eefocus关键字:移植  内核  s3c2440 手机看文章 扫描二维码
随时随地手机看文章

尝试移植内核到s3c2440


一、环境搭建:


1.下载资源包:


linux-3.0.12.tar.gz (https://www.kernel.org/pub/linux/kernel/v3.0/)


ARM-Linux GCC 4.4.3(http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.4.3-20100728.tar.gz)


2.解压内核:


1.tar -xzvf  linux-3.0.12.tar.gz


2.cd linux-3.0.12


3.make s3c2410_defconfig


4.修改Makefile


195行 ARCH            ?= arm

 196 行CROSS_COMPILE   ?= arm-linux-

5.make menuconfig添加你需要的驱动支持


如果此处报错Unable to find the ncurses libraries or the,则是需要安装ncurses-devel


ubuntu下:sudo apt-get install ncurses安装


6.修改晶振频率:


内核默认晶振是16M的,但大多数开发板是12M,需要修改,不然会出现乱扣乱码的现象


arch/arm/mach-s3c2440/mach-smdk2440.c中的



160static void __init smdk2440_map_io(void)

161 {

162         s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc));

163         s3c24xx_init_clocks(12000000);

164         s3c24xx_init_uarts(smdk2440_uartcfgs, ARRAY_SIZE(smdk2440_uartcfgs))    ;

165 }


7.修改分区

arch/arm/plat-s3c24xx/common-smdk.c中的smdk_default_nand_part[]结构体数组

我的分区如下:



111 static struct mtd_partition smdk_default_nand_part[] = {

112         [0] = {

113                 .name   = "bootloader",

114                 .size   = SZ_256K,

115                 .offset = 0,

116         },

117         [1] = {

118                 .name   = "params",

119                 .offset =  MTDPART_OFS_APPEND,

120                 .size   = SZ_128K,

121         },

122         [2] = {

123                 .name   = "kernel",

124                 .offset =  MTDPART_OFS_APPEND,

125                 .size   = SZ_4M,

126         },

127         [3] = {

128                 .name   = "roots",

129                 .offset =  MTDPART_OFS_APPEND,

130                 .size   = MTDPART_SIZ_FULL,

131         },

132 };


7.make uImage


8.将arch/arm/boot/uImage烧到开发板中


此时的内核还不支持yaff文件系统可以烧jffs2文件系统


关键字:移植  内核  s3c2440 引用地址:移植内核到s3c2440

上一篇:s3c2440 ARM9 裸机驱动第一篇-GPIO驱动(汇编)
下一篇:iic裸机与linux通信,裸机系列——S3C2440IIC通信

推荐阅读最新更新时间:2024-11-11 12:35

S3C2440之IIS操作MDK
由图可知,有发送器,也有接收器,发送器和接收器都可以作为控制器。谁发出WS和SCK,谁就是控制器。 SCK为IIS串行数据的位时钟,WS为声道切换时钟,WS的频率等于采样频率fs。SCK频率=WS*每个数据的位数*通道数。 MSB先发送,由于收发对于字长的规定可以不一样,所以最终的长度需要根据实际情况而定。 2440具有64深度,且位长为16bit的FIFO。PCLK进过预分频A和B产生SCLK和LRCK。PCLK和MPLLin共同产生CDCLK,供给音频编码译码器使用。 因为2440的IIS接口仅仅是单纯的传输数据,依从IIS协议而已,实际使用中,需要将数据转换为模拟音频,或者将外界的音频转换为数字信号给
[单片机]
<font color='red'>S3C2440</font>之IIS操作MDK
u-boot-2011.06在基于s3c2440开发板的移植之引导内核与加载根文件系统
uboot最主要的功能就是能够引导内核启动。本文就介绍如何实现该功能,并组成一个最简单的系统,这不仅要移植uboot,还要移植linux内核及创建一个根文件系统。 首先我们对nandflash进行分区,规划好每个文件存放在nandflash的位置。下面是nandflash的分区: 第0分区:0x000000000000-0x000000080000为uboot区 第1分区:0x000000080000-0x000000100000为参数区 第2分区:0x000000200000-0x000000600000为linux内核区 第3分区:0x000000800000-0x000001000000为根文件系统区 规划好分区后,我们就可
[单片机]
移植内核2.6.24.4到S3C2440
百经周折,终于新内核启动了新的系统。 多谢小卒的指导,还有这两篇文章的作者,给了我很多帮助。 http://blog.chinaunix.net/u2/63560/showart_511924.html http://blog.csdn.net/hongjiujing/archive/2007/09/19/1790842.aspx 很多工作还刚开始,先记录下来,别以后自己都忘了。 --------------------------------------------------------------------------------------------------- 移植环境: 主机:CentOS 5.1 交
[单片机]
基于ADSP—BF533的μClinux嵌入式系统移植与开发
Blackfin处理器是基于由美国模拟器件公司(ADI)和Intel公司联合开发的微信号架构(MSA)的首款第4代DSP产品,它是ADI公司16 位产品的一个大系列。这一新产品是专为通信和互联网应用而设计的通用DSP芯片,适合处理广泛用于互联网中的大量图像、声音、文本和数据流,也可应用于汽车电子可视系统、宽带无线系统、消费类多媒体电子、数字摄像机、多通道VoIP、安全和监督、机顶盒和视频电话会议等方面。本文所用到的ADSP一 BF533是Blackfin系列处理器的典型代表。 l μClinux简介 μClinux从Linux 2.0/2.4内核派生而来,沿袭主流Linux的绝大部分特性。它是专门针对没有MMU的CPU,并
[单片机]
基于ADSP—BF533的μClinux嵌入式系统<font color='red'>移植</font>与开发
ADS1.2使用jlink调试程序(调试芯片s3c2440 arm9)
一、软件安装 ADS1.2下载: http://down.drv5.cn/www.drv5.cn/arm ads1.2.rar jlink驱动下载: http://fastsoft.onlinedown.net/down/JLink_Windows_V630d.exe S3C2440led裸机程序(GT2440开发板的): https://download.csdn.net/download/u012577474/11249524 下载,安装上面的3个软件。 二、CodeWarrior编辑arm程序 ADS安装后,会安装以下这些工具。 这里先打开CodeWarrior,导入我们的led裸机程序。 程序目录: 导入程
[单片机]
ADS1.2使用jlink调试程序(调试芯片<font color='red'>s3c2440</font> arm9)
Tinyos 2.x在cc2430上的移植成功
目的:将Tinyos2.x移植到cc2430中 流程:在windows下建立cygwin平台,并搭建Tinyos的编译环境,然后将基于Tinyos的应用程序编译成hex文件,通过仿真器下载到cc2430片子上运行。 原材料:硬件(wxl cc2430节点,仿真器等)、软件(Cygwin,Keil,TinyOS 2.x,编译环境配置软件包,SmartRF04 Flash Programer等)。 = = = = = = = = = = = = = = = = = = = = = = 现在国内做WSN研究的人越来越多了。在硬件方面,我们国内不像国外那样拥有很多硬件开发平台可以供我们选择。而且,crossbow的专业开发平台价
[单片机]
《ARM与Linux些许问题》第三章:Linux如何从用户态进入内核
本文基于mstar801平台Linux2.6.35.11内核。 一、Linux从用户态切换到内核态的方法有哪些? 大体分为两种;主动式和被动式。 1.被动式:就是Linux在用户态(ARM在用户模式)工作,没有主动发起请求、而被动地进入内核态;包括硬件中断和程序异常。 2.主动式:就是Linux在用户态(ARM在用户模式)工作,通过发起用户态程序发起命令请求、ARM响应进入特权模式进而Linux切入内核态;就是系统调用。 二、分析上述两种切换的原理 1.被动式原理:当硬件中断过来时,通过硬件直接给CPSR置位、ARM进入IRQ模式、Linux系统进入内核态;或者用户态代码出现异常、硬件也自动完成上述工作
[单片机]
S3C2440裸机------NandFlash操作原理
1.Nandflash操作原理 下图是原理图中NandFlash和S3C2440的连接图, 问1. 原理图上NAND FLASH和S3C2440之间只有数据线, 怎么传输地址? 答1.在DATA0~DATA7上既传输数据,又传输地址 当ALE为高电平时传输的是地址, 问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令 怎么传入命令? 答2.在DATA0~DATA7上既传输数据,又传输地址,也传输命令 当ALE为高电平时传输的是地址, 当CLE为高电平时传输的是命令 当ALE和CLE都为低电平时传输的是数据 问3. 数据线既接到NAND FLASH,也
[单片机]
<font color='red'>S3C2440</font>裸机------NandFlash操作原理

推荐帖子

关于dbμV、dbm 、dbw
lorant 移动便携
明天大赛你们准备好了吗
本帖最后由paulhyde于2014-9-1509:15编辑你们准备怎么样了明天大赛你们准备好了吗
fuzhixin1986 电子竞赛
有用过TLV5630芯片的
TLV5630是TI公司的DAC有用过TLV5630芯片的
zfzdhz 模拟与混合信号
单片机主函数不执行,中断可以执行
怀疑是usart中断出问题,但是卡不太懂,劳烦大神指点单片机主函数不执行,中断可以执行既然主函数不执行为嘛贴出来这段代码感谢Jacktang的看帖,主函数里面就放了一个检测主函数是否卡的OLED显示函数,写在一个while(1)里面用的是CHV103芯片有时候我会遇到这种问题,一般是你程序配置问题,还有编译器设置问题。你可以检查一下反复进中断没法清标志吗?看看这个函数传入的USARTx是不是和触发中断的一致你在中断里面设计一条引脚起反的程序(命令),
kyrie618 单片机
MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对
MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对MPU姿态传感器INT、MOSI、MISO、SCK、NCS这五个脚的作用是?波形对不对怎么看相似是带货买示波器的 。。。无语了哎SPI通信接口,具体还是得看集训期说明,应该可以配置一些中断 这是SPI总线,INT中断口,MOSI数据口(主发从收),MiSO数据口(从发主收),SCK时钟,NCS硬件使能端(可以不用,用软件+IO口代替)
QWE4562009 测试/测量
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved