summaryrefslogtreecommitdiff
path: root/data/res/xml/power_profile_test.xml
blob: cdb71343e5e50082ab97b56b0db10151d129965a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2017, 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.
*/
-->
<device name="Android">
    <!-- All values are in mAh except as noted.
         This file is for PowerProfileTest.java. Changes must be synced between these two. Since
         power_profile.xml may be overridden by actual device's power_profile.xml at compile time,
         this test config ensures we have something constant to test against. Values below are
         sample values, not meant to reflect any real device.
    -->

    <!-- Nothing -->
    <item name="none">0</item>

    <!-- This is the battery capacity in mAh -->
    <item name="battery.capacity">3000</item>

    <!-- Number of cores each CPU cluster contains -->
    <array name="cpu.clusters.cores">
        <value>4</value> <!-- Cluster 0 has 4 cores (cpu0, cpu1, cpu2, cpu3) -->
        <value>4</value> <!-- Cluster 1 has 4 cores (cpu4, cpu5, cpu5, cpu7) -->
    </array>

    <!-- Power consumption when CPU is suspended -->
    <item name="cpu.suspend">5</item>
    <!-- Additional power consumption when CPU is in a kernel idle loop -->
    <item name="cpu.idle">1.11</item>
    <!-- Additional power consumption by CPU excluding cluster and core when  running -->
    <item name="cpu.active">2.55</item>

    <!-- Additional power consumption by CPU cluster0 itself when running excluding cores in it -->
    <item name="cpu.cluster_power.cluster0">2.11</item>
    <!-- Additional power consumption by CPU cluster1 itself when running excluding cores in it -->
    <item name="cpu.cluster_power.cluster1">2.22</item>

    <!-- Different CPU speeds as reported in
         /sys/devices/system/cpu/cpu0/cpufreq/stats/scaling_available_frequencies -->
    <array name="cpu.core_speeds.cluster0">
        <value>300000</value> <!-- 300 MHz CPU speed -->
        <value>1000000</value> <!-- 1000 MHz CPU speed -->
        <value>2000000</value> <!-- 2000 MHz CPU speed -->
    </array>
    <!-- Different CPU speeds as reported in
         /sys/devices/system/cpu/cpu4/cpufreq/stats/scaling_available_frequencies -->
    <array name="cpu.core_speeds.cluster1">
        <value>300000</value> <!-- 300 MHz CPU speed -->
        <value>1000000</value> <!-- 1000 MHz CPU speed -->
        <value>2500000</value> <!-- 2500 MHz CPU speed -->
        <value>3000000</value> <!-- 3000 MHz CPU speed -->
    </array>

    <!-- Additional power used by a CPU from cluster 0 when running at different
         speeds. Currently this measurement also includes cluster cost. -->
    <array name="cpu.core_power.cluster0">
        <value>10</value> <!-- 300 MHz CPU speed -->
        <value>20</value> <!-- 1000 MHz CPU speed -->
        <value>30</value> <!-- 1900 MHz CPU speed -->
    </array>
    <!-- Additional power used by a CPU from cluster 1 when running at different
         speeds. Currently this measurement also includes cluster cost. -->
    <array name="cpu.core_power.cluster1">
        <value>25</value> <!-- 300 MHz CPU speed -->
        <value>35</value> <!-- 1000 MHz CPU speed -->
        <value>50</value> <!-- 2500 MHz CPU speed -->
        <value>60</value> <!-- 3000 MHz CPU speed -->
    </array>

    <!-- Additional power used when screen is turned on at minimum brightness -->
    <item name="screen.on">100</item>
    <!-- Additional power used when screen is at maximum brightness, compared to
         screen at minimum brightness -->
    <item name="screen.full">800</item>

    <!-- Average power used by the camera flash module when on -->
    <item name="camera.flashlight">500</item>
    <!-- Average power use by the camera subsystem for a typical camera
         application. Intended as a rough estimate for an application running a
         preview and capturing approximately 10 full-resolution pictures per
         minute. -->
    <item name="camera.avg">600</item>

    <!-- Additional power used when audio decoding/encoding via DSP -->
    <item name="dsp.audio">100</item>

    <!-- Additional power used when GPS is acquiring a signal -->
    <item name="gps.on">10</item>

    <!-- Additional power used when cellular radio is transmitting/receiving -->
    <item name="radio.active">60</item>
    <!-- Additional power used when cellular radio is paging the tower -->
    <item name="radio.scanning">3</item>
    <!-- Additional power used when the cellular radio is on. Multi-value entry,
         one per signal strength (no signal, weak, moderate, strong) -->
    <array name="radio.on"> <!-- Strength 0 to BINS-1 -->
        <value>6</value>       <!-- none -->
        <value>5</value>       <!-- poor -->
        <value>4</value>       <!-- moderate -->
        <value>3</value>       <!-- good -->
        <value>3</value>       <!-- great -->
    </array>
</device>