dev_get_platdata和dev_get_drvdata
来源:互联网 发布:mac 下载土豆视频 编辑:程序博客网 时间:2024/06/11 13:34
dev_get_platdata和dev_get_drvdata获取的对象是不同的。dev_get_platdata获取的是device结构体成员变量的void * platform_data。dev_get_drvdata获取的是device结构体struct device_private *成员变量P的成员变量void * driver_data。另外有与dev_get_drvdata相对应的set函数dev_set_drvdata,但是没有与dev_get_platdata相对应的set函数,只能直接给该platform_data赋值。两个函数的定义如下:static inline void *dev_get_platdata(const struct device *dev){return dev->platform_data;}int dev_set_drvdata(struct device *dev, void *data){int error;if (!dev->p) {error = device_private_init(dev);if (error)return error;}dev->p->driver_data = data;return 0;}void *dev_get_drvdata(const struct device *dev){if (dev && dev->p)return dev->p->driver_data;return NULL;}static inline void *platform_get_drvdata(const struct platform_device *pdev){return dev_get_drvdata(&pdev->dev);}static inline void platform_set_drvdata(struct platform_device *pdev,void *data){dev_set_drvdata(&pdev->dev, data);}
阅读全文
0 0
- dev_get_platdata和dev_get_drvdata
- 关于dev_set_drvdata()和dev_get_drvdata()
- dev_get_drvdata()函数
- dev_set_drvdata,dev_get_drvdata
- 函数dev_get_drvdata()
- dev_set_drvdata, dev_get_drvdata machanism
- . 和 ->
- || 和&&
- .和::
- “?”和“!”
- #和##
- && 和 ||
- 、和
- #和##
- .//和..//
- 和
- ?和\?
- ./ 和 ../
- Spring MVC 跨域问题
- C++ 常识
- HDU 大数算法
- 数据结构实验之图论六:村村通公路
- 【QT】全局快捷键
- dev_get_platdata和dev_get_drvdata
- 一些解决问题的建议
- Android开发--WebView简单录音功能的实现
- JAVA排序算法
- Android学习笔记——网络编程
- java中 @Test注解的使用和其他成员
- OC Block 简介
- 51nod 1348 乘积之和(NTT+分治)
- Kotlin 官方学习教程之密封类与泛型