OSDN Git Service

staging: vt6656: rf.c additional power.
authorMalcolm Priestley <tvboxspy@gmail.com>
Sat, 17 May 2014 08:50:18 +0000 (09:50 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 18 May 2014 16:58:27 +0000 (09:58 -0700)
commitf53d9f12c51ace9956d6c3ee7aa447f09e6cbfa4
treeda456f853f1cdfbe72c10126c38b51e6ace2dcd3
parente03e1e39b6d66c11d71c91a080b479fb432e3674
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>
drivers/staging/vt6656/rf.c
drivers/staging/vt6656/rf.h