Linux平台设备驱动模型

发表于:2016-1-29 09:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:吕晓宁    来源:51Testing软件测试网采编

  一、平台总线概述
  1. 平台总线(Platform bus)是linux2.6内核加入的一种虚拟总线,其优势在于采用了总线的模型对设备与驱动进行了管理,这样提高了程序的可移植性
  2.
  二、平台设备
  1. 平台设备使用structplatform_device来描述:
  struct platform_device
  {
  const char *name; /*设备名*/
  intid;  /*设备编号,配合设备名使用*/
  struct device dev;
  u32 num_resources;
  struct resource*resource;  /*设备资源*/
  }
  struct resource
  {
  resource_size_t start;
  resource_size_t end;
  const char *name;
  unsigned long flags;   /*资源的类型*/
  struct resource *parent, *sibling, *child;
  };
  2. 注册平台设备
  int platform_device_register(struct platform_device*pdev)
  三、平台驱动
  1. 平台驱动使用structplatform_driver描述:
  struct platform_driver
  {
  int(*probe)(struct platform_device*);
  int(*remove)(struct platform_device*);
  ……
  }
  2. 平台注册使用函数
  int platform_driver_register(struct platform_driver*)
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号