driver core: Inline dev_set/get_drvdata
[deliverable/linux.git] / include / linux / device.h
index d1d1c055b48e2efa8bbdc692b185eaa16f9619cf..1b18c886445cba974a42606c5a58d42ab5050a42 100644 (file)
@@ -673,6 +673,7 @@ struct acpi_dev_node {
  *             variants, which GPIO pins act in what additional roles, and so
  *             on.  This shrinks the "Board Support Packages" (BSPs) and
  *             minimizes board-specific #ifdefs in drivers.
+ * @driver_data: Private pointer for driver specific info.
  * @power:     For device power management.
  *             See Documentation/power/devices.txt for details.
  * @pm_domain: Provide callbacks that are executed during system suspend,
@@ -734,6 +735,8 @@ struct device {
                                           device */
        void            *platform_data; /* Platform specific data, device
                                           core doesn't touch it */
+       void            *driver_data;   /* Driver data, set and get with
+                                          dev_set/get_drvdata */
        struct dev_pm_info      power;
        struct dev_pm_domain    *pm_domain;
 
@@ -823,6 +826,16 @@ static inline void set_dev_node(struct device *dev, int node)
 }
 #endif
 
+static inline void *dev_get_drvdata(const struct device *dev)
+{
+       return dev->driver_data;
+}
+
+static inline void dev_set_drvdata(struct device *dev, void *data)
+{
+       dev->driver_data = data;
+}
+
 static inline struct pm_subsys_data *dev_to_psd(struct device *dev)
 {
        return dev ? dev->power.subsys_data : NULL;
@@ -907,8 +920,6 @@ extern int device_move(struct device *dev, struct device *new_parent,
 extern const char *device_get_devnode(struct device *dev,
                                      umode_t *mode, kuid_t *uid, kgid_t *gid,
                                      const char **tmp);
-extern void *dev_get_drvdata(const struct device *dev);
-extern int dev_set_drvdata(struct device *dev, void *data);
 
 static inline bool device_supports_offline(struct device *dev)
 {
This page took 0.045829 seconds and 5 git commands to generate.