mac80211: rt2x00: improve eeprom_file property handling
[openwrt/staging/lynxis/omap.git] / package / kernel / mac80211 / patches / 603-rt2x00-introduce-rt2x00eeprom.patch
index 8ae5da38797df39f8bc13e3eace5f2f9496cde9c..0b191e636b25160012836e7d96e96d6e0723a6ba 100644 (file)
  
 --- /dev/null
 +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00eeprom.c
-@@ -0,0 +1,111 @@
+@@ -0,0 +1,105 @@
 +/*
 +      Copyright (C) 2004 - 2009 Ivo van Doorn <IvDoorn@gmail.com>
 +      Copyright (C) 2004 - 2009 Gertjan van Wingerde <gwingerde@gmail.com>
 +      int retval;
 +
 +      ee_name = rt2x00lib_get_eeprom_file_name(rt2x00dev);
-+      if (!ee_name) {
-+              rt2x00_err(rt2x00dev,
-+                         "Invalid EEPROM filename.\n"
-+                         "Please file bug report to %s.\n", DRV_PROJECT);
++      if (!ee_name && test_bit(REQUIRE_EEPROM_FILE, &rt2x00dev->cap_flags)) {
++              rt2x00_err(rt2x00dev, "Required EEPROM name is missing.");
 +              return -EINVAL;
 +      }
 +
++      if (!ee_name)
++              return 0;
++
 +      rt2x00_info(rt2x00dev, "Loading EEPROM data from '%s'.\n", ee_name);
 +
 +      retval = request_firmware(&ee, ee_name, rt2x00dev->dev);
 +{
 +      int retval;
 +
-+      if (!rt2x00lib_get_eeprom_file_name(rt2x00dev))
-+              return 0;
-+
-+      set_bit(REQUIRE_EEPROM_FILE, &rt2x00dev->cap_flags);
-+
-+      if (!rt2x00dev->eeprom_file) {
-+              retval = rt2x00lib_request_eeprom_file(rt2x00dev);
-+              if (retval)
-+                      return retval;
-+      }
++      retval = rt2x00lib_request_eeprom_file(rt2x00dev);
++      if (retval)
++              return retval;
 +
 +      return 0;
 +}