
Linux 驱动
flymachine
这个作者很懒,什么都没留下…
展开
-
platform_device和platform_driver
首先介绍一下注册一个驱动的步骤:1、定义一个platform_driver结构2、初始化这个结构,指定其probe、remove等函数,并初始化其中的driver变量3、实现其probe、remove等函数看platform_driver结构,定义于include/linux/platform_device.h文件中:struct platform_driv转载 2011-11-14 12:32:07 · 601 阅读 · 0 评论 -
snd_kcontrol_new名称中的SOURCE字段
前些日子写了一篇snd_kcontrol探究,该文主要从内核源码出发简单讲述一下kcontrol接口的始末。这几天因为要在Android里面添加一些音频控制接口,配合alsa_amixer scontents分析,对此有了更深的体会,记录于此。因为这方面的资料实在太少,很多东西都是自我理解的,如有错误请见谅并指出。 name字段是名称标识,这个字段非常重要,因为kcontrol的作转载 2013-06-23 10:16:04 · 717 阅读 · 0 评论 -
Android 蓝牙开发浅析
由于近期正在开发一个通过蓝牙进行数据传递的模块,在参考了有关资料,并详细阅读了Android的官方文档后,总结了Android中蓝牙模块的使用。1. 使用蓝牙的响应权限1strong> uses-permission android:name="android.permission.BLUETOOTH" />转载 2013-05-27 10:17:13 · 767 阅读 · 0 评论 -
蓝牙RFCOMM连接
蓝牙RFCOMM连接博客分类: android public class ZeeTest extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);转载 2013-05-27 10:32:04 · 1731 阅读 · 0 评论 -
蓝牙物理链路类型:SCO和ACL链路
蓝牙物理链路ACL(Asynchronous Connectionless), 另外的一种链路是SCO(Synchronous Connection Oriented)主要用来传输对时间要求很高的数据通信。 蓝牙基带技术支持两种连接类型:同步定向连接(SCO)类型和异步无连接(ACL)类型。前者主要用于同步话音传送,后者主要用于分组数据传送。 SCO连接为对称连接,转载 2013-05-24 11:36:14 · 1864 阅读 · 0 评论 -
如何打印内核调用堆栈及函数名
static void__report_bad_irq(unsigned int irq, struct irq_desc *desc,irqreturn_t action_ret){struct irqaction *action;if (action_ret != IRQ_HANDLED && action_ret != IRQ_NONE) {printk(KE原创 2012-03-06 12:08:49 · 3889 阅读 · 0 评论 -
博创2410-S平台上AX88796网卡驱动(linux-2.6.24)
linux内核中已经提供了AX88796的驱动,需要我们配置一下。 首先,在arch/arm/mach-s3c2410/mach-smdk.c中添加如下内容:static struct ax_plat_data ax88796_platdata = { .wordlength = 2, .dcr_val = 0x1, .rcr_转载 2012-03-06 13:07:20 · 1671 阅读 · 0 评论 -
让linux2.6.18支持4G的SD卡
linux-2.6.20.x 以上版本对SD卡有较好支持,可以支持1.0及2.0 SD卡的协议,所以linux2.6.2x 以上的版本都支持大容量(>=4G)的SD卡,而linux-2.6.1x 对SD卡的支持只能到 2G,大于2G的SD就无法识别.发送CMD8,检查卡是否SD2.0。SD1.1是不支持CMD8的,因此在SD2.0 Spec中提出了先发送CMD8,如响应为无效命令,则卡为S转载 2012-02-23 12:00:21 · 1208 阅读 · 0 评论 -
在linux-2.6.29.1内核中修改添加DM9000的驱动
具体就是按下面的步骤操作的: 1、修改DM9000平台设备 修改/arch/arm/plat-s3c24xx/common-smdk.c文件 (1)、添加要包含的头文件 #if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE) #include #endif (2)、添加DM9000的平台设备结转载 2011-12-19 12:35:40 · 1916 阅读 · 0 评论 -
添加一个新的驱动到内核
如果添加一个驱动run_light.c到内核中,文件位于: drivers/char/run_light.c中1) 在drivers/char/Makefile中添加:obj-$(CONFIG_RUNLIGHT) += run_light.o 2)在drivers/char/Kconfig中添加:config RUNLIGHT tristate "Run Ligh原创 2011-12-09 09:57:18 · 664 阅读 · 0 评论 -
Linux创建字符设备 自动生成设备节点
1. 创建字符设备 生成设备节点 2. busybox Linux System Utilities ---> [*] mdev [*] Support /etc/mdev.conf [*] Support command execution at device addition/removal 3. kernel File systems --->转载 2011-12-18 20:16:46 · 801 阅读 · 0 评论 -
使用proc函数的实例
这个例子使用了内核模块,在/proc目录下创建一个名叫procfs_example的目录,并且在该目录下创建三个普通文件和一个软连接。一个文件名叫foo,只读,内容为foo = 'foo';一个文件名叫bar只读,内容为bar = 'bar';一个叫jiffies,只读,它会动态地显示jiffies的值。软连接名叫jiffies_too,它是对文件jiffies的软连接。以下是实验内容:l转载 2011-11-12 20:36:16 · 9985 阅读 · 0 评论 -
NorFlash的读写程序
#include"at91rm9200.h"unsigned short *sp=(unsigned short *)0x10000000; //short占用2个字节void pio_init(){ AT91C_BASE_SYS->PIOA_PDR=0XC0000000; AT91C_BASE_SYS->PIOA_ASR=0XC0000000;//发送端口}转载 2011-12-01 10:03:23 · 4627 阅读 · 0 评论 -
linux_NandFlash_driver_超详细分析
今天学习了NandFlash的驱动,硬件操作非常简单,就是这个linux下的驱动比较复杂,主要还是MTD层的问题,用了一下午时间整理出来一份详细的分析,只是分析函数结构和调用关系,具体代码实现就不看了,里面有N个结构体,搞得我头大。 我用linux2.6.25内核,2440板子,先从启动信息入手。内核启动信息,NAND部分:S3C24XX NAND Driver, (c) 2004转载 2011-11-06 23:16:42 · 1732 阅读 · 0 评论 -
linux 2.6内核的移植实验
linux 2.6内核的移植实验 2008-01-22 12:09:00| 分类: 广嵌 linux 资料 | 标签: |字号大中小 订阅 概述:对于嵌入式linux系统来说,有各种体系结构的处理器和硬件平台,用户根据自己的需要定制的硬件平台,只要是硬件平台有一点点变化,就需要做一些移植工作,linux内核移植是嵌入式linux系统中最常见的一项工作。由于转载 2011-11-06 23:05:19 · 890 阅读 · 0 评论 -
linux_内核移植方法及错误
出现问题:## Starting application at 0x30008000 ...Uncompressing Linux.............................................................解决方案:setenv bootargs console=ttySAC0,115200 mem=64M ;console明令在哪暂时转载 2011-11-04 00:28:24 · 4003 阅读 · 0 评论 -
解析linux根文件系统的挂载过程
解析linux根文件系统的挂载过程 (2008-08-05 15:55) 分类: linux文件系统------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/------------------------------------------转载 2011-11-02 18:51:26 · 591 阅读 · 0 评论 -
linux设备模型之uart驱动架构分析
linux设备模型之uart驱动架构分析 (2008-08-06 17:12) 分类: linux设备模型 ------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/-------------------------------------转载 2011-11-02 18:50:17 · 670 阅读 · 0 评论 -
嵌入式系统的动态电源管理技术
在嵌入式系统中,电源的管理和功耗的控制,始终是一个非常重要的任务。所以通常面向嵌入式应用的CPU都会有各自不同的软硬件策略来辅助电源管理和功耗控制,最常见的包括各种低功耗模式,以及动态的频率切换等功能。本文的目的主要结合自己最近在Marvell的Monahans平台上所做的工作,总结一下所学习的相关知识,及软硬件框架和实现。1电源和功耗管理的工作内容嵌入式设备上的电源和转载 2013-07-03 21:44:59 · 1731 阅读 · 0 评论