summaryrefslogtreecommitdiffstats
path: root/service/java/com/android/server/wifi/ClientModeImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'service/java/com/android/server/wifi/ClientModeImpl.java')
-rw-r--r--service/java/com/android/server/wifi/ClientModeImpl.java27
1 files changed, 19 insertions, 8 deletions
diff --git a/service/java/com/android/server/wifi/ClientModeImpl.java b/service/java/com/android/server/wifi/ClientModeImpl.java
index 5cf909695..0468f5ac3 100644
--- a/service/java/com/android/server/wifi/ClientModeImpl.java
+++ b/service/java/com/android/server/wifi/ClientModeImpl.java
@@ -326,6 +326,8 @@ public class ClientModeImpl extends StateMachine {
private NetworkInfo mNetworkInfo;
private SupplicantStateTracker mSupplicantStateTracker;
+ private int mWifiLinkLayerStatsSupported = 4; // Temporary disable
+
// Indicates that framework is attempting to roam, set true on CMD_START_ROAM, set false when
// wifi connects or fails to connect
private boolean mIsAutoRoaming = false;
@@ -1265,15 +1267,20 @@ public class ClientModeImpl extends StateMachine {
loge("getWifiLinkLayerStats called without an interface");
return null;
}
+ WifiLinkLayerStats stats = null;
mLastLinkLayerStatsUpdate = mClock.getWallClockMillis();
- WifiLinkLayerStats stats = mWifiNative.getWifiLinkLayerStats(mInterfaceName);
- if (stats != null) {
- mOnTime = stats.on_time;
- mTxTime = stats.tx_time;
- mRxTime = stats.rx_time;
- mRunningBeaconCount = stats.beacon_rx;
- mWifiInfo.updatePacketRates(stats, mLastLinkLayerStatsUpdate);
- } else {
+ if (mWifiLinkLayerStatsSupported > 0) {
+ stats = mWifiNative.getWifiLinkLayerStats(mInterfaceName);
+ if (stats == null) {
+ mWifiLinkLayerStatsSupported -= 1;
+ } else {
+ mOnTime = stats.on_time;
+ mTxTime = stats.tx_time;
+ mRxTime = stats.rx_time;
+ mRunningBeaconCount = stats.beacon_rx;
+ mWifiInfo.updatePacketRates(stats, mLastLinkLayerStatsUpdate);
+ }
+ } else { // LinkLayerStats are broken or unsupported
long mTxPkts = mFacade.getTxPackets(mInterfaceName);
long mRxPkts = mFacade.getRxPackets(mInterfaceName);
mWifiInfo.updatePacketRates(mTxPkts, mRxPkts, mLastLinkLayerStatsUpdate);
@@ -3627,6 +3634,10 @@ public class ClientModeImpl extends StateMachine {
mTemporarilyDisconnectWifi = (message.arg1 == 1);
replyToMessage(message, WifiP2pServiceImpl.DISCONNECT_WIFI_RESPONSE);
break;
+ case WifiP2pServiceImpl.SET_MIRACAST_MODE:
+ if (mVerboseLoggingEnabled) logd("SET_MIRACAST_MODE: " + (int)message.arg1);
+ mWifiConnectivityManager.saveMiracastMode((int)message.arg1);
+ break;
/* Link configuration (IP address, DNS, ...) changes notified via netlink */
case CMD_UPDATE_LINKPROPERTIES:
updateLinkProperties((LinkProperties) message.obj);