if (gpio_request(xx_irq, "yy_irq") < 0)、、__gpio_set_value与gpio_set_value
来源:互联网 发布:JAVA aix屏幕 编辑:程序博客网 时间:2024/05/22 08:04
读来的解释:
其原型为 int gpio_request(unsigned gpio, const char *label) 先说说其参数,gpio则为你要申请的哪一个管脚,label则是为其取一个名字。
一般gpio_request封装了mem_request(),起保护作用,最后要调用mem_free之类的。主要是告诉内核这地址被占用了。当其它地方调用同一地址的gpio_request就会报告错误,该地址已被申请。在/proc/mem应该会有地址占用表描述。
这种用法的保护作用前提是大家都遵守先申请再访问,有一个地方没遵守这个规则,这功能就失效了。好比进程互斥,必需大家在访问临界资源的时候都得先获取锁一样,其中一个没遵守约定,代码就废了。
__gpio_set_value和gpio_set_value的区别
一般带__这种操作的宏和函数是未保护的,对这中__操作的使用最好不用,除非你知道其中的原理。
你说的这种显然就是地址检测保护了。主要是防止错误地址引用。__gpio_set_vallue是没有地址范围检测的,如果引用非法地址,有可能内核down掉。
相关的具体实现看链接。音频相关?未细看,
http://blog.csdn.net/heanyu/article/details/6709571
- if (gpio_request(xx_irq, "yy_irq") < 0)、、__gpio_set_value与gpio_set_value
- gpio_request gpio_set_value __gpio_set_value
- gpio_request gpio_direction_output gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_direction_output 与 gpio_set_value
- gpio_set_value
- gpio_request
- gpio_request .
- gpio_request
- 游戏服务器运维常见故障总结
- B*Tree索引与Bitmap索引
- Firefox使用技巧
- 从QQ邮箱的广告邮件聚合想起的
- php生成验证码的例子
- if (gpio_request(xx_irq, "yy_irq") < 0)、、__gpio_set_value与gpio_set_value
- Vim + ctags + taglist + code_complete
- C语言的基础知识
- 解释类的地址偏移量
- PyLucene是基于Python的Lucene
- php 实现下载的方法
- 解决PHP的常见配置问题
- Handler使用实例
- apache常用模块介绍