]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * kobject_uevent.h - list of kobject user events that can be generated | |
3 | * | |
4 | * Copyright (C) 2004 IBM Corp. | |
5 | * Copyright (C) 2004 Greg Kroah-Hartman <greg@kroah.com> | |
6 | * | |
7 | * This file is released under the GPLv2. | |
8 | * | |
9 | */ | |
10 | ||
11 | #ifndef _KOBJECT_EVENT_H_ | |
12 | #define _KOBJECT_EVENT_H_ | |
13 | ||
14 | #define HOTPLUG_PATH_LEN 256 | |
15 | ||
16 | /* path to the hotplug userspace helper executed on an event */ | |
17 | extern char hotplug_path[]; | |
18 | ||
19 | /* | |
20 | * If you add an action here, you must also add the proper string to the | |
21 | * lib/kobject_uevent.c file. | |
22 | */ | |
23 | typedef int __bitwise kobject_action_t; | |
24 | enum kobject_action { | |
25 | KOBJ_ADD = (__force kobject_action_t) 0x01, /* add event, for hotplug */ | |
26 | KOBJ_REMOVE = (__force kobject_action_t) 0x02, /* remove event, for hotplug */ | |
27 | KOBJ_CHANGE = (__force kobject_action_t) 0x03, /* a sysfs attribute file has changed */ | |
28 | KOBJ_MOUNT = (__force kobject_action_t) 0x04, /* mount event for block devices */ | |
29 | KOBJ_UMOUNT = (__force kobject_action_t) 0x05, /* umount event for block devices */ | |
30 | KOBJ_OFFLINE = (__force kobject_action_t) 0x06, /* offline event for hotplug devices */ | |
31 | KOBJ_ONLINE = (__force kobject_action_t) 0x07, /* online event for hotplug devices */ | |
32 | }; | |
33 | ||
34 | ||
35 | #ifdef CONFIG_KOBJECT_UEVENT | |
36 | int kobject_uevent(struct kobject *kobj, | |
37 | enum kobject_action action, | |
38 | struct attribute *attr); | |
39 | int kobject_uevent_atomic(struct kobject *kobj, | |
40 | enum kobject_action action, | |
41 | struct attribute *attr); | |
42 | #else | |
43 | static inline int kobject_uevent(struct kobject *kobj, | |
44 | enum kobject_action action, | |
45 | struct attribute *attr) | |
46 | { | |
47 | return 0; | |
48 | } | |
49 | static inline int kobject_uevent_atomic(struct kobject *kobj, | |
50 | enum kobject_action action, | |
51 | struct attribute *attr) | |
52 | { | |
53 | return 0; | |
54 | } | |
55 | #endif | |
56 | ||
57 | #endif |