Skip to content

Commit

Permalink
watchdog: ziirave: Use watchdog infrastructure to create sysfs attrib…
Browse files Browse the repository at this point in the history
…utes

The watchdog core now supports creating driver specific sysfs attributes
when creating the watchdog device.

Signed-off-by: Guenter Roeck <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
Signed-off-by: Wim Van Sebroeck <[email protected]>
groeck authored and Wim Van Sebroeck committed Jan 11, 2016
1 parent faa5847 commit 2c2f308
Showing 1 changed file with 3 additions and 17 deletions.
20 changes: 3 additions & 17 deletions drivers/watchdog/ziirave_wdt.c
Original file line number Diff line number Diff line change
@@ -207,10 +207,7 @@ static struct attribute *ziirave_wdt_attrs[] = {
&dev_attr_reset_reason.attr,
NULL
};

static const struct attribute_group ziirave_wdt_sysfs_files = {
.attrs = ziirave_wdt_attrs,
};
ATTRIBUTE_GROUPS(ziirave_wdt);

static int ziirave_wdt_init_duration(struct i2c_client *client)
{
@@ -260,6 +257,7 @@ static int ziirave_wdt_probe(struct i2c_client *client,
w_priv->wdd.min_timeout = ZIIRAVE_TIMEOUT_MIN;
w_priv->wdd.max_timeout = ZIIRAVE_TIMEOUT_MAX;
w_priv->wdd.parent = &client->dev;
w_priv->wdd.groups = ziirave_wdt_groups;

ret = watchdog_init_timeout(&w_priv->wdd, wdt_timeout, &client->dev);
if (ret) {
@@ -327,26 +325,14 @@ static int ziirave_wdt_probe(struct i2c_client *client,
return -ENODEV;

ret = watchdog_register_device(&w_priv->wdd);
if (ret)
return ret;

ret = sysfs_create_group(&w_priv->wdd.dev->kobj,
&ziirave_wdt_sysfs_files);
if (ret) {
watchdog_unregister_device(&w_priv->wdd);

return ret;
}

return 0;
return ret;
}

static int ziirave_wdt_remove(struct i2c_client *client)
{
struct ziirave_wdt_data *w_priv = i2c_get_clientdata(client);

sysfs_remove_group(&client->dev.kobj, &ziirave_wdt_sysfs_files);

watchdog_unregister_device(&w_priv->wdd);

return 0;

0 comments on commit 2c2f308

Please sign in to comment.