diff options
author | Malcolm Priestley | 2014-07-07 00:19:48 +0200 |
---|---|---|
committer | Greg Kroah-Hartman | 2014-07-09 01:04:22 +0200 |
commit | 9fe109c153f6ffff4186dc7d0275e2a84df6b1e6 (patch) | |
tree | 84902ec0d50085fc72bce2e2a429d4f39355c282 /drivers/staging/vt6656/card.c | |
parent | staging: vt6656: vnt_set_keymode don't save pairwise key entry. (diff) | |
download | kernel-qcow2-linux-9fe109c153f6ffff4186dc7d0275e2a84df6b1e6.tar.gz kernel-qcow2-linux-9fe109c153f6ffff4186dc7d0275e2a84df6b1e6.tar.xz kernel-qcow2-linux-9fe109c153f6ffff4186dc7d0275e2a84df6b1e6.zip |
staging: vt6656: vnt_update_ifs vendor changes to uSIFS/uDIFS
The latest vendor code makes changes to uSIFS and uDIFS.
The orginal codes have been rearranged into a fall through switch
statement.
These reduce the time that device allows to TX packets and
improves throughput.
Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vt6656/card.c')
-rw-r--r-- | drivers/staging/vt6656/card.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/drivers/staging/vt6656/card.c b/drivers/staging/vt6656/card.c index a5f8df173135..ea06b637a328 100644 --- a/drivers/staging/vt6656/card.c +++ b/drivers/staging/vt6656/card.c @@ -408,6 +408,36 @@ void vnt_update_ifs(struct vnt_private *priv) priv->uCwMax = C_CWMAX; priv->uEIFS = C_EIFS; + switch (priv->byRFType) { + case RF_VT3226D0: + if (priv->byBBType != BB_TYPE_11B) { + priv->uSIFS -= 1; + priv->uDIFS -= 1; + break; + } + case RF_AIROHA7230: + case RF_AL2230: + case RF_AL2230S: + if (priv->byBBType != BB_TYPE_11B) + break; + case RF_RFMD2959: + case RF_VT3226: + case RF_VT3342A0: + priv->uSIFS -= 3; + priv->uDIFS -= 3; + break; + case RF_MAXIM2829: + if (priv->byBBType == BB_TYPE_11A) { + priv->uSIFS -= 5; + priv->uDIFS -= 5; + } else { + priv->uSIFS -= 2; + priv->uDIFS -= 2; + } + + break; + } + data[0] = (u8)priv->uSIFS; data[1] = (u8)priv->uDIFS; data[2] = (u8)priv->uEIFS; |