gianfar driver: eliminate compiler warnings and unnecessary macros

This patch eliminates the warning of unused return values when the driver
registers it sysfs files.  Now the driver will print an error if it is
unable to register the sysfs files.

It also eliminates the macros used to wrap the DEVICE_ATTR macro and the
device_create_file function call.  The macros don't reduce the number of
lines of source code in the file and the name munging makes is so that
cscope and friends don't see the references to the functions.  It's better
to just call the kernel API directly.

While we're at it, the DEVICE_ATTR instances have been moved down to
be grouped with the functions they depend on.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Grant Likely 2007-12-01 22:12:45 -07:00 committed by David S. Miller
parent 43fd6c7ebd
commit 35a84fdc89

View file

@ -37,24 +37,6 @@
#include "gianfar.h" #include "gianfar.h"
#define GFAR_ATTR(_name) \
static ssize_t gfar_show_##_name(struct device *dev, \
struct device_attribute *attr, char *buf); \
static ssize_t gfar_set_##_name(struct device *dev, \
struct device_attribute *attr, \
const char *buf, size_t count); \
static DEVICE_ATTR(_name, 0644, gfar_show_##_name, gfar_set_##_name)
#define GFAR_CREATE_FILE(_dev, _name) \
device_create_file(&_dev->dev, &dev_attr_##_name)
GFAR_ATTR(bd_stash);
GFAR_ATTR(rx_stash_size);
GFAR_ATTR(rx_stash_index);
GFAR_ATTR(fifo_threshold);
GFAR_ATTR(fifo_starve);
GFAR_ATTR(fifo_starve_off);
static ssize_t gfar_show_bd_stash(struct device *dev, static ssize_t gfar_show_bd_stash(struct device *dev,
struct device_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
@ -100,6 +82,8 @@ static ssize_t gfar_set_bd_stash(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(bd_stash, 0644, gfar_show_bd_stash, gfar_set_bd_stash);
static ssize_t gfar_show_rx_stash_size(struct device *dev, static ssize_t gfar_show_rx_stash_size(struct device *dev,
struct device_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
@ -146,6 +130,9 @@ static ssize_t gfar_set_rx_stash_size(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(rx_stash_size, 0644, gfar_show_rx_stash_size,
gfar_set_rx_stash_size);
/* Stashing will only be enabled when rx_stash_size != 0 */ /* Stashing will only be enabled when rx_stash_size != 0 */
static ssize_t gfar_show_rx_stash_index(struct device *dev, static ssize_t gfar_show_rx_stash_index(struct device *dev,
struct device_attribute *attr, struct device_attribute *attr,
@ -184,6 +171,9 @@ static ssize_t gfar_set_rx_stash_index(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(rx_stash_index, 0644, gfar_show_rx_stash_index,
gfar_set_rx_stash_index);
static ssize_t gfar_show_fifo_threshold(struct device *dev, static ssize_t gfar_show_fifo_threshold(struct device *dev,
struct device_attribute *attr, struct device_attribute *attr,
char *buf) char *buf)
@ -219,6 +209,9 @@ static ssize_t gfar_set_fifo_threshold(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(fifo_threshold, 0644, gfar_show_fifo_threshold,
gfar_set_fifo_threshold);
static ssize_t gfar_show_fifo_starve(struct device *dev, static ssize_t gfar_show_fifo_starve(struct device *dev,
struct device_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
@ -253,6 +246,8 @@ static ssize_t gfar_set_fifo_starve(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(fifo_starve, 0644, gfar_show_fifo_starve, gfar_set_fifo_starve);
static ssize_t gfar_show_fifo_starve_off(struct device *dev, static ssize_t gfar_show_fifo_starve_off(struct device *dev,
struct device_attribute *attr, struct device_attribute *attr,
char *buf) char *buf)
@ -288,9 +283,13 @@ static ssize_t gfar_set_fifo_starve_off(struct device *dev,
return count; return count;
} }
DEVICE_ATTR(fifo_starve_off, 0644, gfar_show_fifo_starve_off,
gfar_set_fifo_starve_off);
void gfar_init_sysfs(struct net_device *dev) void gfar_init_sysfs(struct net_device *dev)
{ {
struct gfar_private *priv = netdev_priv(dev); struct gfar_private *priv = netdev_priv(dev);
int rc;
/* Initialize the default values */ /* Initialize the default values */
priv->rx_stash_size = DEFAULT_STASH_LENGTH; priv->rx_stash_size = DEFAULT_STASH_LENGTH;
@ -301,11 +300,12 @@ void gfar_init_sysfs(struct net_device *dev)
priv->bd_stash_en = DEFAULT_BD_STASH; priv->bd_stash_en = DEFAULT_BD_STASH;
/* Create our sysfs files */ /* Create our sysfs files */
GFAR_CREATE_FILE(dev, bd_stash); rc = device_create_file(&dev->dev, &dev_attr_bd_stash);
GFAR_CREATE_FILE(dev, rx_stash_size); rc |= device_create_file(&dev->dev, &dev_attr_rx_stash_size);
GFAR_CREATE_FILE(dev, rx_stash_index); rc |= device_create_file(&dev->dev, &dev_attr_rx_stash_index);
GFAR_CREATE_FILE(dev, fifo_threshold); rc |= device_create_file(&dev->dev, &dev_attr_fifo_threshold);
GFAR_CREATE_FILE(dev, fifo_starve); rc |= device_create_file(&dev->dev, &dev_attr_fifo_starve);
GFAR_CREATE_FILE(dev, fifo_starve_off); rc |= device_create_file(&dev->dev, &dev_attr_fifo_starve_off);
if (rc)
dev_err(&dev->dev, "Error creating gianfar sysfs files.\n");
} }