Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1310771
  • 博文数量: 107
  • 博客积分: 10155
  • 博客等级: 上将
  • 技术积分: 2166
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-25 16:57
文章分类

全部博文(107)

文章存档

2010年(1)

2009年(1)

2008年(105)

分类: LINUX

2008-04-11 17:27:14

从解决问题到查到问题最终一个红外问题促使我升级内核到2.6.24了,结果我首先移植了最新内核,其次建立了文件系统,接着又移植了原来的驱动程序,最后又移植了qtopia程序,增加了很多的工作量,但是很值,截止今天,原来的程序又在开发板上正常运行起来了,看着新内核和新文件系统下运行的原来的程序,感觉辛苦没有白费,特别是在QT程序的移植过程中,编译一次qtopia的lib库要近二个小时的时间,我用不同的交叉编译工具都测试了一遍,如果没有耐心恐怕自己早已放弃了,在移植驱动时,最新的内核对体系划分的更细了,看了一下有关的驱动文件,感觉代码书写更加规范了,数据结构统一了,简炼了,但是我没有对自己原来的驱动程序做大量的修改,没有重写,咨询了网友,我还是先以自己的问题为先吧,以后将抽出大量时间来仔细研究一下新内核的驱动编写规范,必竟他简炼而且易读,效率还高,特别是看了网友的最低层的读写函数比如ioread32(),又看了一些对IO引脚配置的函数s3c2410_gpio_cfgpin()这些其实都在新内核的下有大量的源码,只要抽出时间研究一下,应该能够理解用法,虽然我没有使用这些用法,而是用老办法ioremap()函数和writel()来实现IO串口的配置,大行不顾细谨,只能暂时放一放了。条条大路通罗马,尽管代码的可读性,效率都不如新版的内核驱动,但是应先以项目为重,“不管白猫、黑猫、花花猫,逮住老鼠就是好猫”,暂且当一次花花猫吧,今后有时间循序而渐进当只“好猫”,呵呵,这里还是推荐网友有时间好好研究一下新内核相关的源码,真的,最好的老师就是源代码!

阅读(2531) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~