rpcd: iwinfo plugin fixes
[openwrt.git] / package / kernel / mac80211 / patches / 600-0004-rt2x00-rt2800lib-fix-beacon-generation-on-RT3593.patch
index 38dbb43..985a3b9 100644 (file)
@@ -23,13 +23,13 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
 ---
 Changes since v1: ---
 ---
- drivers/net/wireless/rt2x00/rt2800.h    |    3 +++
- drivers/net/wireless/rt2x00/rt2800lib.c |   44 +++++++++++++++++++++++++++++++
+ drivers/net/wireless/ralink/rt2x00/rt2800.h    |    3 +++
+ drivers/net/wireless/ralink/rt2x00/rt2800lib.c |   44 +++++++++++++++++++++++++++++++
  2 files changed, 47 insertions(+)
 
---- a/drivers/net/wireless/rt2x00/rt2800.h
-+++ b/drivers/net/wireless/rt2x00/rt2800.h
-@@ -572,6 +572,7 @@
+--- a/drivers/net/wireless/ralink/rt2x00/rt2800.h
++++ b/drivers/net/wireless/ralink/rt2x00/rt2800.h
+@@ -574,6 +574,7 @@
  #define PBF_SYS_CTRL                  0x0400
  #define PBF_SYS_CTRL_READY            FIELD32(0x00000080)
  #define PBF_SYS_CTRL_HOST_RAM_WRITE   FIELD32(0x00010000)
@@ -37,7 +37,7 @@ Changes since v1: ---
  
  /*
   * HOST-MCU shared memory
-@@ -2024,6 +2025,8 @@ struct mac_iveiv_entry {
+@@ -2026,6 +2027,8 @@ struct mac_iveiv_entry {
          (((__index) < 6) ? (HW_BEACON_BASE4 + ((__index - 4) * 0x0200)) : \
          (HW_BEACON_BASE6 - ((__index - 6) * 0x0200))))
  
@@ -46,8 +46,8 @@ Changes since v1: ---
  #define BEACON_BASE_TO_OFFSET(_base)  (((_base) - 0x4000) / 64)
  
  /*
---- a/drivers/net/wireless/rt2x00/rt2800lib.c
-+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
+--- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
++++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
 @@ -82,6 +82,39 @@ static inline bool rt2800_is_305x_soc(st
        return false;
  }
@@ -98,7 +98,7 @@ Changes since v1: ---
        return HW_BEACON_BASE(index);
  }
  
-@@ -1012,8 +1048,12 @@ void rt2800_write_beacon(struct queue_en
+@@ -1046,8 +1082,12 @@ void rt2800_write_beacon(struct queue_en
        beacon_base = rt2800_hw_beacon_base(rt2x00dev, entry->entry_idx);
  
        rt2800_shared_mem_lock(rt2x00dev);
@@ -109,9 +109,9 @@ Changes since v1: ---
 +      rt2800_deselect_beacon_mem(rt2x00dev);
 +
        rt2800_shared_mem_unlock(rt2x00dev);
+       __set_bit(ENTRY_BCN_ENABLED, &entry->flags);
  
-       /*
-@@ -1041,6 +1081,8 @@ static inline void rt2800_clear_beacon_r
+@@ -1080,6 +1120,8 @@ static inline void rt2800_clear_beacon_r
  
        rt2800_shared_mem_lock(rt2x00dev);
  
@@ -120,7 +120,7 @@ Changes since v1: ---
        /*
         * For the Beacon base registers we only need to clear
         * the whole TXWI which (when set to 0) will invalidate
-@@ -1049,6 +1091,8 @@ static inline void rt2800_clear_beacon_r
+@@ -1088,6 +1130,8 @@ static inline void rt2800_clear_beacon_r
        for (i = 0; i < txwi_desc_size; i += sizeof(__le32))
                rt2800_register_write(rt2x00dev, beacon_base + i, 0);