Loading core/java/com/android/internal/os/BatteryStatsImpl.java +25 −10 Original line number Diff line number Diff line Loading @@ -5078,10 +5078,14 @@ public class BatteryStatsImpl extends BatteryStats { } public void notePowerSaveModeLocked(boolean enabled) { notePowerSaveModeLocked(enabled, mClocks.elapsedRealtime(), mClocks.uptimeMillis()); notePowerSaveModeLocked(enabled, mClocks.elapsedRealtime(), mClocks.uptimeMillis(), false); } public void notePowerSaveModeLocked(boolean enabled, long elapsedRealtimeMs, long uptimeMs) { /** * Handles power save mode state changes. */ public void notePowerSaveModeLocked(boolean enabled, long elapsedRealtimeMs, long uptimeMs, boolean forceLog) { if (mPowerSaveModeEnabled != enabled) { int stepState = enabled ? STEP_LEVEL_MODE_POWER_SAVE : 0; mModStepMode |= (mCurStepMode & STEP_LEVEL_MODE_POWER_SAVE) ^ stepState; Loading @@ -5089,13 +5093,17 @@ public class BatteryStatsImpl extends BatteryStats { mPowerSaveModeEnabled = enabled; if (enabled) { mHistoryCur.states2 |= HistoryItem.STATE2_POWER_SAVE_FLAG; if (DEBUG_HISTORY) Slog.v(TAG, "Power save mode enabled to: " if (DEBUG_HISTORY) { Slog.v(TAG, "Power save mode enabled to: " + Integer.toHexString(mHistoryCur.states2)); } mPowerSaveModeEnabledTimer.startRunningLocked(elapsedRealtimeMs); } else { mHistoryCur.states2 &= ~HistoryItem.STATE2_POWER_SAVE_FLAG; if (DEBUG_HISTORY) Slog.v(TAG, "Power save mode disabled to: " if (DEBUG_HISTORY) { Slog.v(TAG, "Power save mode disabled to: " + Integer.toHexString(mHistoryCur.states2)); } mPowerSaveModeEnabledTimer.stopRunningLocked(elapsedRealtimeMs); } addHistoryRecordLocked(elapsedRealtimeMs, uptimeMs); Loading @@ -5103,6 +5111,13 @@ public class BatteryStatsImpl extends BatteryStats { enabled ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); } else if (forceLog) { // Log an initial value for BATTERY_SAVER_MODE_STATE_CHANGED in order to // allow the atom to read all future state changes. FrameworkStatsLog.write(FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED, enabled ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); } } Loading services/core/java/com/android/server/am/BatteryStatsService.java +2 −2 Original line number Diff line number Diff line Loading @@ -468,7 +468,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub synchronized (mStats) { mStats.notePowerSaveModeLocked( powerMgr.getLowPowerState(ServiceType.BATTERY_STATS).batterySaverEnabled, SystemClock.elapsedRealtime(), SystemClock.uptimeMillis()); SystemClock.elapsedRealtime(), SystemClock.uptimeMillis(), true); } (new WakeupReasonThread()).start(); } Loading Loading @@ -511,7 +511,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub mHandler.post(() -> { synchronized (mStats) { mStats.notePowerSaveModeLocked(result.batterySaverEnabled, elapsedRealtime, uptime); elapsedRealtime, uptime, false); } }); } Loading Loading
core/java/com/android/internal/os/BatteryStatsImpl.java +25 −10 Original line number Diff line number Diff line Loading @@ -5078,10 +5078,14 @@ public class BatteryStatsImpl extends BatteryStats { } public void notePowerSaveModeLocked(boolean enabled) { notePowerSaveModeLocked(enabled, mClocks.elapsedRealtime(), mClocks.uptimeMillis()); notePowerSaveModeLocked(enabled, mClocks.elapsedRealtime(), mClocks.uptimeMillis(), false); } public void notePowerSaveModeLocked(boolean enabled, long elapsedRealtimeMs, long uptimeMs) { /** * Handles power save mode state changes. */ public void notePowerSaveModeLocked(boolean enabled, long elapsedRealtimeMs, long uptimeMs, boolean forceLog) { if (mPowerSaveModeEnabled != enabled) { int stepState = enabled ? STEP_LEVEL_MODE_POWER_SAVE : 0; mModStepMode |= (mCurStepMode & STEP_LEVEL_MODE_POWER_SAVE) ^ stepState; Loading @@ -5089,13 +5093,17 @@ public class BatteryStatsImpl extends BatteryStats { mPowerSaveModeEnabled = enabled; if (enabled) { mHistoryCur.states2 |= HistoryItem.STATE2_POWER_SAVE_FLAG; if (DEBUG_HISTORY) Slog.v(TAG, "Power save mode enabled to: " if (DEBUG_HISTORY) { Slog.v(TAG, "Power save mode enabled to: " + Integer.toHexString(mHistoryCur.states2)); } mPowerSaveModeEnabledTimer.startRunningLocked(elapsedRealtimeMs); } else { mHistoryCur.states2 &= ~HistoryItem.STATE2_POWER_SAVE_FLAG; if (DEBUG_HISTORY) Slog.v(TAG, "Power save mode disabled to: " if (DEBUG_HISTORY) { Slog.v(TAG, "Power save mode disabled to: " + Integer.toHexString(mHistoryCur.states2)); } mPowerSaveModeEnabledTimer.stopRunningLocked(elapsedRealtimeMs); } addHistoryRecordLocked(elapsedRealtimeMs, uptimeMs); Loading @@ -5103,6 +5111,13 @@ public class BatteryStatsImpl extends BatteryStats { enabled ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); } else if (forceLog) { // Log an initial value for BATTERY_SAVER_MODE_STATE_CHANGED in order to // allow the atom to read all future state changes. FrameworkStatsLog.write(FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED, enabled ? FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__ON : FrameworkStatsLog.BATTERY_SAVER_MODE_STATE_CHANGED__STATE__OFF); } } Loading
services/core/java/com/android/server/am/BatteryStatsService.java +2 −2 Original line number Diff line number Diff line Loading @@ -468,7 +468,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub synchronized (mStats) { mStats.notePowerSaveModeLocked( powerMgr.getLowPowerState(ServiceType.BATTERY_STATS).batterySaverEnabled, SystemClock.elapsedRealtime(), SystemClock.uptimeMillis()); SystemClock.elapsedRealtime(), SystemClock.uptimeMillis(), true); } (new WakeupReasonThread()).start(); } Loading Loading @@ -511,7 +511,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub mHandler.post(() -> { synchronized (mStats) { mStats.notePowerSaveModeLocked(result.batterySaverEnabled, elapsedRealtime, uptime); elapsedRealtime, uptime, false); } }); } Loading