diff options
author | Malcolm Priestley <tvboxspy@gmail.com> | 2014-05-17 09:50:18 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-18 09:58:27 -0700 |
commit | f53d9f12c51ace9956d6c3ee7aa447f09e6cbfa4 (patch) | |
tree | da456f853f1cdfbe72c10126c38b51e6ace2dcd3 /drivers/staging/vt6656/rf.h | |
parent | e03e1e39b6d66c11d71c91a080b479fb432e3674 (diff) | |
download | linux-f53d9f12c51ace9956d6c3ee7aa447f09e6cbfa4.tar.bz2 |
staging: vt6656: rf.c additional power.
Provides extra power on weak RSSI.
The values orginate from the vendors driver.
It is applied later in RFbRawSetPower to simplify and check that it doesn't
exceed the max power.
Vendor driver VT6656_Linux_src_v1.21.03_x86_11.04.zip
http://www.viaembedded.com/servlet/downloadSvl?id=1890&download_file_id=14704
This is GPL-licensed code.
vendors code
...
if (pDevice->byRFType == RF_VT3226D0) {
if (lRSSI == 0){
lAdditionalPower = 7;
}
else if ((lRSSI < -60) && (lRSSI >= -65)){
lAdditionalPower = 5;
//lAdditionalPower = 9;
}
else if ((lRSSI < -65) && (lRSSI >= -70)){
lAdditionalPower = 7;
//lAdditionalPower = 9;
}
else if ((lRSSI < -70) && (lRSSI >= -80)){
lAdditionalPower = 9;
}
else if (lRSSI < -80) {
lAdditionalPower = 9;
}
}
else {
if (lRSSI == 0){
lAdditionalPower = 7;
}
else if ((lRSSI < -70) && (lRSSI >= -75)){
lAdditionalPower = 5;
}
else if ((lRSSI < -75) && (lRSSI >= -80)){
lAdditionalPower = 7;
}
else if (lRSSI < -80) {
lAdditionalPower = 9;
}
}
...
Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vt6656/rf.h')
-rw-r--r-- | drivers/staging/vt6656/rf.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/staging/vt6656/rf.h b/drivers/staging/vt6656/rf.h index de5c613b4ef9..e9a01fee4127 100644 --- a/drivers/staging/vt6656/rf.h +++ b/drivers/staging/vt6656/rf.h @@ -53,6 +53,8 @@ #define RF_EMU 0x80 #define RF_MASK 0x7F +#define VNT_RF_MAX_POWER 0x3f + extern const u8 RFaby11aChannelIndex[200]; int IFRFbWriteEmbedded(struct vnt_private *, u32 dwData); |