FM-WAN Coex: Dynamic configuring of RATs.
Configure RATs needed for enabling LPF dynamically.
Change-Id: Ia2ab914d3d254cf0d4e7197d5e36624a49288d8e
diff --git a/qcom/fmradio/FmReceiver.java b/qcom/fmradio/FmReceiver.java
index 9beecd7..24d3162 100644
--- a/qcom/fmradio/FmReceiver.java
+++ b/qcom/fmradio/FmReceiver.java
@@ -58,11 +58,11 @@
static final int DISABLE_LPF = 0;
private static final String TAG = "FMRadio";
- private static boolean mEnableLpfGsm = false;
- private static boolean mEnableLpfCdma = false;
- private static boolean mEnableLpfWcdma = false;
- private static boolean mEnableLpfLte = false;
- private static boolean mEnableLpfScdma = false;
+ private static int mEnableLpfGsm = 0x1;
+ private static int mEnableLpfCdma = 0x2;
+ private static int mEnableLpfWcdma = 0x4;
+ private static int mEnableLpfLte = 0x8;
+ private static int mEnableLpfScdma = 0x10;
/**
* Search (seek/scan/searchlist) by decrementing the frequency
@@ -2891,11 +2891,13 @@
return;
}
public void FMcontrolLowPassFilter(int state, int net_type, int enable) {
+ int RatConf = SystemProperties.getInt("persist.fm_wan.ratconf", 0);
+ Log.v (TAG, "FMcontrolLowPassFilter " + RatConf);
switch (net_type)
{
case TelephonyManager.NETWORK_TYPE_CDMA:
if ((state == TelephonyManager.DATA_CONNECTED) &&
- mEnableLpfCdma == true) {
+ ((mEnableLpfCdma & RatConf) == mEnableLpfCdma)) {
Log.d (TAG, "enabling LPF for net_type: " + Integer.toString(net_type));
mControl.enableLPF(sFd, enable);
} else {
@@ -2904,7 +2906,7 @@
break;
case TelephonyManager.NETWORK_TYPE_LTE:
if ((state == TelephonyManager.DATA_CONNECTED) &&
- mEnableLpfLte == true) {
+ ((mEnableLpfLte & RatConf) == mEnableLpfLte)) {
Log.d (TAG, "enabling LPF for net_type: " + Integer.toString(net_type));
mControl.enableLPF(sFd, enable);
} else {
@@ -2913,7 +2915,7 @@
break;
case TelephonyManager.NETWORK_TYPE_GSM:
if ((state == TelephonyManager.DATA_CONNECTED) &&
- mEnableLpfGsm == true) {
+ ((mEnableLpfGsm & RatConf) == mEnableLpfGsm)) {
Log.d (TAG, "enabling LPF for net_type: " + Integer.toString(net_type));
mControl.enableLPF(sFd, enable);
} else {
@@ -2922,7 +2924,7 @@
break;
case TelephonyManager.NETWORK_TYPE_TD_SCDMA:
if ((state == TelephonyManager.DATA_CONNECTED) &&
- mEnableLpfScdma == true) {
+ ((mEnableLpfScdma & RatConf) == mEnableLpfScdma)) {
Log.d (TAG, "enabling LPF for net_type: " + Integer.toString(net_type));
mControl.enableLPF(sFd, enable);
} else {