[讨论]关于device的flag与open_flag的处理

发布于 2013-07-05 20:12:25
/**
* Device structure
*/
struct rt_device
{
struct rt_object parent; /**< inherit from rt_object */

enum rt_device_class_type type; /**< device type */
rt_uint16_t flag; /**< device flag */
rt_uint16_t open_flag; /**< device open flag */

rt_uint8_t device_id; /**< 0 - 255 */


一般的情况下,flag应该是用来标识设备的属性,open_flag应该是工作时的属性。
但在以往的大部分驱动中都是根据flag来判断的,是否应该改为判断open_flag?
static rt_size_t rt_serial_write (rt_device_t dev, rt_off_t pos, const void* buffer, rt_size_t size)
{
/*******/
/* polling mode */
if (dev->flag & RT_DEVICE_FLAG_STREAM)

查看更多

关注者
0
被浏览
1.2k
2 个回答
grissiom
grissiom 2013-07-05
感觉至少 STREAM 这个是要在 open_flag 里判断的~

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览