摘要: 移植yaffs2文件系统时,首先要在内核中添加对yaffs2的支持,使用命令:./patch-ker.sh c 内核目录时,出现下面错误:usage: ./patch-ker.sh c/l m/s kernelpathif c/l is c, then copy. If l then linkif m/s is m, then use multi version code. If s then use single version code 阅读全文
posted @ 2013-08-08 10:56 linux_rookie 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 硬件环境: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. 修改机器码:把 阅读全文
posted @ 2013-08-08 10:54 linux_rookie 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 环境:linux-2.6.32.2,天嵌2440,东华3.5屏 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #include 14 #include 15 #include 16 17 #include 18 #include 19 #include 20 #include 21 22 static int... 阅读全文
posted @ 2013-04-08 01:07 linux_rookie 阅读(587) 评论(0) 推荐(0) 编辑
摘要: 我们知道,字符设备编写可以分为以下几个步骤1)确定主设备号major2)构造file_operations 结构体fops3)register_chrdev(major,name, fops)4)入口函数5)出口函数那么LCD驱动也是字符设备驱动,肯定也会有这几个步骤,下面来看以下/drivers/video/fbmem.c首先看入口函数fbmem_init()1 register_chrdev(FB_MAJOR,"fb",&fb_fops) //FB_MAJOR:29构成字符设备的主要要素都有了,下面主要来看file_operations 结构体fb_fops 1 阅读全文
posted @ 2013-04-08 00:49 linux_rookie 阅读(523) 评论(0) 推荐(0) 编辑
摘要: 在写好设备驱动后,怎样才能和设备联系起来呢(主要是获取设备的地址信息)?老方法就不说了,网上一堆,(老方法是实现i2c_driver的attach_adapter和detach_client,新方法是实现probe等函数)实现的方法有好几种,具体参见内核文档\Documentation\i2c\instantiating-devices,都是英文,看的不是太懂,也就不翻译了,我是用的第2种方法,这种方法可以直接在自己写的驱动代码里实现,第一种方法还要重新编译内核才行static struct i2c_board_info at24cxx_info[] ={ { I2C_BOARD_INFO(. 阅读全文
posted @ 2013-04-05 18:49 linux_rookie 阅读(212) 评论(0) 推荐(0) 编辑