主要讲使用proc_create_data如何传递私有数据。
其中可以参考/fs/proc/uptime.c
以下是我在工作中,针对一个phy驱动写的一个proc
const char *___dev_name(const struct device *dev)
{
/* Use the init name until the kobject becomes available */
if (dev->init_name)
return dev->init_name;
return kobject_name(&dev->kobj);
}
static struct proc_dir_entry *proc_root = NULL;
static ssize_t
__delay_write(struct file *file, //注册这个file的结构。与read,show的不一样。
const char __user *user_buf,
size_t count, loff_t *ppos)
{
char ch[20];
struct phy_device
*phydev = ((struct seq_file *)file->private_data)->private; 从struct file中取得私有数据的方式。
char *after;
int regvalue = at803x_dbg_reg_read(phydev,0x0b);
int delay_val = 0;
if(user_buf == NULL)
{ <