hw_device_t 结构体参考文档

hw_device_t 结构体参考文档

#include < hardware.h >

数据字段

uint32_t  标记
 
uint32_t  版本
 
struct hw_module_t 模块
 
uint32_t  reserved [12]
 
int(*  close )(struct hw_device_t *device)
 

详细说明

每个设备数据结构都必须以 hw_device_t 开头,后跟模块专用公共方法和属性。

定义位于文件 hardware.h 167 行。

字段文档

int(* close)(struct hw_device_t *device)

关闭此设备

定义位于文件 hardware.h 200 行。

struct hw_module_t * module

对此设备所属模块的引用

定义位于文件 hardware.h 190 行

uint32_t reserved[12]

预留以供日后使用的内边距

定义位于文件 hardware.h 196 行。

uint32_t tag

标记必须初始化为 HARDWARE_DEVICE_TAG

定义位于文件 hardware.h 169 行

uint32_t 版本

特定于模块的设备 API 的版本。派生模块用户使用此值来管理不同的设备实现。

模块用户负责检查 module_api_version 和设备版本字段,以确保用户能够与特定模块实现进行通信。

一个模块可以支持多个版本的设备。如果设备接口以不兼容的方式发生变化,但同时仍需要支持旧版实现,这会很有用。Camera 2.0 API 就是一个这样的示例。

此字段由模块用户解读,HAL 接口本身会忽略此字段。

定义位于文件 hardware.h 187 行。


此结构体的文档是根据以下文件生成的: