Merge tag 'staging-4.0-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

Pull staging driver fixes from Greg KH:
"Here are four small staging driver fixes, all for the vt6656 and
vt6655 drivers, that resolve some reported issues with them.

All of these patches have been in linux next for a while"

* tag 'staging-4.0-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
vt6655: Fix late setting of byRFType.
vt6655: RFbSetPower fix missing rate RATE_12M
staging: vt6656: vnt_rf_setpower: fix missing rate RATE_12M
staging: vt6655: vnt_tx_packet fix dma_idx selection.

Changed files
+17 -17
drivers
staging
vt6655
vt6656
+15 -17
drivers/staging/vt6655/device_main.c
··· 330 330 /* zonetype initial */ 331 331 pDevice->byOriginalZonetype = pDevice->abyEEPROM[EEP_OFS_ZONETYPE]; 332 332 333 - /* Get RFType */ 334 - pDevice->byRFType = SROMbyReadEmbedded(pDevice->PortOffset, EEP_OFS_RFTYPE); 335 - 336 - /* force change RevID for VT3253 emu */ 337 - if ((pDevice->byRFType & RF_EMU) != 0) 338 - pDevice->byRevId = 0x80; 339 - 340 - pDevice->byRFType &= RF_MASK; 341 - pr_debug("pDevice->byRFType = %x\n", pDevice->byRFType); 342 - 343 333 if (!pDevice->bZoneRegExist) 344 334 pDevice->byZoneType = pDevice->abyEEPROM[EEP_OFS_ZONETYPE]; 345 335 ··· 1177 1187 { 1178 1188 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; 1179 1189 PSTxDesc head_td; 1180 - u32 dma_idx = TYPE_AC0DMA; 1190 + u32 dma_idx; 1181 1191 unsigned long flags; 1182 1192 1183 1193 spin_lock_irqsave(&priv->lock, flags); 1184 1194 1185 - if (!ieee80211_is_data(hdr->frame_control)) 1195 + if (ieee80211_is_data(hdr->frame_control)) 1196 + dma_idx = TYPE_AC0DMA; 1197 + else 1186 1198 dma_idx = TYPE_TXDMA0; 1187 1199 1188 1200 if (AVAIL_TD(priv, dma_idx) < 1) { ··· 1197 1205 head_td->m_td1TD1.byTCR = 0; 1198 1206 1199 1207 head_td->pTDInfo->skb = skb; 1208 + 1209 + if (dma_idx == TYPE_AC0DMA) 1210 + head_td->pTDInfo->byFlags = TD_FLAGS_NETIF_SKB; 1200 1211 1201 1212 priv->iTDUsed[dma_idx]++; 1202 1213 ··· 1229 1234 1230 1235 head_td->buff_addr = cpu_to_le32(head_td->pTDInfo->skb_dma); 1231 1236 1232 - if (dma_idx == TYPE_AC0DMA) { 1233 - head_td->pTDInfo->byFlags = TD_FLAGS_NETIF_SKB; 1234 - 1237 + if (head_td->pTDInfo->byFlags & TD_FLAGS_NETIF_SKB) 1235 1238 MACvTransmitAC0(priv->PortOffset); 1236 - } else { 1239 + else 1237 1240 MACvTransmit0(priv->PortOffset); 1238 - } 1239 1241 1240 1242 spin_unlock_irqrestore(&priv->lock, flags); 1241 1243 ··· 1769 1777 /* initial to reload eeprom */ 1770 1778 MACvInitialize(priv->PortOffset); 1771 1779 MACvReadEtherAddress(priv->PortOffset, priv->abyCurrentNetAddr); 1780 + 1781 + /* Get RFType */ 1782 + priv->byRFType = SROMbyReadEmbedded(priv->PortOffset, EEP_OFS_RFTYPE); 1783 + priv->byRFType &= RF_MASK; 1784 + 1785 + dev_dbg(&pcid->dev, "RF Type = %x\n", priv->byRFType); 1772 1786 1773 1787 device_get_options(priv); 1774 1788 device_set_options(priv);
+1
drivers/staging/vt6655/rf.c
··· 794 794 break; 795 795 case RATE_6M: 796 796 case RATE_9M: 797 + case RATE_12M: 797 798 case RATE_18M: 798 799 byPwr = priv->abyOFDMPwrTbl[uCH]; 799 800 if (priv->byRFType == RF_UW2452)
+1
drivers/staging/vt6656/rf.c
··· 640 640 break; 641 641 case RATE_6M: 642 642 case RATE_9M: 643 + case RATE_12M: 643 644 case RATE_18M: 644 645 case RATE_24M: 645 646 case RATE_36M: