summaryrefslogtreecommitdiff
path: root/include/linux/device.h
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2013-07-14 16:05:57 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-16 10:57:37 -0700
commit39ef311204941ddd01ea2950d6220c8ccc710d15 (patch)
treeff043a79a7864d0e50367bcbca80f6562a282ae5 /include/linux/device.h
parent388a8c353d671d4ea2f638be84cfcbb912afdcf2 (diff)
downloadlwn-39ef311204941ddd01ea2950d6220c8ccc710d15.tar.gz
lwn-39ef311204941ddd01ea2950d6220c8ccc710d15.zip
driver core: Introduce device_create_groups
device_create_groups lets callers create devices as well as associated sysfs attributes with a single call. This avoids race conditions seen if sysfs attributes on new devices are created later. [fixed up comment block placement and add checks for printk buffer formats - gregkh] Signed-off-by: Guenter Roeck <linux@roeck-us.net> Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/device.h')
-rw-r--r--include/linux/device.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/device.h b/include/linux/device.h
index f207a8f49f80..bd5931e89f74 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -938,6 +938,11 @@ extern __printf(5, 6)
struct device *device_create(struct class *cls, struct device *parent,
dev_t devt, void *drvdata,
const char *fmt, ...);
+extern __printf(6, 7)
+struct device *device_create_with_groups(struct class *cls,
+ struct device *parent, dev_t devt, void *drvdata,
+ const struct attribute_group **groups,
+ const char *fmt, ...);
extern void device_destroy(struct class *cls, dev_t devt);
/*