From e09b41010ba33a20a87472ee821fa407a5b8da36 Mon Sep 17 00:00:00 2001 From: José Pekkarinen Date: Mon, 11 Apr 2016 10:41:07 +0300 Subject: These changes are the raw update to linux-4.4.6-rt14. Kernel sources are taken from kernel.org, and rt patch from the rt wiki download page. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit During the rebasing, the following patch collided: Force tick interrupt and get rid of softirq magic(I70131fb85). Collisions have been removed because its logic was found on the source already. Change-Id: I7f57a4081d9deaa0d9ccfc41a6c8daccdee3b769 Signed-off-by: José Pekkarinen --- kernel/drivers/staging/vt6655/rxtx.c | 39 +++++++++++++++++------------------- 1 file changed, 18 insertions(+), 21 deletions(-) (limited to 'kernel/drivers/staging/vt6655/rxtx.c') diff --git a/kernel/drivers/staging/vt6655/rxtx.c b/kernel/drivers/staging/vt6655/rxtx.c index 74687761b..b668db6a4 100644 --- a/kernel/drivers/staging/vt6655/rxtx.c +++ b/kernel/drivers/staging/vt6655/rxtx.c @@ -78,7 +78,7 @@ static const unsigned short wFB_Opt0[2][5] = { }; static const unsigned short wFB_Opt1[2][5] = { {RATE_12M, RATE_18M, RATE_24M, RATE_24M, RATE_36M}, /* fallback_rate0 */ - {RATE_6M , RATE_6M, RATE_12M, RATE_12M, RATE_18M}, /* fallback_rate1 */ + {RATE_6M, RATE_6M, RATE_12M, RATE_12M, RATE_18M}, /* fallback_rate1 */ }; #define RTSDUR_BB 0 @@ -130,7 +130,7 @@ s_vGenerateTxParameter( static unsigned int s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, unsigned char *pbyTxBufferAddr, - unsigned int uDMAIdx, PSTxDesc pHeadTD, + unsigned int uDMAIdx, struct vnt_tx_desc *pHeadTD, unsigned int uNodeIndex); static @@ -387,7 +387,6 @@ s_uGetDataDuration( break; } - ASSERT(false); return 0; } @@ -567,7 +566,7 @@ s_uFillDataHead( return buf->duration_a; } /* if (byFBOption == AUTO_FB_NONE) */ } else if (byPktType == PK_TYPE_11A) { - if ((byFBOption != AUTO_FB_NONE)) { + if (byFBOption != AUTO_FB_NONE) { /* Auto Fallback */ struct vnt_tx_datahead_a_fb *buf = pTxDataHead; /* Get SignalField, ServiceField & Length */ @@ -656,7 +655,7 @@ s_vFillRTSHead( uRTSFrameLen -= 4; } - /* Note: So far RTSHead dosen't appear in ATIM & Beacom DMA, so we don't need to take them into account. + /* Note: So far RTSHead doesn't appear in ATIM & Beacom DMA, so we don't need to take them into account. Otherwise, we need to modify codes for them. */ if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) { if (byFBOption == AUTO_FB_NONE) { @@ -1009,7 +1008,7 @@ s_vGenerateTxParameter( buf->rrv_time = vnt_rxtx_rsvtime_le16(pDevice, PK_TYPE_11A, cbFrameSize, wCurrentRate, bNeedACK); } } else if (byPktType == PK_TYPE_11B) { - if ((pvRTS != NULL)) {/* RTS_need, non PCF mode */ + if (pvRTS != NULL) {/* RTS_need, non PCF mode */ struct vnt_rrv_time_ab *buf = pvRrvTime; buf->rts_rrv_time = s_uGetRTSCTSRsvTime(pDevice, 0, byPktType, cbFrameSize, wCurrentRate); @@ -1028,10 +1027,10 @@ s_vGenerateTxParameter( static unsigned int s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, unsigned char *pbyTxBufferAddr, - unsigned int uDMAIdx, PSTxDesc pHeadTD, + unsigned int uDMAIdx, struct vnt_tx_desc *pHeadTD, unsigned int is_pspoll) { - PDEVICE_TD_INFO td_info = pHeadTD->pTDInfo; + struct vnt_td_info *td_info = pHeadTD->td_info; struct sk_buff *skb = td_info->skb; struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; @@ -1048,7 +1047,7 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, unsigned int cbReqCount = 0; bool bNeedACK = (bool)(fifo_ctl & FIFOCTL_NEEDACK); bool bRTS = (bool)(fifo_ctl & FIFOCTL_RTS); - PSTxDesc ptdCurr; + struct vnt_tx_desc *ptdCurr; unsigned int cbHeaderLength = 0; void *pvRrvTime; struct vnt_mic_hdr *pMICHDR; @@ -1089,11 +1088,11 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, /* Set RrvTime/RTS/CTS Buffer */ - wTxBufSize = sizeof(STxBufHead); + wTxBufSize = sizeof(struct vnt_tx_fifo_head); if (byPktType == PK_TYPE_11GB || byPktType == PK_TYPE_11GA) {/* 802.11g packet */ if (byFBOption == AUTO_FB_NONE) { - if (bRTS == true) {/* RTS_need */ + if (bRTS) {/* RTS_need */ pvRrvTime = (void *)(pbyTxBufferAddr + wTxBufSize); pMICHDR = (struct vnt_mic_hdr *)(pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_rts)); pvRTS = (void *)(pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_rts) + cbMICHDR); @@ -1115,7 +1114,7 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, } } else { /* Auto Fall Back */ - if (bRTS == true) {/* RTS_need */ + if (bRTS) {/* RTS_need */ pvRrvTime = (void *)(pbyTxBufferAddr + wTxBufSize); pMICHDR = (struct vnt_mic_hdr *) (pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_rts)); pvRTS = (void *) (pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_rts) + cbMICHDR); @@ -1138,7 +1137,7 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, } else {/* 802.11a/b packet */ if (byFBOption == AUTO_FB_NONE) { - if (bRTS == true) { + if (bRTS) { pvRrvTime = (void *)(pbyTxBufferAddr + wTxBufSize); pMICHDR = (struct vnt_mic_hdr *) (pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_ab)); pvRTS = (void *)(pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_ab) + cbMICHDR); @@ -1158,7 +1157,7 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, } } else { /* Auto Fall Back */ - if (bRTS == true) { /* RTS_need */ + if (bRTS) { /* RTS_need */ pvRrvTime = (void *)(pbyTxBufferAddr + wTxBufSize); pMICHDR = (struct vnt_mic_hdr *) (pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_ab)); pvRTS = (void *)(pbyTxBufferAddr + wTxBufSize + sizeof(struct vnt_rrv_time_ab) + cbMICHDR); @@ -1193,17 +1192,15 @@ s_cbFillTxBufHead(struct vnt_private *pDevice, unsigned char byPktType, hdr->duration_id = uDuration; cbReqCount = cbHeaderLength + uPadding + skb->len; - pbyBuffer = (unsigned char *)pHeadTD->pTDInfo->buf; + pbyBuffer = (unsigned char *)pHeadTD->td_info->buf; uLength = cbHeaderLength + uPadding; /* Copy the Packet into a tx Buffer */ memcpy((pbyBuffer + uLength), skb->data, skb->len); - ptdCurr = (PSTxDesc)pHeadTD; + ptdCurr = pHeadTD; - ptdCurr->pTDInfo->dwReqCount = cbReqCount; - ptdCurr->pTDInfo->dwHeaderLength = cbHeaderLength; - ptdCurr->pTDInfo->skb_dma = ptdCurr->pTDInfo->buf_dma; + ptdCurr->td_info->req_count = (u16)cbReqCount; return cbHeaderLength; } @@ -1276,9 +1273,9 @@ static void vnt_fill_txkey(struct ieee80211_hdr *hdr, u8 *key_buffer, } int vnt_generate_fifo_header(struct vnt_private *priv, u32 dma_idx, - PSTxDesc head_td, struct sk_buff *skb) + struct vnt_tx_desc *head_td, struct sk_buff *skb) { - PDEVICE_TD_INFO td_info = head_td->pTDInfo; + struct vnt_td_info *td_info = head_td->td_info; struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); struct ieee80211_tx_rate *tx_rate = &info->control.rates[0]; struct ieee80211_rate *rate; -- cgit 1.2.3-korg