]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[device] Provide a driver-private data field for root devices
authorMichael Brown <mcb30@ipxe.org>
Thu, 18 Dec 2014 14:38:45 +0000 (14:38 +0000)
committerMichael Brown <mcb30@ipxe.org>
Thu, 18 Dec 2014 14:46:38 +0000 (14:46 +0000)
Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/include/ipxe/device.h

index 7202a69665c79c3cd0e3252bb934675d335b03ee..d1420b1a1d6e2f8886f29c451a207ba204f87071 100644 (file)
@@ -93,6 +93,8 @@ struct root_device {
        struct device dev;
        /** Root device driver */
        struct root_driver *driver;
+       /** Driver-private data */
+       void *priv;
 };
 
 /** A root device driver */
@@ -123,6 +125,27 @@ struct root_driver {
 /** Declare a root device */
 #define __root_device __table_entry ( ROOT_DEVICES, 01 )
 
+/**
+ * Set root device driver-private data
+ *
+ * @v rootdev          Root device
+ * @v priv             Private data
+ */
+static inline void rootdev_set_drvdata ( struct root_device *rootdev,
+                                        void *priv ){
+       rootdev->priv = priv;
+}
+
+/**
+ * Get root device driver-private data
+ *
+ * @v rootdev          Root device
+ * @ret priv           Private data
+ */
+static inline void * rootdev_get_drvdata ( struct root_device *rootdev ) {
+       return rootdev->priv;
+}
+
 extern int device_keep_count;
 
 /**