当前位置: 首页 > news >正文

福州网站搜索引擎优化济宁百度推广公司有几家

福州网站搜索引擎优化,济宁百度推广公司有几家,国外做网站的公司,制作表格的步骤一. 简介 Linux下的SPI 驱动框架和 I2C 很类似,都分为主机控制器驱动和设备驱动,主机控制器也就是 SOC的 SPI 控制器接口,SPI设备驱动也就是所操作的SPI设备的驱动。 本文来学习一下Linux下SPI设备驱动。 二. Linux下SPI驱动:SP…

一. 简介

Linux下的SPI 驱动框架和 I2C 很类似,都分为主机控制器驱动和设备驱动,主机控制器也就是 SOC的 SPI 控制器接口,SPI设备驱动也就是所操作的SPI设备的驱动。

本文来学习一下Linux下SPI设备驱动。

二. Linux下SPI驱动:SPI设备驱动简介

1. spi_driver 结构体

spi 设备驱动也和 i2c 设备驱动也很类似, Linux 内核使用 spi_driver 结构体来表示 spi 设备 驱动,我们在编写 SPI 设备驱动的时候需要实现 spi_driver spi_driver 结构体定义在 include/linux/spi/spi.h 文件中,结构体内容如下:
struct spi_driver {const struct spi_device_id *id_table;int			(*probe)(struct spi_device *spi);int			(*remove)(struct spi_device *spi);void			(*shutdown)(struct spi_device *spi);struct device_driver	driver;
};

可以看出,spi_driver i2c_driverplatform_driver 基本一样,当 SPI 设备和驱动匹配成功以后 probe 函数就会执行。

2. SPI设备驱动注册与注销

同样的, spi_driver 初始化完成以后需要向 Linux 内核注册, spi_driver 注册函数为spi_register_driver函数 ,函数原型如下:
int spi_register_driver(struct spi_driver *sdrv)
函数参数和返回值含义如下:
sdrv 要注册的 spi_driver
返回值: 0 ,注册成功;赋值,注册失败。

注销 SPI 设备驱动以后也需要注销掉前面注册的 spi_driver ,使用 spi_unregister_driver 函数完成 spi_driver 的注销,函数原型如下:
void spi_unregister_driver(struct spi_driver *sdrv)
函数参数和返回值含义如下:
sdrv 要注销的 spi_driver。
返回值: 无。

三.  spi_driver 注册示例代码

SPI设备驱动的注册示例代码,即spi_driver 注册示例程序如下:
/*SPI设备驱动的注册示例代码*/
/* probe 函数 */
static int probe(struct spi_device* dev)
{//具体的函数内容return 0;
}/* remove 函数 */
static int remove(struct spi_device* dev)
{   //具体的函数内容return 0;
} /* 传统匹配方式 ID 列表 */
static struct spi_device_id xxx_id_table[] = {{"xxx", 0},{}
};/* 设备树匹配列表 */
static struct of_device_id xxx_of_match_table[] = {{.compatible = "xxx"},{}
};/* SPI 驱动结构体 */
static struct spi_driver xxx_spi_driver = {.driver = {.name = "xxx_spi",.owner = THIS_MODULE,.of_match_table = xxx_of_match_table,},.id_table = xxx_id_table,.probe = xxx_probe,.remove = xxx_remove,
};/* 驱动入口函数 */
static int __init xxx_init(void)
{spi_register_driver(&xxx_spi_driver); //SPI设备驱动的注册
}
/* 驱动出口函数 */
static void __exit xxx_exit(void)
{spi_unregister_driver(&xxx_spi_driver); //SPI设备驱动的注销
}module_init(xx_init);
module_exit();

1~38 行, spi_driver 结构体,需要 SPI 设备驱动人员编写,包括匹配表、 probe 函数等。
i2c_driver platform_driver 一样,就不详细讲解了。
41~44 行,在驱动入口函数中,调用 spi_register_driver 来注册 spi_driver
46~49 行,在驱动出口函数中,调用 spi_unregister_driver 来注销 spi_driver

http://www.bdqn1.cn/news/105.html

相关文章:

  • 大连外贸网站建设班级优化大师免费下载安装
  • 企业建设官方网站的目的广东百度seo
  • 跨境电商网站搭建百度百度地图
  • 龙华网站建设哪家好海外推广平台有哪些?
  • 网站备案服务商查询百度seo搜索引擎优化厂家
  • 黄埔网站开发宁波网站优化公司哪家好
  • 子页面的网站地址怎么做百度一下下载
  • 网站宣传策略seo网络推广专员招聘
  • 正规网站做菠菜广告江苏关键词推广seo
  • 手机网站集成支付宝怎样免费建立自己的网站
  • 网站开发需要什么专业做app软件大概多少钱
  • 濮阳疫情最新消息今天封城了群排名优化软件官网
  • 做有搜索功能的网站网络营销网站建设
  • 如何做淘外网站推广一级消防工程师考试
  • 织金县政府关于网站建设seo网站关键词优化多少钱
  • 北京怎么做网站推广网上写文章用什么软件
  • 广州环保网站建设成都网络营销公司排名
  • 上海公司查询网站一个企业该如何进行网络营销
  • 江西智能网站建设哪里有国外网站seo
  • 如何做网站产品经理电子商务seo是什么意思
  • 武威做网站专业seo培训学校
  • 黄金网站app软件下载安装百度基木鱼建站
  • 微信网页制作网站建设站长工具ip地址
  • 电子商务网站建设方案书自己的网站怎么在百度上面推广
  • 设计师服务平台鱼巴士有哪些网站张雷明履新河南省委常委
  • 爱南宁app下载二维码seo和sem的区别是什么
  • 建一个国外的网站西安seo关键词查询
  • 中文网站建设入门模板式自助建站
  • 怎么用php做网站华为手机软文范文300
  • 网页上传 网站百度快速收录3元一条