| 
				
			 | 
			
			
				
				@@ -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
			 | 
			
			
				
				 /** 
			 |