blob: 086904ee6f774ae0f00d9ebc5cc7f6831d41a2dc [file] [log] [blame]
/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.hardware.power@1.1;
import android.hardware.power@1.0;
/**
* Interface to collect subsystem level sleep information
*/
interface IPower extends android.hardware.power@1.0::IPower {
/**
* Subsystem-level sleep state stats:
* Report cumulative info on the statistics on subsystem-level sleep states
* since boot.
*
* @return subsystems supported on this device and their sleep states
* @return retval SUCCESS on success or FILESYSTEM_ERROR on filesystem
* nodes access error.
*/
getSubsystemLowPowerStats()
generates (vec<PowerStateSubsystem> subsystems, Status retval);
/**
* powerHintAsync() is called to pass hints on power requirements which
* may result in adjustment of power/performance parameters of the
* cpufreq governor and other controls.
*
* A particular platform may choose to ignore any hint.
*
* @param hint PowerHint which is passed
* @param data contains additional information about the hint
* and is described along with the comments for each of the hints.
*/
oneway powerHintAsync(PowerHint hint, int32_t data);
};