diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2009-01-27 00:52:07 -0500 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2009-01-27 00:52:07 -0500 |
commit | d057f0a4efe441842adb2d263e50173b7e0e7e38 (patch) | |
tree | a89e3b12ce00d220bef827e9b34daea5611a1720 /drivers/atm/solos-pci.c | |
parent | 01e2ffac7dbc0700c972eb38619870034a0b3418 (diff) |
solos: Add initial list of parameters
I don't much like the trick with multiple inclusions of solos-attrlist.c
but don't really see a saner way to do it without repeating the list.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/atm/solos-pci.c')
-rw-r--r-- | drivers/atm/solos-pci.c | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/drivers/atm/solos-pci.c b/drivers/atm/solos-pci.c index d9262a428dd6..b0c4676296ba 100644 --- a/drivers/atm/solos-pci.c +++ b/drivers/atm/solos-pci.c | |||
@@ -371,8 +371,28 @@ static ssize_t console_store(struct device *dev, struct device_attribute *attr, | |||
371 | } | 371 | } |
372 | 372 | ||
373 | static DEVICE_ATTR(console, 0644, console_show, console_store); | 373 | static DEVICE_ATTR(console, 0644, console_show, console_store); |
374 | static DEVICE_ATTR(OperationalMode, 0444, solos_param_show, NULL); | 374 | |
375 | static DEVICE_ATTR(AutoStart, 0644, solos_param_show, solos_param_store); | 375 | |
376 | #define SOLOS_ATTR_RO(x) static DEVICE_ATTR(x, 0444, solos_param_show, NULL); | ||
377 | #define SOLOS_ATTR_RW(x) static DEVICE_ATTR(x, 0644, solos_param_show, solos_param_store); | ||
378 | |||
379 | #include "solos-attrlist.c" | ||
380 | |||
381 | #undef SOLOS_ATTR_RO | ||
382 | #undef SOLOS_ATTR_RW | ||
383 | |||
384 | #define SOLOS_ATTR_RO(x) &dev_attr_##x.attr, | ||
385 | #define SOLOS_ATTR_RW(x) &dev_attr_##x.attr, | ||
386 | |||
387 | static struct attribute *solos_attrs[] = { | ||
388 | #include "solos-attrlist.c" | ||
389 | NULL | ||
390 | }; | ||
391 | |||
392 | static struct attribute_group solos_attr_group = { | ||
393 | .attrs = solos_attrs, | ||
394 | .name = "parameters", | ||
395 | }; | ||
376 | 396 | ||
377 | static int flash_upgrade(struct solos_card *card, int chip) | 397 | static int flash_upgrade(struct solos_card *card, int chip) |
378 | { | 398 | { |
@@ -987,10 +1007,8 @@ static int atm_init(struct solos_card *card) | |||
987 | } | 1007 | } |
988 | if (device_create_file(&card->atmdev[i]->class_dev, &dev_attr_console)) | 1008 | if (device_create_file(&card->atmdev[i]->class_dev, &dev_attr_console)) |
989 | dev_err(&card->dev->dev, "Could not register console for ATM device %d\n", i); | 1009 | dev_err(&card->dev->dev, "Could not register console for ATM device %d\n", i); |
990 | if (device_create_file(&card->atmdev[i]->class_dev, &dev_attr_OperationalMode)) | 1010 | if (sysfs_create_group(&card->atmdev[i]->class_dev.kobj, &solos_attr_group)) |
991 | dev_err(&card->dev->dev, "Could not register opmode attr for ATM device %d\n", i); | 1011 | dev_err(&card->dev->dev, "Could not register parameter group for ATM device %d\n", i); |
992 | if (device_create_file(&card->atmdev[i]->class_dev, &dev_attr_AutoStart)) | ||
993 | dev_err(&card->dev->dev, "Could not register autostart attr for ATM device %d\n", i); | ||
994 | 1012 | ||
995 | dev_info(&card->dev->dev, "Registered ATM device %d\n", card->atmdev[i]->number); | 1013 | dev_info(&card->dev->dev, "Registered ATM device %d\n", card->atmdev[i]->number); |
996 | 1014 | ||