[Ascend Mate 7 Android Development] gahu777:
Version 3.0 install instructions below

Aded profiles to put phone in more deep sleep (now my phone consume 1.3% battery per hour when screen off and wifi services like messenger enabled), minimize usage of cpu/gpu/ddr by launcher (it might lag with stock launcher, works great with Nova launcher, reduce usage of processor by half.)

Version 2.0 uploaded install instructions below

phone now should better deep sleep

some values revert to original

adjusted speed when launching app, when scrolling lists, on app rotation, when fingerprint or display is touched, on battery states, when you gaming, on launcher.

WHAT IS ALL ABOUT?

Hi, im highly interested to bring all Power from mate7

I discovered that one system app can manages whole mt7 speed values on certain states ex. On app start, on certain app, on screen off...

My long research give me result that some system xml files can generate (on phone boot) certain speed values for cpu gpu and ddr.

I dont know how to read values from this files because they are encrypted, propably with strong rsa/ecb/pkcs1/padding key.

I use magic ;) to allow system read non encrypted xml configuration files on phone boot and i guess it works

What mod do?

It allow to use all phone speed to stard app, when app is started then reduce speed to save energy

It allow to lock cpu,gpu,ddr on full speed in chosen apps.

It adjust cpu frequency dynamically, when screen is touched, on cpu thermal state, on battery critical state, on fling start, on phone rotate...

You can edit xml configuration to add your apps

Install instructions

To lock cpu+gpu+ddr on max speed for any app you must:

Have root, be on MM (i dont know, but it may work on LP too)

1. Download com.huawei.powergenie.zip and etc.zip

2. Unzip com.huawei.powergenie.zip to root. data/data/com.huawei.powergenie (overwrite files, yes its safe :good:)

3.Unzip etc.zip to system/etc, it will overwrite protected xml that wont allow to change values, (you should backup your old files first)

4. Reboot phone

How do i know that its working?

Download cpu-z app from android market, i added it to my mod, now when you launch cpu-z app, cpu,ddr values should be locked to max

give me information if it works for you

Advanced instructions:

editing xml files:

<scenemode name=".*?(hw.performance|ppsspp|cpuid*?).*" id="10000">

//app name example: org.ppsspp.ppsspp, do not touch original ID, you

can add new unused id for new app, unused id's like: 10025,10026...​

<gpu_minprofile>360000000</gpu_minprofile>

//minimal gpu for state/app//​

<gpu_maxprofile>600000000</gpu_maxprofile>

//max gpu for state/app//​

<ddr_minprofile>667000000</ddr_minprofile>

// the same for ddr memory//​

<ddr_maxprofile>800000000</ddr_maxprofile>

<cpu_minprofile>806400</cpu_minprofile>

//minimal frequency for first four cores. scaling from 403,200 to 1305,600 mhz​

<cpu_maxprofile>1305600</cpu_maxprofile>

<cpu_a15_minprofile>1209600</cpu_a15_minprofile>

//minimal frequency for cores 5-8, available frequencies from 806,400 to 1804,800mhz//​

<cpu_a15_maxprofile>1804800</cpu_a15_maxprofile>

<msg_policy_threshold>15</msg_policy_threshold>

//policies how often app give notification???//​

<threshold_up>300</threshold_up>

//HMP Threshold ratio control (times to load task from lower core to higher)//​

<threshold_down>150</threshold_down>

<cpu_number_max>3</cpu_number_max>

//propably option to switch number of active cores. Reducing number of active cores can improve battery life, on certain states it also can lag your phone. Values from 1-4//​

<cpu_number_min>2</cpu_number_min>

//Minimum of active cores on app/state. Values from 0-4 0= all four cores inactive//​

</scenemode>

AVALIABLE_VALUE

cpu_maxprofile 403200 604800 806400 1017600 1209600 1305600

cpu_minprofile 403200 604800 806400 1017600 1209600 1305600

cpu_a15_maxprofile 806400 1017600 1209600 1382400 1497600 1708800 1804800

cpu_a15_minprofile 806400 1017600 1209600 1382400 1497600 1708800 1804800

gpu_maxprofile 288000000 360000000 480000000 600000000

gpu_minprofile 288000000 360000000 480000000 600000000

ddr_maxprofile 120000000 240000000 360000000 400000000 667000000 800000000

ddr_minprofile 120000000 240000000 360000000 400000000 667000000 800000000

cpu_number_max 1,2,3,4

cpu_number_min 1,2,3,4

cpu_a15_number_max 0,1,2,3,4

cpu_a15_number_min 0,1,2,3,4