#13951: Revision r36939 breaks support for RT5370 (rt2800usb) in HG556a 
(brcm6358)
-------------------------+-------------------------------------------------
  Reporter:  openwrt@…   |      Owner:  developers
      Type:  defect      |     Status:  reopened
  Priority:  normal      |  Milestone:  Chaos Calmer (trunk)
 Component:  kernel      |    Version:  Trunk
Resolution:              |   Keywords:  r36939 RT5370 rt2800usb HG556a
                         |  brcm6358
-------------------------+-------------------------------------------------

Comment (by lsoltero):

 fixed.

 910-01-add-support-for-mt7620.patch

 modified rt2800_get_txwi_rxwi_size() to add a case statement for the
 RT5390.  The problem is that the logic added to the case tested for the
 7620 but failed to set the values for txwi_size and rxwi_size when the
 5390 was not associated with the 7620.  So the full function should look
 like

 void rt2800_get_txwi_rxwi_size(struct rt2x00_dev *rt2x00dev,
                                unsigned short *txwi_size,
                                unsigned short *rxwi_size)
 {
         switch (rt2x00dev->chip.rt) {
         case RT3593:
         case RT3883:
                 *txwi_size = TXWI_DESC_SIZE_4WORDS;
                 *rxwi_size = RXWI_DESC_SIZE_5WORDS;
                 break;

         case RT5390:
                 if ( rt2x00dev->chip.rf == RF7620 ) {
                         *txwi_size = TXWI_DESC_SIZE_5WORDS;
                         *rxwi_size = RXWI_DESC_SIZE_6WORDS;
                 } else {
                    // else clause missing in original patch.
                   *txwi_size = TXWI_DESC_SIZE_4WORDS;
                   *rxwi_size = RXWI_DESC_SIZE_4WORDS;
                 }
                 break;

         case RT5592:
                 *txwi_size = TXWI_DESC_SIZE_5WORDS;
                 *rxwi_size = RXWI_DESC_SIZE_6WORDS;
                 break;

         default:
                 *txwi_size = TXWI_DESC_SIZE_4WORDS;
                 *rxwi_size = RXWI_DESC_SIZE_4WORDS;
                 break;
         }
 }


 here is a patch that fixes the problem

 package/kernel/mac80211/patches$ cat 910-02-fix-5370-in-add-support-for-
 mt7620.patch
 --- a/drivers/net/wireless/rt2x00/rt2800lib.c
 +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
 @@ -633,6 +633,9 @@ void rt2800_get_txwi_rxwi_size(struct rt
                 if ( rt2x00dev->chip.rf == RF7620 ) {
                         *txwi_size = TXWI_DESC_SIZE_5WORDS;
                         *rxwi_size = RXWI_DESC_SIZE_6WORDS;
 +               } else {
 +                 *txwi_size = TXWI_DESC_SIZE_4WORDS;
 +                 *rxwi_size = RXWI_DESC_SIZE_4WORDS;
                 }
                 break;

--
Ticket URL: <https://dev.openwrt.org/ticket/13951#comment:17>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets

Reply via email to