blob: 666bc2dc55adf0594d72791ec73f9676b6a15374 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
--- a/drivers/net/wireless/rt2x00/rt2x00eeprom.c
+++ b/drivers/net/wireless/rt2x00/rt2x00eeprom.c
@@ -26,6 +26,7 @@
#include <linux/kernel.h>
#include <linux/module.h>
+#include <linux/of.h>
#include "rt2x00.h"
#include "rt2x00lib.h"
@@ -34,11 +35,19 @@ static const char *
rt2x00lib_get_eeprom_file_name(struct rt2x00_dev *rt2x00dev)
{
struct rt2x00_platform_data *pdata = rt2x00dev->dev->platform_data;
+ struct device_node *np;
+ char *eep;
if (pdata && pdata->eeprom_file_name)
return pdata->eeprom_file_name;
- return NULL
+#ifdef CONFIG_OF
+ np = rt2x00dev->dev->of_node;
+ if (np && of_property_read_string(np, "ralink,eeprom", &eep) == 0)
+ return eep;
+#endif
+
+ return NULL;
}
static int rt2x00lib_request_eeprom_file(struct rt2x00_dev *rt2x00dev)
|