Chinaunix首页 | 论坛 | 博客
  • 博客访问: 100706
  • 博文数量: 32
  • 博客积分: 230
  • 博客等级: 二等列兵
  • 技术积分: 183
  • 用 户 组: 普通用户
  • 注册时间: 2012-01-19 11:30
文章分类
文章存档

2014年(18)

2013年(8)

2012年(6)

我的朋友

发布时间:2012-12-18 14:25:39

     在linux驱动中有一类杂散(misc)设备,其实他本质上还是字符设备,只是内核开发者对字符设备驱动模型做了进一步的封装。杂散设备的主设备号同意使用10,次设备号从0~256。下面来具体分析一下杂散设备的原理。
     在内核代码linux/drivers/char/misc.c中我们可以看到这么一句subsys_initcall(misc_init);这说明在内核启动的时候会调用misc_init()函数,这个函数也在linux/drivers/char/misc.c文件中,它主要完成的功能是注册一......【阅读全文】

阅读(2080) | 评论(0) | 转发(2)

发布时间:2012-12-22 17:52:13

Linux下spi驱动开发(1)
一、概述
基于子系统去开发驱动程序已经是linux内核中普遍的做法了。前面写过基于I2C子系统的驱动开发。本文介绍另外一种常用总线SPI的开发方法。SPI子系统的开发和I2C有很多的相似性,大家可以对比学习。本主题分为两个部分叙述,第一部分介绍基于SPI子系统开发的理论框架;第二部分以华清远见教学平台FS_S5PC100上的M25P10芯片为例(内核版本2.6.29),编写一个SPI驱动程序实例。
二、SPI总线协议简介
介绍驱动开发前,需要先熟悉下SPI通讯协议中的几个关键的地方,后面在编写驱动时,需要考虑相关因素。
SPI总线由MISO(串行......【阅读全文】

阅读(741) | 评论(0) | 转发(1)

发布时间:2012-12-21 10:14:10

在不同版本的内核源码上,头文件所在的位置是不同的,比如说在 #include<asm/arch/regs-gpio.h> #include<mach/regs-gpio.h> 同样是regs-gpio.h,<asm/arch/regs-gpio.h>是在比较低的版本(比如2.6.25)上位于arch/arm/include/asm中,而mach/regs-gpio.h则是位于arch/arm/mach-s3c2410/include/mach中,2.6.30版本的内核是这种结构,所以,要根据所采用的不同的版本内核来修改头文件的位置!俺就是照抄别人的......【阅读全文】

阅读(1054) | 评论(0) | 转发(0)

发布时间:2012-12-19 12:05:18

原文:
 
1)TEXT_OFFSET  内核在RAM中的起始位置相对于RAM起始地址偏移。值为0x00008000


./arch/arm/Makefile
111 textofs-y := 0x00008000
112 textofs-$(CONFIG_ARCH_CLPS711X) := 0x00028000
113 # We don't want the htc bootloader to corrupt kernel during resume
114 textofs-$(CONFIG_PM_H1940) := 0x00108000
115......【阅读全文】

阅读(969) | 评论(0) | 转发(0)

发布时间:2012-12-18 15:56:28

关于do_initcalls函数的说明 - 嵌入式 分类: linux基础 2010-11-25 21:18 260人阅读 评论(0) 收藏 举报 1.在看linux核心代码的时候看到/init/main.c 里面的do_initcalls函数static void __init do_initcalls(void)742 {743         initcall_t *call;744 745         f......【阅读全文】

阅读(1590) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册