summaryrefslogtreecommitdiffstats
path: root/drivers/staging/vt6656/card.c
diff options
context:
space:
mode:
authorMalcolm Priestley2014-07-07 00:19:48 +0200
committerGreg Kroah-Hartman2014-07-09 01:04:22 +0200
commit9fe109c153f6ffff4186dc7d0275e2a84df6b1e6 (patch)
tree84902ec0d50085fc72bce2e2a429d4f39355c282 /drivers/staging/vt6656/card.c
parentstaging: vt6656: vnt_set_keymode don't save pairwise key entry. (diff)
downloadkernel-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.c30
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;