Pārlūkot izejas kodu

[device] Provide a driver-private data field for root devices

Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 9 gadus atpakaļ
vecāks
revīzija
d83fb45b66
1 mainītis faili ar 23 papildinājumiem un 0 dzēšanām
  1. 23
    0
      src/include/ipxe/device.h

+ 23
- 0
src/include/ipxe/device.h Parādīt failu

@@ -93,6 +93,8 @@ struct root_device {
93 93
 	struct device dev;
94 94
 	/** Root device driver */
95 95
 	struct root_driver *driver;
96
+	/** Driver-private data */
97
+	void *priv;
96 98
 };
97 99
 
98 100
 /** A root device driver */
@@ -123,6 +125,27 @@ struct root_driver {
123 125
 /** Declare a root device */
124 126
 #define __root_device __table_entry ( ROOT_DEVICES, 01 )
125 127
 
128
+/**
129
+ * Set root device driver-private data
130
+ *
131
+ * @v rootdev		Root device
132
+ * @v priv		Private data
133
+ */
134
+static inline void rootdev_set_drvdata ( struct root_device *rootdev,
135
+					 void *priv ){
136
+	rootdev->priv = priv;
137
+}
138
+
139
+/**
140
+ * Get root device driver-private data
141
+ *
142
+ * @v rootdev		Root device
143
+ * @ret priv		Private data
144
+ */
145
+static inline void * rootdev_get_drvdata ( struct root_device *rootdev ) {
146
+	return rootdev->priv;
147
+}
148
+
126 149
 extern int device_keep_count;
127 150
 
128 151
 /**

Notiek ielāde…
Atcelt
Saglabāt