summaryrefslogtreecommitdiff
path: root/drivers/staging/winbond/mds.c
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2010-11-28 21:00:05 (GMT)
committerGreg Kroah-Hartman <gregkh@suse.de>2010-12-01 22:45:46 (GMT)
commit01b5ceeca5aa45735a987420c83228a9778a791f (patch)
treea0a65706a3c76facd3bee1b5ee281836c9b41db9 /drivers/staging/winbond/mds.c
parent37b0544a4a455609cbf25fa56441a6f1221dec85 (diff)
downloadlinux-01b5ceeca5aa45735a987420c83228a9778a791f.tar.xz
Staging: w35und: Merge mlmetxrx.c to mds.c
This patch merges mlmetxrx.c to mds.c because it's small and the functions are only used in mto.c. Cc: Pavel Machek <pavel@ucw.cz> Signed-off-by: Pekka Enberg <penberg@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/winbond/mds.c')
-rw-r--r--drivers/staging/winbond/mds.c39
1 files changed, 38 insertions, 1 deletions
diff --git a/drivers/staging/winbond/mds.c b/drivers/staging/winbond/mds.c
index 0daabdc..00e9756 100644
--- a/drivers/staging/winbond/mds.c
+++ b/drivers/staging/winbond/mds.c
@@ -1,5 +1,4 @@
#include "mds_f.h"
-#include "mlmetxrx_f.h"
#include "mto.h"
#include "wbhal.h"
#include "wblinux_f.h"
@@ -397,6 +396,44 @@ static void Mds_HeaderCopy(struct wbsoft_priv *adapter, struct wb35_descriptor *
}
+static void MLME_GetNextPacket(struct wbsoft_priv *adapter, struct wb35_descriptor *desc)
+{
+ desc->InternalUsed = desc->buffer_start_index + desc->buffer_number;
+ desc->InternalUsed %= MAX_DESCRIPTOR_BUFFER_INDEX;
+ desc->buffer_address[desc->InternalUsed] = adapter->sMlmeFrame.pMMPDU;
+ desc->buffer_size[desc->InternalUsed] = adapter->sMlmeFrame.len;
+ desc->buffer_total_size += adapter->sMlmeFrame.len;
+ desc->buffer_number++;
+ desc->Type = adapter->sMlmeFrame.DataType;
+}
+
+static void MLMEfreeMMPDUBuffer(struct wbsoft_priv *adapter, s8 *pData)
+{
+ int i;
+
+ /* Reclaim the data buffer */
+ for (i = 0; i < MAX_NUM_TX_MMPDU; i++) {
+ if (pData == (s8 *)&(adapter->sMlmeFrame.TxMMPDU[i]))
+ break;
+ }
+ if (adapter->sMlmeFrame.TxMMPDUInUse[i])
+ adapter->sMlmeFrame.TxMMPDUInUse[i] = false;
+ else {
+ /* Something wrong
+ PD43 Add debug code here??? */
+ }
+}
+
+static void MLME_SendComplete(struct wbsoft_priv *adapter, u8 PacketID, unsigned char SendOK)
+{
+ /* Reclaim the data buffer */
+ adapter->sMlmeFrame.len = 0;
+ MLMEfreeMMPDUBuffer(adapter, adapter->sMlmeFrame.pMMPDU);
+
+ /* Return resource */
+ adapter->sMlmeFrame.IsInUsed = PACKET_FREE_TO_USE;
+}
+
void
Mds_Tx(struct wbsoft_priv *adapter)
{