![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式linux项目之jz2440开发板
文章平均质量分 91
杨柳_
Java服务端研发,喜欢底层原理与基础算法设计
展开
-
Makefile工程管理语法与使用技巧
使用GNU Make工具来管理程序是每个Linux工程师必须掌握的技能。Make能够使整个程序的编译、链接只需要一个命令(make)就可以完成。 Make的工作主要依赖于一个叫为Makefile的件。Makefile文件描述了整个程序的编译,连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译,如何最后产生我们想要得可执行文件。原创 2017-12-09 17:14:46 · 439 阅读 · 0 评论 -
【移植驱动到Linux3.4.2内核之二】LCD,触摸屏,按键,USB等驱动程序的移植心得总结
今天移植了按键,LED,LCD,触摸屏等驱动程序,移植驱动程序相对于写驱动程序,就简单得多,前提是得理解驱动程序。 现在来大体总结一下如何移植一个新的驱动程序(不是内核自带的驱动程序)的大体思路以及流程。一移植驱动程序心得体会首先呢,我们拿到一个新的驱动程序,直接先拿过来编译(先修改Makefile关于内核的路径),编译后,一般都会报错,因为我们的驱动程序,一般不是针对我们这个内核来原创 2018-01-28 20:30:14 · 2603 阅读 · 0 评论 -
【移植驱动到Linux3.4.2内核之一】移植DM9000C网卡驱动
之前已经把uboot,内核,文件系统,都移植好了,今天开始我们把第二期写的Linux2.6.22.6内核的驱动程序全部移植到我们新3.4.2内核中去。首先移植网卡驱动程序吧,因为,我们后面需要用到网络文件系统来更简便的学习。1移植DM9000网卡驱动程序概览一.移植的步骤: 1. 编译 2. 解决错误 2.1 头文件不对:去掉或改名 2.2 宏不对:改名使用新的宏 2.3 有些函原创 2018-01-28 02:19:41 · 2169 阅读 · 0 评论 -
【移植Linux 3.4.2内核之四】修改内核代码支持YAFFS文件系统
上一篇文章,我们从0制作jffs2文件系统,因为我们的内核本身就支持iffs2文件系统,但是它不支持yaffs文件系统。今天我们就来修改内核代码,让内核支持yaffs文件系统的格式。1.首先我们获取yaffs源码我是通过git获得,当然源码获得的途径很多,需要源码的可以加我最底下的联系方式。 在Linux系统中,输入: git clone git://www.aleph1.co.u原创 2018-01-27 00:21:01 · 1153 阅读 · 0 评论 -
【移植Linux 3.4.2内核第一步】之简单修改
前一阵子已经将U-boot移植好了,从今天开始,我们开始移植linux内核。移植的内核为3.4.2,移植的开发板为:jz2440开发板。 想看之前移植U-boot的记录,可以查看我的博客专栏,点击链接:点击查看U-boot移植教程首先我们从官网下载3.4.2内核,先解压内核拿到Lniux服务器: tar xjf linux-3.4.2.tar.bz2 cd linux-3.4.2/然原创 2018-01-18 01:00:01 · 1220 阅读 · 1 评论 -
jz2440开发板修改UBOOT支持NAND FLASH
很多天没有看嵌入式的东西了,今天来看一下,继续之前移植uboot到jz2440开发板。今天我们来实现Uboot支持NAND FLASH。在之前的文章里(点击连接查看之前的记录),我们为了编译通过把NAND FLASH 给屏蔽掉了,现在把它加回来。 将:include/configs/smdk2440.h: 中的#define CONFIG_CMD_NAND取消注释,重新编译,看一下编译的结果原创 2018-01-08 22:39:11 · 1166 阅读 · 2 评论 -
【移植Linux 3.4.2内核第二步】之修改系统分区
今天接着移植Linux 3.4.2内核,接着上一篇文章(点击查看:上一篇文章)我们完成了内核的串口启动打印输出,但是无法挂载根文件系统,我们看看启动后显示的是什么: 从打印结构可以看出,我们的分区不对,在U-boot移植(点击查看:Uboot分区)中,我们已经对整个系统进行分区了,现在打印说我们的分区不对,一定是内核里也有分区的相关设置,我们需要去修改内核: 在common-smdk.c中原创 2018-01-24 10:30:33 · 1710 阅读 · 0 评论 -
【移植Linux 3.4.2内核第三步】从0制作支持新内核的文件系统
上一篇文章,我们修改了内核代码改了系统的分区,但是最后启动,发现虽然我们可以挂载之前的文件系统,但是无法启动init进程。说明我们新移植的内核不支持我们之前制作的老的文件系统(点击查看上一篇文件:上一篇文章)。今天我们来制作新的文件系统。我们用的是哪一个编译器编译的内核,就用哪一个编译器编译文件系统的应用程序:1.编译Busybox获取busybox源码1.20.0版本的(下载地址:下原创 2018-01-24 10:28:55 · 1534 阅读 · 1 评论 -
移植U-BOOT之支持烧写YAFFS文件系统以及制作U-BOOT补丁
今天,我们来移植U-BOOT让其支持YAFFS文件系统映像的烧写,以及最后的终极目标,制作Uboot补丁,因为我们信心苦苦移植好了Uboot,如果换一个地方的或者换一台电脑之类的,我们也不想再浪费时间从头开始移植,毕竟重复造轮子,并不是一件高明的事,所以我们制作Uboot补丁,方便以后的使用。前一阵子已经花费了巨大的功夫,将Uboot支持了串口,nand flash,nor flash,网络下原创 2018-01-14 10:33:56 · 965 阅读 · 2 评论 -
移植U-BOOT之裁剪和修改默认参数(易用性)启动内核,以及对uboot进行分区
今天我们来裁剪U-BOOT,使其更加易用,修改默认参数,以及制作最终修改好得补丁文件方便以后的快速移植。那么如果想看之前的关于网卡以及flash等的移植,请点击链接查看:点击链接查看在裁剪修改之前呢,我们先来了解一下U-BOOT的环境参数(环境变量): uboot在启动的时候首先会读取环境参数,然后判断环境参数是否有效,如果设置的环境参数是无效的,那么就使用默认的参数。我们还要知道整原创 2018-01-13 21:34:20 · 3468 阅读 · 0 评论 -
jz2440开发板移植U-boot之修改代码支持DM9000网卡
今天我们来移植U-boot到jz2440开发板,修改代码支持DM9000网卡。查看之前写的移植记录请点击链接:点击查看之前的移植记录现在大多数开发板都支持DM9000网卡。我们的U-boot源码里面也是有DM9000网卡的驱动程序的。文件为Dm9000x.c(drivers\net). 首先我去网卡目录的Makefile文件中搜索dm9000字符串: 由Makefile得知,如果我们定原创 2018-01-12 22:00:04 · 1774 阅读 · 1 评论 -
移植uboot之修改代码支持NorFlash记录续集二
先说一个事:我会在最后把移植好的uboot,内核,分别做一个补丁文件,以后如果用到相同的uboot以及内核都可以直接下载我这个补丁进行打补丁操作就可以直接用~上一个移植uboot续集,我们解决了无法写flash的问题,现在该去测试norflash写功能的完整性! 在串口中依次输入: md.b 30000000 md.b 80000 mw.b 30000000 12345678 erase原创 2017-12-17 21:41:16 · 534 阅读 · 0 评论 -
移植uboot之修改代码支持NorFlash记录续集
解决了上一次移植uboot留下的无法写flash的问题。通过这次,让我对代码的跟踪有一个更深刻的认识,以后遇到复杂的代码,我就能很有调理的去分析调试而不会像之前那样无从下手!!!原创 2017-12-17 16:30:57 · 724 阅读 · 0 评论 -
移植uboot之修改代码支持NorFlash记录
今天我们的任务是修改uboot源码支持NorFlash。 上两篇关于uboot移植的文章,我们修改了uboot源代码,支持了串口的输出,以及nand启动(点击连接可以查看上两面文章的相关内容移植uboot支持串口输出,移植uboot支持NAND启动) 同时分享一个很好的书:Linux设备驱动开发详解-宋宝华(注:写到后面发现没有告诉大家用的flash芯片的型号,我们用的flash芯片的型号是:M原创 2017-12-16 23:26:24 · 2739 阅读 · 0 评论 -
移植u-boot-2012.04.01到jz2440开发板之修改代码支持NAND启动
上一篇文章我们已经修改了uboot源码使其能够正常打印输出了,但是输出停到了nand启动那里,所以这篇文章就来记录如何修改源码使uboot支持NAND启动。原来的代码在链接时加了”-pie”选项, 使得u-boot.bin里多了”(.rel)”, “*(.dynsym)”使得程序非常大,不利于从NAND启动(重定位之前的启动代码应该少于4K)。1.去掉 “-pie”选项 在文件:arch/arm/原创 2017-12-13 09:46:39 · 898 阅读 · 0 评论 -
移植u-boot-2012.04.01到jz2440开发板
今天我给大家分享一下如何移植一个纯净的uboot到jz2440开发大版,通过记录学习分享,与大家一起进步!!!1.首先我们在uboot官网下载u-boot-2012.04.01.tar.bz2,建立source insight工程。将下载好的uboot通过FTP服务器传送到虚拟机中的linux系统下。 解压uboot:tar xjf u-boot-2012.04.01.tar.bz2 cd u-原创 2017-12-11 10:01:51 · 1619 阅读 · 0 评论 -
Linux 总线、设备、驱动模型的探究
学习交流加个人qq:1126137994 个人微信:liu1126137994 学习交流资源分享qq群:962535112之前一直做项目,做项目的过程虽然也学习到了不少知识,但是,一直没有好好研究总线设备驱动的机制,今天来学习总结一下!1、设备驱动模型的需求:总线,设备驱动程序,其实就是软件工程中的高内聚,低耦合!所谓高内聚低耦合是模块内各元素联系越紧密就代表...原创 2018-04-11 21:54:50 · 1337 阅读 · 0 评论