1、在probe函数中添加创建函数。
int ret = 0;
.......
ret = driver_create_file(&client->driver->driver, &driver_attr_mode);
if(ret)
goto err1;
err1:
driver_remove_file(&client->driver->driver, &driver_attr_mode);
2、实现sys文件的主文件操作函数包括读和写文件的操作。
static int s_value=0;
static ssize_t show_mode(struct device_driver *dev, char *buf)
{
u32 reg;
reg = s_value;
return snprintf(buf, PAGE_SIZE, "%u \n", reg);
}
static ssize_t store_mode(struct device_driver *dev, const char *buf, size_t count)
{
char *endp;
int err = 0;
int mode = simple_strtoul(buf, &endp, base); //buf指向字符串的开始,endp