|
@@ -65,6 +65,11 @@ const struct setting chip_setting __setting ( SETTING_NETDEV, chip ) = {
|
65
|
65
|
.description = "Chip",
|
66
|
66
|
.type = &setting_type_string,
|
67
|
67
|
};
|
|
68
|
+const struct setting ifname_setting __setting ( SETTING_NETDEV, ifname ) = {
|
|
69
|
+ .name = "ifname",
|
|
70
|
+ .description = "Interface name",
|
|
71
|
+ .type = &setting_type_string,
|
|
72
|
+};
|
68
|
73
|
|
69
|
74
|
/**
|
70
|
75
|
* Store MAC address setting
|
|
@@ -199,6 +204,22 @@ static int netdev_fetch_chip ( struct net_device *netdev, void *data,
|
199
|
204
|
return strlen ( chip );
|
200
|
205
|
}
|
201
|
206
|
|
|
207
|
+/**
|
|
208
|
+ * Fetch ifname setting
|
|
209
|
+ *
|
|
210
|
+ * @v netdev Network device
|
|
211
|
+ * @v data Buffer to fill with setting data
|
|
212
|
+ * @v len Length of buffer
|
|
213
|
+ * @ret len Length of setting data, or negative error
|
|
214
|
+ */
|
|
215
|
+static int netdev_fetch_ifname ( struct net_device *netdev, void *data,
|
|
216
|
+ size_t len ) {
|
|
217
|
+ const char *ifname = netdev->name;
|
|
218
|
+
|
|
219
|
+ strncpy ( data, ifname, len );
|
|
220
|
+ return strlen ( ifname );
|
|
221
|
+}
|
|
222
|
+
|
202
|
223
|
/** A network device setting operation */
|
203
|
224
|
struct netdev_setting_operation {
|
204
|
225
|
/** Setting */
|
|
@@ -229,6 +250,7 @@ static struct netdev_setting_operation netdev_setting_operations[] = {
|
229
|
250
|
{ &busloc_setting, NULL, netdev_fetch_busloc },
|
230
|
251
|
{ &busid_setting, NULL, netdev_fetch_busid },
|
231
|
252
|
{ &chip_setting, NULL, netdev_fetch_chip },
|
|
253
|
+ { &ifname_setting, NULL, netdev_fetch_ifname },
|
232
|
254
|
};
|
233
|
255
|
|
234
|
256
|
/**
|