Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 03f3cb08 authored by Dianne Hackborn's avatar Dianne Hackborn
Browse files

resolved conflicts for merge of 1f377298 to master

Change-Id: I0d92abae3a86792b47777f795143acc0489adfe4
parents 511f66d3 1f377298
Loading
Loading
Loading
Loading
+16 −16
Original line number Diff line number Diff line
@@ -56,9 +56,9 @@ public abstract class BatteryStats implements Parcelable {
    public static final int SENSOR = 3;
    
    /**
     * A constant indicating a a wifi turn on timer
     * A constant indicating a a wifi running timer
     */
    public static final int WIFI_TURNED_ON = 4;
    public static final int WIFI_RUNNING = 4;
    
    /**
     * A constant indicating a full wifi lock timer
@@ -249,8 +249,8 @@ public abstract class BatteryStats implements Parcelable {
         */
        public abstract long getTcpBytesSent(int which);
        
        public abstract void noteWifiTurnedOnLocked();
        public abstract void noteWifiTurnedOffLocked();
        public abstract void noteWifiRunningLocked();
        public abstract void noteWifiStoppedLocked();
        public abstract void noteFullWifiLockAcquiredLocked();
        public abstract void noteFullWifiLockReleasedLocked();
        public abstract void noteScanWifiLockAcquiredLocked();
@@ -261,7 +261,7 @@ public abstract class BatteryStats implements Parcelable {
        public abstract void noteAudioTurnedOffLocked();
        public abstract void noteVideoTurnedOnLocked();
        public abstract void noteVideoTurnedOffLocked();
        public abstract long getWifiTurnedOnTime(long batteryRealtime, int which);
        public abstract long getWifiRunningTime(long batteryRealtime, int which);
        public abstract long getFullWifiLockTime(long batteryRealtime, int which);
        public abstract long getScanWifiLockTime(long batteryRealtime, int which);
        public abstract long getWifiMulticastTime(long batteryRealtime,
@@ -701,7 +701,7 @@ public abstract class BatteryStats implements Parcelable {
     *
     * {@hide}
     */
    public abstract long getWifiRunningTime(long batteryRealtime, int which);
    public abstract long getGlobalWifiRunningTime(long batteryRealtime, int which);

    /**
     * Returns the time in microseconds that bluetooth has been on while the device was
@@ -977,7 +977,7 @@ public abstract class BatteryStats implements Parcelable {
        final long screenOnTime = getScreenOnTime(batteryRealtime, which);
        final long phoneOnTime = getPhoneOnTime(batteryRealtime, which);
        final long wifiOnTime = getWifiOnTime(batteryRealtime, which);
        final long wifiRunningTime = getWifiRunningTime(batteryRealtime, which);
        final long wifiRunningTime = getGlobalWifiRunningTime(batteryRealtime, which);
        final long bluetoothOnTime = getBluetoothOnTime(batteryRealtime, which);
       
        StringBuilder sb = new StringBuilder(128);
@@ -1091,14 +1091,14 @@ public abstract class BatteryStats implements Parcelable {
            long tx = u.getTcpBytesSent(which);
            long fullWifiLockOnTime = u.getFullWifiLockTime(batteryRealtime, which);
            long scanWifiLockOnTime = u.getScanWifiLockTime(batteryRealtime, which);
            long wifiTurnedOnTime = u.getWifiTurnedOnTime(batteryRealtime, which);
            long uidWifiRunningTime = u.getWifiRunningTime(batteryRealtime, which);
            
            if (rx > 0 || tx > 0) dumpLine(pw, uid, category, NETWORK_DATA, rx, tx);
            
            if (fullWifiLockOnTime != 0 || scanWifiLockOnTime != 0
                    || wifiTurnedOnTime != 0) {
                    || uidWifiRunningTime != 0) {
                dumpLine(pw, uid, category, WIFI_LOCK_DATA, 
                        fullWifiLockOnTime, scanWifiLockOnTime, wifiTurnedOnTime);
                        fullWifiLockOnTime, scanWifiLockOnTime, uidWifiRunningTime);
            }

            if (u.hasUserActivity()) {
@@ -1240,7 +1240,7 @@ public abstract class BatteryStats implements Parcelable {
        
        final long screenOnTime = getScreenOnTime(batteryRealtime, which);
        final long phoneOnTime = getPhoneOnTime(batteryRealtime, which);
        final long wifiRunningTime = getWifiRunningTime(batteryRealtime, which);
        final long wifiRunningTime = getGlobalWifiRunningTime(batteryRealtime, which);
        final long wifiOnTime = getWifiOnTime(batteryRealtime, which);
        final long bluetoothOnTime = getBluetoothOnTime(batteryRealtime, which);
        sb.setLength(0);
@@ -1449,7 +1449,7 @@ public abstract class BatteryStats implements Parcelable {
            long tcpSent = u.getTcpBytesSent(which);
            long fullWifiLockOnTime = u.getFullWifiLockTime(batteryRealtime, which);
            long scanWifiLockOnTime = u.getScanWifiLockTime(batteryRealtime, which);
            long wifiTurnedOnTime = u.getWifiTurnedOnTime(batteryRealtime, which);
            long uidWifiRunningTime = u.getWifiRunningTime(batteryRealtime, which);
            
            if (tcpReceived != 0 || tcpSent != 0) {
                pw.print(prefix); pw.print("    Network: ");
@@ -1480,11 +1480,11 @@ public abstract class BatteryStats implements Parcelable {
            }
            
            if (fullWifiLockOnTime != 0 || scanWifiLockOnTime != 0
                    || wifiTurnedOnTime != 0) {
                    || uidWifiRunningTime != 0) {
                sb.setLength(0);
                sb.append(prefix); sb.append("    Turned Wifi On: "); 
                        formatTimeMs(sb, wifiTurnedOnTime / 1000); 
                        sb.append("("); sb.append(formatRatioLocked(wifiTurnedOnTime, 
                sb.append(prefix); sb.append("    Wifi Running: ");
                        formatTimeMs(sb, uidWifiRunningTime / 1000);
                        sb.append("("); sb.append(formatRatioLocked(uidWifiRunningTime,
                                whichBatteryRealtime)); sb.append(")\n");
                sb.append(prefix); sb.append("    Full Wifi Lock: "); 
                        formatTimeMs(sb, fullWifiLockOnTime / 1000); 
+5 −4
Original line number Diff line number Diff line
@@ -49,10 +49,11 @@ interface IBatteryStats {
    void notePhoneSignalStrength(in SignalStrength signalStrength);
    void notePhoneDataConnectionState(int dataType, boolean hasData);
    void notePhoneState(int phoneState);
    void noteWifiOn(int uid);
    void noteWifiOff(int uid);
    void noteWifiRunning();
    void noteWifiStopped();
    void noteWifiOn();
    void noteWifiOff();
    void noteWifiRunning(in WorkSource ws);
    void noteWifiRunningChanged(in WorkSource oldWs, in WorkSource newWs);
    void noteWifiStopped(in WorkSource ws);
    void noteBluetoothOn();
    void noteBluetoothOff();
    void noteFullWifiLockAcquired(int uid);
+171 −74

File changed.

Preview size limit exceeded, changes collapsed.

+28 −1
Original line number Diff line number Diff line
@@ -183,6 +183,11 @@ public class WifiService extends IWifiManager.Stub {
     */
    private int mNumScansSinceNetworkStateChange;
    
    /**
     * Temporary for computing UIDS that are responsible for starting WIFI.
     * Protected by mWifiStateTracker lock.
     */
    private final WorkSource mTmpWorkSource = new WorkSource();

    WifiService(Context context) {
        mContext = context;
@@ -404,6 +409,9 @@ public class WifiService extends IWifiManager.Stub {
            mAirplaneModeOverwridden.set(true);
        }

        if (enable) {
            reportStartWorkSource();
        }
        mWifiStateMachine.setWifiEnabled(enable);

        /*
@@ -812,6 +820,9 @@ public class WifiService extends IWifiManager.Stub {
                mAlarmManager.cancel(mIdleIntent);
                mDeviceIdle = false;
                mScreenOff = false;
                // Once the screen is on, we are not keeping WIFI running
                // because of any locks so clear that tracking immediately.
                reportStartWorkSource();
                mWifiStateMachine.enableRssiPolling(true);
            } else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
                Slog.d(TAG, "ACTION_SCREEN_OFF");
@@ -847,6 +858,7 @@ public class WifiService extends IWifiManager.Stub {
            } else if (action.equals(ACTION_DEVICE_IDLE)) {
                Slog.d(TAG, "got ACTION_DEVICE_IDLE");
                mDeviceIdle = true;
                reportStartWorkSource();
            } else if (action.equals(Intent.ACTION_BATTERY_CHANGED)) {
                /*
                 * Set a timer to put Wi-Fi to sleep, but only if the screen is off
@@ -927,6 +939,16 @@ public class WifiService extends IWifiManager.Stub {
        }
    };

    private synchronized void reportStartWorkSource() {
        mTmpWorkSource.clear();
        if (mDeviceIdle) {
            for (int i=0; i<mLocks.mList.size(); i++) {
                mTmpWorkSource.add(mLocks.mList.get(i).mWorkSource);
            }
        }
        mWifiStateMachine.updateBatteryWorkSource(mTmpWorkSource);
    }
    
    private void updateWifiState() {
        boolean wifiEnabled = getPersistedWifiEnabled();
        boolean airplaneMode = isAirplaneModeOn() && !mAirplaneModeOverwridden.get();
@@ -947,6 +969,7 @@ public class WifiService extends IWifiManager.Stub {

        if (wifiShouldBeEnabled) {
            if (wifiShouldBeStarted) {
                reportStartWorkSource();
                mWifiStateMachine.setWifiEnabled(true);
                mWifiStateMachine.setScanOnlyMode(
                        strongestLockMode == WifiManager.WIFI_MODE_SCAN_ONLY);
@@ -1178,6 +1201,10 @@ public class WifiService extends IWifiManager.Stub {
            Binder.restoreCallingIdentity(ident);
        }

        // Be aggressive about adding new locks into the accounted state...
        // we want to over-report rather than under-report.
        reportStartWorkSource();
        
        updateWifiState();
        return true;
    }
+0 −0

Empty file added.

Loading