S5Pv210 Linux 驱动接口

第一种:fileoparetion里的open close read write ioctl........:

第二种:属性操作中对文件进行读写,这种是重要的,也是常见的:

static ssize_t isa1200_mode_show(struct device *dev,struct device_attribute *attr, char *buf)
 
{                                 

       int enable;
 
       struct isa1200_chip *haptic =container_of(dev,struct isa1200_chip,dev );
 
       return sprintf(buf, "%d/n", haptic->enable);
 
}
 
static ssize_t isa1200_mode_store(struct device *dev,  struct device_attribute *attr,const char *buf, size_t count)
 
{     

       int enable;
 
       struct isa1200_chip *haptic =container_of(dev,struct isa1200_chip,dev ); 
 
       if (sscanf(buf, "%d", &enable) != 1)     return -EINVAL;
 
              

       if(enable){
 
              haptic->enable=1;   

              isa1200_chip_set_pwm_cycle(haptic);         

              isa1200_chip_power_on(haptic);   

       }else{
 
              haptic->enable=0;   

              isa1200_chip_power_off(haptic);  

       }
 
       return count;
 
}
 
static DEVICE_ATTR(isa1200_mode, 0644, isa1200_mode_show, isa1200_mode_store);


这就完成了声明,然后再在probe里加上这么一句注册就行了:

   ret = device_create_file(&pdev->dev, &dev_attr_isa1200_mode);
 
       printk(KERN_INFO "dev_attr
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值