本文转自:http://www.topeetboard.com

视频下载地址:

驱动注册:http://pan.baidu.com/s/1i34HcDB

设备注册:http://pan.baidu.com/s/1kTlGkcR

总线_设备_驱动注册流程详解

• 注册流程图

• 设备一般都需要先注册,才能注册驱动

– 现在越来越多的热拔插设备,反过来了。先注册驱动,设备来了再注册

设备

• 本节使用的命令

– 查看总线的命令#ls /sys/bus/

– 查看设备号的命令#cat /proc/devices

• 设备都有主设备号和次设备号,否则255个设备号不够用

– 查看杂项设备号的命令#cat /proc/misc

设备注册

关于注册设备的一点说明

• 早先的Linux会使用单独的文件注册设备,现在大多是使用引入的虚拟

平台,使用虚拟平台来注册设备会容易很多

• 如果大家在网上看到大段的注册设备的代码,可简单了解一下,知道

有这么个东西就成,不用去深究。不要去学习“屠龙技”,现在基本都

是直接在平台文件中注册设备

注册设备

注册设备使用结构体platform_device,该结构体在头文件“vim

include/linux/platform_device.h”中。头文件中也有注册设备和卸载设

备的函数,了解即可。

• 操作过程

– 注册设备。将设备结构体放到平台文件中,会自动注册设备,不用去调

用注册设备的函数。

– 在Kconfig文件中添加编译HELLO设备的宏定义(前面教程中已经添加)

– 配置menuconfig中的HELLO宏定义,生成新的.config文件

– 生成新的zImage

• 注册完之后在虚拟平台总线下可以查到注册的设备

– ls /sys/devices/platform/

驱动注册

• 驱动注册

– 很重要,牢牢掌握,以后写任何Linux驱动都会用到

• 实验

– 在mini_linux_module的基础上添加驱动注册部分

驱动注册——头文件

• 驱动注册使用结构体platform_driver,该结构体在头文件“vim

include/linux/platform_device.h”中

• 驱动注册platform_driver_register,驱动卸载函数

platform_driver_unregister也在这个头文件中

– 这两个函数的参数都只有结构体platform_driver

驱动注册——注册结构体

驱动注册——注册结构体

• 驱动常见的几种状态,初始化,移除,休眠,复位

– 就像PC一样,有的驱动休眠之后无法使用,有的可以使用;有的系统唤

醒之后,驱动需要重新启动才能正常工作,也有直接就可以使用等等

• probe函数

– platform_match函数匹配之后,驱动调用的初始化函数

• remove函数

– 移除驱动函数

• suspend函数

– 悬挂(休眠)驱动函数

• resume函数

– 休眠后恢复驱动

• device_driver数据结构的两个参数

– name和注册的设备name要一致

– owner一般赋值THIS_MODULE

实验

• 在mini_linux_module的基础上添加驱动注册部分

• 编译,在开发板上加载和卸载驱动

迅为4412开发板Linux驱动教程——总线_设备_驱动注册流程详解的更多相关文章

  1. 迅为4412开发板Linux驱动教程——总线_设备_驱动注冊流程具体解释

    视频下载地址: 驱动注冊:http://pan.baidu.com/s/1i34HcDB 设备注冊:http://pan.baidu.com/s/1kTlGkcR 总线_设备_驱动注冊流程具体解释 • ...

  2. 迅为4412开发板Linux驱动教程——编写简单应用调用驱动

    Linux驱动教程:http://pan.baidu.com/s/1c0hljUS 编写简单应用调用驱动--头文件 • 打印头文件 – include <stdio.h>调用打印函数pri ...

  3. 迅为4412开发板Linux驱动教程/硬件知识及原理图的使用

    视频教程下载地址:http://pan.baidu.com/s/1pJwxUfL 嵌入式研发流程介绍 • PCB研发流程介绍 – 方案,原理图(网表) – layoutproject师(gerber文 ...

  4. 迅为4412开发板Linux设备树的镜像烧写和源码简单优化教程

    1 烧写:   烧写和4412默认镜像的烧写类似,使用fastboot. 先更新uboot,用4412默认uboot更新支持设备树的uboot 用支持设备树的uboot烧写. 进入支持设备树的uboo ...

  5. 迅为4412开发板Linux驱动教程之GPIO的初始化

    视频下载地址:http://pan.baidu.com/s/1c06oiti GPIO的初始化 • 在内核源码目录下使用命令“ls drivers/gpio/*.o”,可以看到“gpio-exynos ...

  6. 迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法

    迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com/ 用户在开发板上运 ...

  7. 从需求的角度去理解Linux系列:总线、设备和驱动

    笔者成为博客专家后整理以前原创的嵌入式Linux系列博文,现推出以让更多的读者受益. <从需求的角度去理解linux系列:总线.设备和驱动>是一篇有关如何学习嵌入式Linux系统的方法论文 ...

  8. [转帖]迅为4412开发板最小linux系统的存储空间修改

    本文转自迅为论坛:http://www.topeetboard.com 最小linux系统的存储空间修改以修改成 1G 存储空间为例来修改,如果需要改成其他大小的存储空间,参照此方法修改即可. 首先连 ...

  9. 【学习/研发】嵌入式Linux/Android开发有它就够了——迅为4412开发板

    网站:http://www.topeetboard.com 光盘资料+网盘资料+配套视频+售后支持,助您加速学习研发的进程 产品介绍 iTOP-Exynos4412开发板采用 Exynos4412的主 ...

随机推荐

  1. c#重点[数据类型,构造方法,变量,变量,运算符,装箱,拆箱]

    1.命名规范    类  :名词 每个单词的首字母大写 Dog Student  PersonClass 字段:首个字母小写,如果有多个单词,后面的单词首字母大写 string name=" ...

  2. 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件

    [源码下载] 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件 作者:webabcd 介绍重新想象 Windows 8 Store ...

  3. Csharp: create word file using Open XML SDK 2.5

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  4. PHP(1)——学习之前做点啥准备

    工欲善其事必先利其器,当然是先准备工具咯.首先硬件条件就是双核CPU以及8G内存的电脑一台,操作系统环境:windows(64bit)7+.Mac OSX 10.10+.Linux 64bit.软件环 ...

  5. fibonacci数列从a到b的个数

    Description 我们定义斐波那契数列如下: f1=1 f2=2 f(n)=f(n-1)+f(n-2)(n>=3)   现在,给定两个数a和b,计算有多少个斐波那契数列中的数在a和b之间( ...

  6. [PHP] url的pathinfo模式加载不同控制器的实现

    使用自动加载和解析url的参数,实现调用到不同的控制器,实现了pathinfo模式和普通的url模式 文件结构: |--Controller |--Index |--Index.php |--Appl ...

  7. php中的字符串常用函数(三) str_replace() 子字符串替换

    mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ); 该函数返回一个字 ...

  8. CentOS 编译安装 MySQL5.7

    下载 所有版本下载地址: http://dev.mysql.com/downloads/mysql/ 此处用 5.7.10 wget http://dev.mysql.com/get/Download ...

  9. Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结

    Atitit.office word  excel  ppt pdf 的web在线预览方案与html转换方案 attilax 总结 1. office word  excel pdf 的web预览要求 ...

  10. SharePoint 2013中Office Web Apps的一次排错

    转自http://www.cnblogs.com/awpatp/archive/2013/06/06/3121420.html, 仅供自己查看 笔者尝试在自己的测试环境中为SharePoint 201 ...