diff options
Diffstat (limited to 'drivers/pps/sysfs.c')
| -rw-r--r-- | drivers/pps/sysfs.c | 55 | 
1 files changed, 35 insertions, 20 deletions
diff --git a/drivers/pps/sysfs.c b/drivers/pps/sysfs.c index ef0978c71ee..aefb75d6709 100644 --- a/drivers/pps/sysfs.c +++ b/drivers/pps/sysfs.c @@ -29,8 +29,8 @@   * Attribute functions   */ -static ssize_t pps_show_assert(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t assert_show(struct device *dev, struct device_attribute *attr, +			   char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev); @@ -41,9 +41,10 @@ static ssize_t pps_show_assert(struct device *dev,  			(long long) pps->assert_tu.sec, pps->assert_tu.nsec,  			pps->assert_sequence);  } +static DEVICE_ATTR_RO(assert); -static ssize_t pps_show_clear(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t clear_show(struct device *dev, struct device_attribute *attr, +			  char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev); @@ -54,45 +55,59 @@ static ssize_t pps_show_clear(struct device *dev,  			(long long) pps->clear_tu.sec, pps->clear_tu.nsec,  			pps->clear_sequence);  } +static DEVICE_ATTR_RO(clear); -static ssize_t pps_show_mode(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t mode_show(struct device *dev, struct device_attribute *attr, +			 char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev);  	return sprintf(buf, "%4x\n", pps->info.mode);  } +static DEVICE_ATTR_RO(mode); -static ssize_t pps_show_echo(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t echo_show(struct device *dev, struct device_attribute *attr, +			 char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev);  	return sprintf(buf, "%d\n", !!pps->info.echo);  } +static DEVICE_ATTR_RO(echo); -static ssize_t pps_show_name(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t name_show(struct device *dev, struct device_attribute *attr, +			 char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev);  	return sprintf(buf, "%s\n", pps->info.name);  } +static DEVICE_ATTR_RO(name); -static ssize_t pps_show_path(struct device *dev, -				struct device_attribute *attr, char *buf) +static ssize_t path_show(struct device *dev, struct device_attribute *attr, +			 char *buf)  {  	struct pps_device *pps = dev_get_drvdata(dev);  	return sprintf(buf, "%s\n", pps->info.path);  } +static DEVICE_ATTR_RO(path); + +static struct attribute *pps_attrs[] = { +	&dev_attr_assert.attr, +	&dev_attr_clear.attr, +	&dev_attr_mode.attr, +	&dev_attr_echo.attr, +	&dev_attr_name.attr, +	&dev_attr_path.attr, +	NULL, +}; + +static const struct attribute_group pps_group = { +	.attrs = pps_attrs, +}; -struct device_attribute pps_attrs[] = { -	__ATTR(assert, S_IRUGO, pps_show_assert, NULL), -	__ATTR(clear, S_IRUGO, pps_show_clear, NULL), -	__ATTR(mode, S_IRUGO, pps_show_mode, NULL), -	__ATTR(echo, S_IRUGO, pps_show_echo, NULL), -	__ATTR(name, S_IRUGO, pps_show_name, NULL), -	__ATTR(path, S_IRUGO, pps_show_path, NULL), -	__ATTR_NULL, +const struct attribute_group *pps_groups[] = { +	&pps_group, +	NULL,  };  | 
