- 博客(16)
- 资源 (8)
- 问答 (1)
- 收藏
- 关注
转载 platform_driver平台驱动注册和注销过程(下)
2. 平台驱动卸载过程平台驱动卸载过程是注册的逆过程,详细信息可参考注册过程进行分析。2.1 at91_i2c_exit()函数static void __exit at91_i2c_exit(void){ platform_driver_unregister(&at91_i2c_driver);} 2.2 platf
2014-09-29 10:51:04 2061
转载 platform_driver平台驱动注册和注销过程(上)
在Linux操作系统中,驱动程序的加载分为两种:内核启动时自动加载和用户手动加载;硬件设备也可以采用两种方式添加到系统中:在系统启动前及系统运行时的热插拨。下面,我们以arm体系结构下的at91处理器中的I2C控制器为例,介绍一下硬件设备及相关的驱动程序是如何绑定及松绑的。1. 平台驱动注册过程1.1 at91_i2c_init()函数在文件drivers/i2c
2014-09-29 10:49:27 1114
转载 platform_driver_probe与platform_driver_register的区别
Platform Device and Drivers 从我们可以了解Platform bus上面的驱动模型接口:platform_device,platform_driver。和PCI和USB这些大结构的总线不同,虚拟总线 Platform bus使用最小结构来集成SOC processer上的各种外设,或者各种“legacy”之间的互联。Platform device 典型的P
2014-09-29 10:45:05 711
转载 platform_device与platform_driver
platform_device和platform_driver(一)首先介绍一下注册一个驱动的步骤:1、定义一个platform_driver结构2、初始化这个结构,指定其probe、remove等函数,并初始化其中的driver变量3、实现其probe、remove等函数看platform_driver结构,定义于include/linux/platform_
2014-09-29 10:40:10 901
转载 MODULE_DEVICE_TABLE的理解
在Linux IIC驱动中看到一段代码:static struct platform_device_id xx_driver_ids[] = {{.name = "s3c2410-i2c",.driver_data = TYPE_S3C2410,}, {.name = "s3c2440-i2c",.driver_data = TYPE_S3C2440,
2014-09-29 10:27:21 16315 2
转载 Linux工作队列实现机制
工作项、工作队列和工作者线程把推后执行的任务叫做工作(work),描述它的数据结构为work_struct ,这些工作以队列结构组织成工作队列(workqueue),其数据结构为workqueue_struct ,而工作线程就是负责执行工作队列中的工作。系统默认的工作者线程为events。工作队列(work queue)是另外一种将工作推后执行的形式。工作队列可以把工作推后,交由一
2014-09-29 10:23:44 1078 2
转载 module_init的加载和释放
像你写C程序需要包含C库的头文件那样,Linux内核编程也需要包含Kernel头文件,大多的Linux驱动程序需要包含下面三个头文件:#include #include #include 其中,init.h 定义了驱动的初始化和退出相关的函数,kernel.h 定义了经常用到的函数原型及宏定义,module.h 定义了内核模块相关的函数、变量及宏。 几乎每个lin
2014-09-29 09:58:44 626
转载 git shell显示中文
原文地址:http://www.cnblogs.com/Gukw/archive/2012/01/16/2323417.html1,/etc/gitconfig:[gui] encoding = utf-8 #代码库统一用urf-8,在git gui中可以正常显示中文[i18n] commitencoding = GB2312 #log编码,window下默认gb2312,声明
2014-09-28 08:32:35 2197
翻译 Git学习手册
一直忙于各种琐碎的项目开题报告,编码做PPT等琐碎的工作,博客都好久没更新,罪过罪过!个人用github有一段时间了,当时学习的时候参照官方的教程,勉强能用,但是有些原理性的东西总是没搞懂,所以很困惑,而网上关于git和github学习的中文文档和学习资料都不是很多,所以打算写一些自己使用github和git的一些心得,让初学者少走弯路。--------------------------
2014-09-28 08:29:32 547
原创 git shell 命令大全
git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch-r 查看远程所有分支git commit -am "init" 提交并且加注释 git remote add origin git@192.168.1.119:ndshowgit push origin master
2014-09-28 08:26:27 4668
原创 用sed -i修改文件,去掉 “行首” 带“@”的首字母@
用sed -i修改文件,去掉 “行首”带“@”的首字母@----------------你的意思是去掉行首的@ sed -i 's/^@//' filename还是去掉行首的@加一个字符(总共去掉了2个字符)sed -i 's/^@.//' filename
2014-09-25 20:20:16 8223
原创 对find参数-prune的理解
对find参数-prune的理解(PS:对find参数-prune的理解-prune就像一个判断语句,当发现-prune前面的表达式math时,执行到-prune之后就会输出一个1结果,如果shell的话,可以使用echo$?来看结果,如果-prune后面跟的是-o选项,用c语言的语法来讲的话就是1 || -print,所以明显可以看到当-prune前面的表达式成立的话,就不会
2014-09-25 20:19:44 1003
原创 linux下创建和删除软、硬链接
在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问。 链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(Symbo
2014-09-25 20:17:24 557
原创 linux的rename命令
不同于Dos下的rename命令,linux下的rename命令功能非常强大。#man renameNAME rename - Rename filesSYNOPSIS rename from to file...DESCRIPTION rename will rename the specified files by r
2014-09-25 20:17:11 624
原创 shell find用法
find命令的一般格式:find pathname -options [-exec]pathname 是find命令所查找的目录路径-exec 对匹配的文件执行该参数所给出的shell命令-options 选项参数:-name 按照文件名查找文件-perm 按照文件权限来查找文件-user 按照文件属主来查找文件-group 按照文件所属组来查找文件-mti
2014-09-25 20:14:31 1119
常用串口调试工具2024春季版(2.19.9.40714 LTSC)
2024-08-09
常用串口调试工具用户指南v1.6.2.40808
2024-08-09
STC12C5A60S2中文手册最新版2010[1].11.13
2010-12-29
LINUX系统 中标麒麟 USB单向数据传输 人脸识别
2015-05-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人