aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/vt6655/channel.c
diff options
context:
space:
mode:
authorMalcolm Priestley <tvboxspy@gmail.com>2014-12-21 12:56:35 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-01-12 19:49:47 -0800
commit3a9dda79257589fe1ab10d0ce96b22e252354c6b (patch)
treed4fc8f2397b7d2a05f5e708258944a177c5482c8 /drivers/staging/vt6655/channel.c
parentstaging: vt6655: vnt_tx_packet Fix corrupted tx packets. (diff)
downloadlinux-dev-3a9dda79257589fe1ab10d0ce96b22e252354c6b.tar.xz
linux-dev-3a9dda79257589fe1ab10d0ce96b22e252354c6b.zip
staging: vt6655: Fix loss of distant/weak access points on channel change.
If the asssocated access point is strong byBBVGACurrent will be adjusted accordingly. Users will nolonger see distant access points without taking down interface. When changing channel reset byBBVGACurrent back to pDevice->abyBBVGA[0] for max sensitivity. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vt6655/channel.c')
-rw-r--r--drivers/staging/vt6655/channel.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/staging/vt6655/channel.c b/drivers/staging/vt6655/channel.c
index c8f739dd346e..70f870541f92 100644
--- a/drivers/staging/vt6655/channel.c
+++ b/drivers/staging/vt6655/channel.c
@@ -182,6 +182,14 @@ bool set_channel(void *pDeviceHandler, unsigned int uConnectionChannel)
if (pDevice->byCurrentCh == uConnectionChannel)
return bResult;
+ /* Set VGA to max sensitivity */
+ if (pDevice->bUpdateBBVGA &&
+ pDevice->byBBVGACurrent != pDevice->abyBBVGA[0]) {
+ pDevice->byBBVGACurrent = pDevice->abyBBVGA[0];
+
+ BBvSetVGAGainOffset(pDevice, pDevice->byBBVGACurrent);
+ }
+
/* clear NAV */
MACvRegBitsOn(pDevice->PortOffset, MAC_REG_MACCR, MACCR_CLRNAV);