阅读 Device Driver Programmer Guide 笔记
阅读 Device Driver Programmer Guide 笔记

xilinx驱动命名规则
以X开头

源文件命名规则
以x打头


底层头文件与高级头文件

重点来了,关于指针的使用



其中 XDevice DeviceInstance 语句用来例化设备。
举例说明:



调用与设备相应的函数时,第一个参数总是一个指针。

关于初始化设备函数的调用。
首先需要定义一个ConfigPtr的指针变量,调用LookupConfig()函数,需要说明:LookupConfig函数返回的是地址信息。

然后LookupConfig函数返回的地址信息需要重新传回CfgInitialize中

IP core 与中断




关于回调函数的理解:
定义:
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
是不是可以这样理解:
每一个拥有中断信号的IP core 里面都有一个回调函数,当产生中断时,回调函数起作用,调用中断响应函数。

使能了中断的函数,一定要设置回调函数。
阅读 Device Driver Programmer Guide 笔记的更多相关文章
- Samsung_tiny4412(驱动笔记10)----mdev,bus,device,driver,platform
/*********************************************************************************** * * mdev,bus,de ...
- [中英对照]Device Drivers in User Space: A Case for Network Device Driver | 用户态设备驱动: 以网卡驱动为例
前文初步介绍了Linux用户态设备驱动,本文将介绍一个典型的案例.Again, 如对Linux用户态设备驱动程序开发感兴趣,请阅读本文,否则请飘过. Device Drivers in User Sp ...
- [platform]linux platform device/driver(二)--Platform Device和Platform_driver注册过程之详细代码
转自:http://www.cnblogs.com/haimeng2010/p/3582403.html 目录: 1.platform_device注册过程 2.platform_driver注册过程 ...
- Architecture of Device I/O Drivers, Device Driver Design
http://www.kalinskyassociates.com/Wpaper4.html Architecture of Device I/O Drivers Many embedded syst ...
- linux下bus,device,driver三者关系
linux下bus,device,driver三者关系 1.bus: 总线作为主机和外设的连接通道,有些总线是比较规范的,形成了很多协议.如 PCI,USB,1394,IIC等.任何设备都可以选择合适 ...
- How to learn linux device driver
To learn device driver development, like any other new knowledge, the bestapproach for me is to lear ...
- linux device driver —— 环形缓冲区的实现
还是没有接触到怎么控制硬件,但是在书里看到了一个挺巧妙的环形缓冲区实现. 此环形缓冲区实际为一个大小为bufsize的一维数组,有一个rp的读指针,一个wp的写指针. 在数据满时写进程会等待读进程读取 ...
- 阅读Cortex-A53 Technical Reference Manual笔记
1. 前言 一颗芯片最主要的就是CPU核了,处理CPU Core之外,还存在很多其他IP,包括Graphical.Multimedia.Memory Controller.USB Controller ...
- I.MX6 ar1020 SPI device driver hacking
/************************************************************************************ * I.MX6 ar1020 ...
随机推荐
- 想做AI测试,需要学习哪些数学知识?
摘自知乎的回答 作者:者也 以上是个人读研以来感受用得最多的数学基础课,挂一漏万,大侠请补充指正 高等数学是基础中的基础,研究生以上级别的一切理工科都需要这个打底,数据挖掘.人工智能.模式识别此类跟数 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 条件设置行背景颜色
jQuery EasyUI 数据网格 - 条件设置行背景颜色 本教程将向您展示如何根据一些条件改变数据网格(datagrid)组件的行样式.当 listprice 值大于 50 时,我们将为该行设置不 ...
- MogonDB安装及配置
1.下载地址:https://www.mongodb.com/download-center/community?jmp=docs 选择下载MSI文件类型 2.双击安装 此处如勾选,则会影响安装速度, ...
- input 文本框自动显示光标
使用$("#votetitle").focus();没起作用 使用document.getElementById("votetitlechild").focus ...
- mysql以zip安装,解决the service already exists
mysql以zip安装, mysqld -install 报错:The service already exists 原因是之前安装了以后卸载了,服务没删掉. 解决方法: sc query m ...
- VNC错误修复⽅方法
VNC错误修复方法 VNC错误描述 vnc viewer开启后弹窗提示 Could not connect to session bus: Failed to connect to socket /t ...
- linux 使用split分割大文件
1.分割 -- split命令 可以指定按行数分割和按字节大小分割两种模式. (1) 按行数分割 $ split -l 300 large_file.txt new_file_prefix 加上-d, ...
- makefile中的wildcard 、patsubst、
在Makefile规则中,通配符会被自动展开.但在变量的定义和函数引用时,通配符将失效. 这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTE ...
- C++获取网络数据
1. 获取数据 工具libcurl libcurl主要功能就是用不同的协议连接和沟通不同的服务器.libcurl当前支持http, https, ftp, gopher, telnet, dict, ...
- caffe matlab matcaffe 加载输入网络net时报错
http://blog.csdn.net/xiaojiajia007/article/details/72850247