summaryrefslogtreecommitdiff
path: root/namedev.h
diff options
context:
space:
mode:
authorgreg@kroah.com <greg@kroah.com>2003-07-23 18:56:56 -0400
committerGreg KH <gregkh@suse.de>2005-04-26 21:01:40 -0700
commitcb32ac946fe3606fa5bfeb0b26589a3b0f2e0c45 (patch)
treea8e669fc15a9c0a5f28d292dc68425a65258a399 /namedev.h
parentb4c1dcf91277425371f7be4b9f8d28ef5d1e8910 (diff)
[PATCH] make struct config_device contain a struct device_attr instead of duplicating the mess.
Diffstat (limited to 'namedev.h')
-rw-r--r--namedev.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/namedev.h b/namedev.h
index 0e3a819952..9d612dfe0c 100644
--- a/namedev.h
+++ b/namedev.h
@@ -23,6 +23,8 @@
#ifndef NAMEDEV_H
#define NAMEDEV_H
+#include "list.h"
+
struct sysfs_class_device;
/* namedev config files */
@@ -31,6 +33,38 @@ struct sysfs_class_device;
#define NAMEDEV_CONFIG_PERMISSION_FILE "namedev.permissions"
#define NAMEDEV_CONFIG_FILE "namedev.config"
+enum config_type {
+ KERNEL_NAME = 0, /* must be 0 to let memset() default to this value */
+ LABEL = 1,
+ NUMBER = 2,
+ TOPOLOGY = 3,
+ REPLACE = 4,
+};
+
+#define BUS_SIZE 30
+#define FILE_SIZE 50
+#define VALUE_SIZE 100
+#define ID_SIZE 50
+#define PLACE_SIZE 50
+
+
+struct config_device {
+ struct list_head node;
+
+ enum config_type type;
+
+ char bus[BUS_SIZE];
+ char sysfs_file[FILE_SIZE];
+ char sysfs_value[VALUE_SIZE];
+ char id[ID_SIZE];
+ char place[PLACE_SIZE];
+ char kernel_name[NAME_SIZE];
+
+ /* what to set the device to */
+ struct device_attr attr;
+};
+
+
extern int namedev_init(void);
extern int namedev_name_device(struct sysfs_class_device *class_dev, struct device_attr *attr);