MTK67xx battery / performance mods - Redmi Note 2 General

I have had my Note 2 for a week now and have tamed the major performance / battery issues by doing the following:
I assume you have root and custom recovery as a minimum.
1. Edit /etc/perfservscntbl.txt
Some of the setting choices available - define what you want - if the lines are not there, add them to control the feature.
Edit: Only SCN_APP_TOUCH works in MIUI but others work in other O.S and phones so I will leave as a reference.
CMD_SET_CPU_CORE, SCN_APP_TOUCH, 1
CMD_SET_CPU_FREQ, SCN_APP_TOUCH, 1469000
CMD_SET_CPU_FREQ, SCN_APP_SWITCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_SWITCH, 2
CMD_SET_CPU_FREQ, SCN_APP_LAUNCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_LAUNCH, 3
CMD_SET_CPU_FREQ, SCN_SW_FRAME_UPDATE, 1469000
CMD_SET_CPU_CORE, SCN_SW_FRAME_UPDATE, 2
If you consider the core frequency vs voltage as found in /proc/cpufreq/cpufreq_oppidx.txt (don't go editing this - the values are held somewhere else), it is fairly economical on battery to run up to 1469MHz.
Dropping to less cores but running at a relatively high speed works for me. Experiment what is best for you - reboot required after each edit.
OP(1950000, 109375),
OP(1781000, 105000),
OP(1625000, 101250),
OP(1469000, 96875),
OP(1326000, 93750),
OP(1183000, 90000),
OP(806000, 90000),
OP(403000, 90000),
2. Init.d tweak to fix interactive governor not scaling back to minimum frequency on light loads. This is a big stuff up that affects many MTK phones.
Seems like the load value is not a percentage as expected - same fix applies to many other MTK67xx phones definitely works on MT6753
I have not quite figured what the scale is but there are some numbers it does not like - the min frequency will sit at the hispeed frequency if you get it wrong.
Could be the scale is 0 to 255 or 0 to 512 or maybe even 0 to 1024???
It helps to temporarily drop the frequencies in step 1 all to 403000 so you can actually see how interactive is scaling above this.
You must first have init.d support!!!
Create a file named 01init and put it in /etc/init.d folder with rw-r-r permissions. Copy the following text:
#!/system/bin/sh
echo 1469000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 220 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 240 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
#end
Edit: Found the better compromise is to increase the timer_rate setting of Interactive Governor thereby smoothing load spikes that give unsettled operation with stock setting. Then more normal load percentages can be used.
To minimize battery usage, the ramp up and down speeds along with the freq are increased over stock so the cpu kicks in, gets the job done and parks again in the shortest time.
#!/system/bin/sh
echo 1469000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 95 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 95 1950000:99 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate
echo 10000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
echo 10000 > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
echo 100000 > /sys/devices/system/cpu/cpufreq/interactive/timer_slack
To get init.d support I used AndroidMasterChef to unpack the boot.img, edit init.rc to include the following, then repack and flash the new boot.img.
Must have busybox installed - check /system/xbin/busybox actually exists.
# Init.d support
service run-parts /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
class main
user root
group shell
oneshot
#end
I am running AOSP ver 1.50 by vova.vafin which is becoming quite a clean and stable build - ver 1.52 is just out I notice.

jajk said:
I have had my Note 2 for a week now and have tamed the major performance / battery issues by doing the following:
I assume you have root and custom recovery as a minimum.
1. Edit /etc/perfservscntbl.txt
Some of the setting choices available - define what you want - if the lines are not there, add them to control the feature.
CMD_SET_CPU_CORE, SCN_APP_TOUCH, 1
CMD_SET_CPU_FREQ, SCN_APP_TOUCH, 1469000
CMD_SET_CPU_FREQ, SCN_APP_SWITCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_SWITCH, 2
CMD_SET_CPU_FREQ, SCN_APP_LAUNCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_LAUNCH, 3
CMD_SET_CPU_FREQ, SCN_SW_FRAME_UPDATE, 1469000
CMD_SET_CPU_CORE, SCN_SW_FRAME_UPDATE, 2
If you consider the core frequency vs voltage as found in /proc/cpufreq/cpufreq_oppidx.txt (don't go editing this - the values are held somewhere else), it is fairly economical on battery to run up to 1469MHz.
Dropping to less cores but running at a relatively high speed works for me. Experiment what is best for you - reboot required after each edit.
OP(1950000, 109375),
OP(1781000, 105000),
OP(1625000, 101250),
OP(1469000, 96875),
OP(1326000, 93750),
OP(1183000, 90000),
OP(806000, 90000),
OP(403000, 90000),
2. Init.d tweak to fix interactive governor not scaling back to minimum frequency on light loads. This is a big stuff up that affects many MTK phones.
Seems like the load value is not a percentage as expected - same fix applies to many other MTK67xx phones definitely works on MT6753
I have not quite figured what the scale is but there are some numbers it does not like - the min frequency will sit at the hispeed frequency if you get it wrong.
Could be the scale is 0 to 255 or 0 to 512 or maybe even 0 to 1024???
It helps to temporarily drop the frequencies in step 1 all to 403000 so you can actually see how interactive is scaling above this.
You must first have init.d support!!!
Create a file named 01init and put it in /etc/init.d folder with rw-r-r permissions. Copy the following text:
#!/system/bin/sh
echo 1469000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 220 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 240 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
#end
To get init.d support I used AndroidMasterChef to unpack the boot.img, edit init.rc to include the following, then repack and flash the new boot.img.
Must have busybox installed - check /system/xbin/busybox actually exists.
# Init.d support
service run-parts /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
class main
user root
group shell
oneshot
#end
I am running AOSP ver 1.50 by vova.vafin which is becoming quite a clean and stable build - ver 1.52 is just out I notice.
Click to expand...
Click to collapse
Seems good value, I try it

Another must have to recover from the inevitable bricking is the MT6795_Android_scatter.txt file to allow flashing or backup before it is too late. Tested to work with SP_Flash_Tool_exe_Windows_v5.1548.00.000
Xiaomi do not provide a proper one with their ROMs so here it is from an identical phone (copy and paste into a text file)
You may well ask how I came to need to know this.............
############################################################################################################
#
# General Setting
#
############################################################################################################
- general: MTK_PLATFORM_CFG
info:
- config_version: V1.1.2
platform: MT6795
project: lcsh6795_lwt_l
storage: EMMC
boot_channel: MSDC_0
block_size: 0x20000
############################################################################################################
#
# Layout Setting
#
############################################################################################################
- partition_index: SYS0
partition_name: preloader
file_name: preloader_lcsh6795_lwt_l.bin
is_download: true
type: SV5_BL_BIN
linear_start_addr: 0x0
physical_start_addr: 0x0
partition_size: 0x40000
region: EMMC_BOOT_1
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: BOOTLOADERS
reserve: 0x00
- partition_index: SYS1
partition_name: pgpt
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x0
physical_start_addr: 0x0
partition_size: 0x80000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: INVISIBLE
reserve: 0x00
- partition_index: SYS2
partition_name: proinfo
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x80000
physical_start_addr: 0x80000
partition_size: 0x300000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: PROTECTED
reserve: 0x00
- partition_index: SYS3
partition_name: nvram
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x380000
physical_start_addr: 0x380000
partition_size: 0x500000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: BINREGION
reserve: 0x00
- partition_index: SYS4
partition_name: protect1
file_name: NONE
is_download: false
type: EXT4_IMG
linear_start_addr: 0x880000
physical_start_addr: 0x880000
partition_size: 0xa00000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: PROTECTED
reserve: 0x00
- partition_index: SYS5
partition_name: protect2
file_name: NONE
is_download: false
type: EXT4_IMG
linear_start_addr: 0x1280000
physical_start_addr: 0x1280000
partition_size: 0xa00000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: PROTECTED
reserve: 0x00
- partition_index: SYS6
partition_name: seccfg
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0x1c80000
physical_start_addr: 0x1c80000
partition_size: 0x40000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: INVISIBLE
reserve: 0x00
- partition_index: SYS7
partition_name: lk
file_name: lk.bin
is_download: true
type: NORMAL_ROM
linear_start_addr: 0x1cc0000
physical_start_addr: 0x1cc0000
partition_size: 0x400000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS8
partition_name: boot
file_name: boot.img
is_download: true
type: NORMAL_ROM
linear_start_addr: 0x20c0000
physical_start_addr: 0x20c0000
partition_size: 0x1000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS9
partition_name: recovery
file_name: recovery.img
is_download: true
type: NORMAL_ROM
linear_start_addr: 0x30c0000
physical_start_addr: 0x30c0000
partition_size: 0x8000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS10
partition_name: secro
file_name: secro.img
is_download: true
type: EXT4_IMG
linear_start_addr: 0xb0c0000
physical_start_addr: 0xb0c0000
partition_size: 0x600000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS11
partition_name: para
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0xb6c0000
physical_start_addr: 0xb6c0000
partition_size: 0x80000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: INVISIBLE
reserve: 0x00
- partition_index: SYS12
partition_name: logo
file_name: logo.bin
is_download: true
type: NORMAL_ROM
linear_start_addr: 0xb740000
physical_start_addr: 0xb740000
partition_size: 0x800000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS13
partition_name: expdb
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0xbf40000
physical_start_addr: 0xbf40000
partition_size: 0xa00000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: INVISIBLE
reserve: 0x00
- partition_index: SYS14
partition_name: tee1
file_name: trustzone.bin
is_download: true
type: NORMAL_ROM
linear_start_addr: 0xc940000
physical_start_addr: 0xc940000
partition_size: 0x500000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS15
partition_name: tee2
file_name: trustzone.bin
is_download: true
type: NORMAL_ROM
linear_start_addr: 0xce40000
physical_start_addr: 0xce40000
partition_size: 0x9c0000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS16
partition_name: system
file_name: system.img
is_download: true
type: EXT4_IMG
linear_start_addr: 0xd800000
physical_start_addr: 0xd800000
partition_size: 0x80000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS17
partition_name: cache
file_name: cache.img
is_download: true
type: EXT4_IMG
linear_start_addr: 0x8d800000
physical_start_addr: 0x8d800000
partition_size: 0x25800000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS18
partition_name: userdata
file_name: userdata.img
is_download: true
type: EXT4_IMG
linear_start_addr: 0xb3000000
physical_start_addr: 0xb3000000
partition_size: 0x60000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: true
is_reserved: false
operation_type: UPDATE
reserve: 0x00
- partition_index: SYS19
partition_name: flashinfo
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0xFFFF0084
physical_start_addr: 0xFFFF0084
partition_size: 0x1000000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: true
operation_type: RESERVED
reserve: 0x00
- partition_index: SYS20
partition_name: sgpt
file_name: NONE
is_download: false
type: NORMAL_ROM
linear_start_addr: 0xFFFF0004
physical_start_addr: 0xFFFF0004
partition_size: 0x80000
region: EMMC_USER
storage: HW_STORAGE_EMMC
boundary_check: false
is_reserved: true
operation_type: RESERVED
reserve: 0x00
#########################################################################################################

@jajk : with your init.d file, performance mode seems not work, same results in antutu with balanced mode and performance mode.

What kind of SOT are you getting? : )

@barome these settings are hard-coding the parameters for the CPU Governors instead of using a software means of flicking between 3 predetermined setups.
Did you use a kernel tweaker to see what is happening to the CPU frequency in the stock condition, then with your own settings? Benchmarks don't really show the fluency and economy of what is happening at lighter cpu loads.
@fluffyboy2 SOT is unknown and irrelevant since it depends on how hard the CPUs are running over that time. I get 0% drop overnight since removing, replacing or freezing apps that try to autostart or wakeup the phone. I am on AOSP not MIUI - that makes a big difference in the amount of bloat trying to contact home regularly. The battery drain while using the phone is greatly improved over stock. You can feel the difference in heat generated near the camera. I haven't underclocked so peak processing power should still be reachable if an app needs it.
There is no magic setting that will keep everyone happy but running 3 cores for touch boost in the stock configuration is going to eat your battery along with the failure of the interactive governor to throttle down the cpu from a high freq.
If it is not immediately apparent:
SCN_APP_TOUCH = case when screen touch detected (touch boost)
SCN_APP_SWITCH = case when switching apps (or function within an app)
SCN_APP_LAUNCH = case when opening an app
SCN_SW_FRAME_UPDATE = case when screen needs to be redrawn e.g on scrolling
I should also mention that you should not be using other scripts or software that are manipulating the same settings.

jajk said:
I am on AOSP not MIUI - that makes a big difference in the amount of bloat trying to contact home regularly. The battery drain while using the phone is greatly improved over stock. You can feel the difference in heat generated near the camera.
Click to expand...
Click to collapse
AFAIK the daemon that reads and interprets perfservscntbl.txt is missing from the AOSP ROMs I saw floating around, but feel free to correct me.
And a few weeks ago, I've tried using some of the perfservscntbl.txt values you are mentoning here on MIUI. The result was Battery Saver app FC (which is in connection with the MTK daemon), and the phone started using the default touchboost values from kernel (2 cores, 1326MHz)

@Xmister I am using AOSP 5.02 ver 1.50 by vova.vafin and perfservscntbl.txt values are applied correctly on reboot. The kernel is the same one as used by the latest MIUI.
I have opened the daemon you are talking about in a text editor and the available commands are there to see in plain text. Now I have forgot what the file was called, can you remind me?
Choose your weapon: Use an app to alter settings or edit the files directly.....not both.

I probably need to clarify since we have 2 things that interact causing much confusion:
FIRSTLY: Make sure you are not using other scripts or software that are altering the same files!!!
Start by editing perfservscntbl.txt as follows to negate its effects - reboot to take effect.
CMD_SET_CPU_FREQ, SCN_APP_TOUCH, 403000
CMD_SET_CPU_CORE, SCN_APP_TOUCH, 1
CMD_SET_CPU_FREQ, SCN_APP_SWITCH, 403000
CMD_SET_CPU_CORE, SCN_APP_SWITCH, 1
CMD_SET_CPU_FREQ, SCN_APP_LAUNCH, 403000
CMD_SET_CPU_CORE, SCN_APP_LAUNCH, 1
CMD_SET_CPU_FREQ, SCN_SW_FRAME_UPDATE, 403000
CMD_SET_CPU_CORE, SCN_SW_FRAME_UPDATE, 1
Now start with an init.d script as follows: these are the default settings from the kernel.
echo 1183000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 99 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 90 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
Execute the script or reboot. Now run whatever software you use to view the cpu frequencies. You should find that the cpu never settles on the minimum frequency but can get stuck on the highspeed_freq of 1183MHz. This is a big part of why the battery drains quickly.
Edit the file to read as follows:
echo 1183000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 110 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 99 806000:70 1950000:120 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
Reboot or execute the script. Now you should see the cpu settle firmly on 403MHz with no load and ramp up and add extra cores only when a load is applied. It should ramp all the way up to 1950MHz if you can scroll and click on things fast enough while watching the frequency. This example is on the edge of just throttling down to min freq while still climbing to 1950MHz with a moderate load. If needed or desired, increase or decrease the load values to get your desired operation. Like I mentioned in OP, the implementation of Interactive governor is flawed so don't think in terms of 0 - 100%. Confirm it for yourself!
Once you are happy with the Interactive governor action, now work on the perfservscntbl.txt. This is basically adding a short term boost frequency and extra cores under 4 different scenarios.
It supplements what Interactive is doing so what you see is a combination of both in action. If you boost to a high freq, the workload drops off quickly so less cores are on for less time. What is best for battery is something close to my example below. You will find the dominant effect is the SCN_SW_FRAME_UPDATE which almost always overrides the SCN_APP_TOUCH. You must touch an inactive part of a window without causing any scrolling to see the touchboost effect by itself. It is useful to set each scenario to a different frequency to see which one is in play.
CMD_SET_CPU_FREQ, SCN_APP_TOUCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_TOUCH, 1
CMD_SET_CPU_FREQ, SCN_APP_SWITCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_SWITCH, 2
CMD_SET_CPU_FREQ, SCN_APP_LAUNCH, 1469000
CMD_SET_CPU_CORE, SCN_APP_LAUNCH, 3
CMD_SET_CPU_FREQ, SCN_SW_FRAME_UPDATE, 1469000
CMD_SET_CPU_CORE, SCN_SW_FRAME_UPDATE, 2

Then in the newer aosp ROMs, the daemon is included.
I have a lot of experience with interactive on this phone, and I can tell that with the default timer rate, even 90 target load causes unnecessary cores to activate. If you want to set that even higher, you should lower the timer and sample time first.
Also I never had problem with reaching the idle freq.
Tapatalk|Redmi Note 2

It is odd that the normal Linux default for go_hispeed_load is 85 but MTK set it to 99 and still have problems.
I can't get reliable idle freq at anything below a setting of 110 on Note 2 running either MIUI or AOSP. On my second phone which is a Ulephone Be Touch 3 with MTK6753 soc running 5.1.1, the same applies.
timer_rate defaults to 20000 which is Linux default.
min_sample_time defaults to 20000. Linux default is 80000.
I had a play with modifying the times instead of load but can't get a reliable outcome. Open to further suggestions?

Basically slowramp mode in my app sets timer and sample time to 10000, increases the timer even further in go above, disables highspeed freq (sets to 806), and sets the target loads between 90 and 100. And the default touchboost values are 806/2.
This gets about 1-2 hour extra sot for most of the users with even smoother interface,because of the faster than default reaction to load. At least with miui.
Tapatalk|Redmi Note 2

Xmister said:
Basically slowramp mode in my app sets timer and sample time to 10000, increases the timer even further in go above, disables highspeed freq (sets to 806), and sets the target loads between 90 and 100. And the default touchboost values are 806/2.
This gets about 1-2 hour extra sot for most of the users with even smoother interface,because of the faster than default reaction to load. At least with miui.
Tapatalk|Redmi Note 2
Click to expand...
Click to collapse
I see Gaming, QuickRamp and MIUI default in your app.
Which of them is slowramp?

hasaan6545 said:
I see Gaming, QuickRamp and MIUI default in your app.
Which of them is slowramp?
Click to expand...
Click to collapse
You are using an old version. But gaming is what is called now SlowRamp.

O.K taking another approach is to take on board what Xmister mentioned earlier and I find that increasing the timer_rate from 20000 to 60000 uS smooths out the calculated load to the point that normal load figures can be used. There must be a lot of load calculation glitching at the lower timer rate that triggers ramping up the freq as 20000 is a pretty standard default that works on non MTK phones. I also increased the min_sample_time from an unusually low 20000 to a more normal 60000 to calm things down a bit more. @Xmister did you miss a zero off your slow ramp values and mean 100,000 not 10,000?
So what I end up with is an init.d file like this:
#!/system/bin/sh
echo 1183000 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 95 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 95 806000:80 1950000:99 > /sys/devices/system/cpu/cpufreq/interactive/target_loads
echo 60000 > /sys/devices/system/cpu/cpufreq/interactive/timer_rate #ROM default 20000, Linux recommended default 20000
echo 60000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time #ROM default 20000, Linux recommended default 80000
This scales up and down nicely and reliably sits on min freq.

No I didn't not miss. My point was even at 20000, interactive is not quick enough to ramp up the freq. So another cores will be activated, and by the time the frequency goes up, there will be another 3-4 cores activated unnecessary, so it will consume a lot of battery.
Tapatalk|Redmi Note 2

Tried dropping the timer rate down again but cannot go below 35000 before it will no longer sit at min freq reliably. I have a very minimal ROM with no processes running to upset this.
 @Xmister what is the trick in getting min freq reliably with a setting of 10000? It seems an impossibility for me. I have 2 MTK phones with exact same behavior, one with MIUI originally, now with AOSP 5.02, the other with stock 5.1.1 so it is not an O.S version thing.

jajk said:
Tried dropping the timer rate down again but cannot go below 35000 before it will no longer sit at min freq reliably. I have a very minimal ROM with no processes running to upset this.
@Xmister what is the trick in getting min freq reliably with a setting of 10000? It seems an impossibility for me. I have 2 MTK phones with exact same behavior, one with MIUI originally, now with AOSP 5.02, the other with stock 5.1.1 so it is not an O.S version thing.
Click to expand...
Click to collapse
Well, the absolute min frequency should only be used when you are not doing anything on your phone. But in this case it's usually turned off to deep sleep.
I usually try min freq with opening CPU Spy, leaving it for 5-10 sec, and then refreshing. In this case it's usually half 403MHz, half 806MHz, which is probably due to the system doing something in background.
In my opinion (and experience) it's much better for battery that the phone sometimes uses 806 when idle (which is usually pretty rare anyway during normal usage), than it is using high frequencies with a lot of cores on some medium workload.

jajk said:
Tried dropping the timer rate down again but cannot go below 35000 before it will no longer sit at min freq reliably. I have a very minimal ROM with no processes running to upset this.
@Xmister what is the trick in getting min freq reliably with a setting of 10000? It seems an impossibility for me. I have 2 MTK phones with exact same behavior, one with MIUI originally, now with AOSP 5.02, the other with stock 5.1.1 so it is not an O.S version thing.
Click to expand...
Click to collapse
target_loads - 95 806000:78 1183000:88 1326000:93 1469000:95 1781000:97
timer_slack - -1
hispeed_freq - 403000
timer_rate - 15000
above_hispeed_delay - 15000 806000:25000 1183000:30000 1326000:30000 1625000:20000
go_hispeed_load - 200
min_sample_time - 10000
boost - 0
boostpulse_duration - 0
This is my current setting, but need more configuration, it can easily ramp down to 403 Mhz when idle, but I think 806 Mhz is more stable when any task is coming. So I have serious stuttering problem to solve.
You can use performance governor and set scaling_max to any freq to see what's the best working freq and idle freq.
Btw, @Xmister I have a question. There's two situation blow:
1. CPU use 6 cores @ 806 Mhz
2. CPU use 3 cores @ 1781 Mhz
Which one will be more power save?
I'm struggling between open more cores or drain out each core, there's no result so far...
With this setting, I got 3 hours of SoT and data connection "always on"
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}

3 cores 1781 is probably better.
You also have some misconfiguration, sample time and above delay can only be a multiple of timer.
Tapatalk|Redmi Note 2

Related

xperia x10 hardware ram

i heared that the x10 only have 256 mb ram , and the asian version is the version who has 384 ,not the worldwide version ,so what is the truth
Well, gsm arena has 384Mb in their spec list.
Unfortunately android 1.6 can "see" only 256Mb so, no idea how much really has.
We will know for sure when we will get android 2.1.
Also at that point we will know if the display has 16mil colors or only 65k
I'm also curious to know howmuch RAM does that beast actually have. Somewhere I read that only the Japanese X10 from DOCOMO has 384 Mb RAM
Sent from my X10i using Tapatalk
Higgins12 said:
I'm also curious to know howmuch RAM does that beast actually have. Somewhere I read that only the Japanese X10 from DOCOMO has 384 Mb RAM
Sent from my X10i using Tapatalk
Click to expand...
Click to collapse
The japanese version runs android 1.6 but still has 384 mb ram.
but the x10i and X10a versions are said to have only 256 mb ram. may be SE has locked some ram in the x10i and the X10a just like Htc did for the leo european version.
From dmsg:
...
<6>[ 0.000000] usb serial_number = CB511GYDBV
<6>[ 0.000000] usb product_name = Sony Ericsson X10i
<3>[ 0.000000] Unknown boot option `androidboot.hardware=es209ra': ignoring
<4>[ 0.000000] PID hash table entries: 2048 (order: 11, 8192 bytes)
<6>[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
<6>[ 0.001126] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
<6>[ 0.029960] Memory: 224MB 127MB = 351MB total <--------- THE MEMORY
<5>[ 0.030006] Memory: 273664KB available (4456K code, 1250K data, 140K init)
<6>[ 0.030546] Calibrating delay loop... 255.59 BogoMIPS (lpj=1277952)
...
Ciao Angelo
ardf69 said:
From dmsg:
...
<6>[ 0.000000] usb serial_number = CB511GYDBV
<6>[ 0.000000] usb product_name = Sony Ericsson X10i
<3>[ 0.000000] Unknown boot option `androidboot.hardware=es209ra': ignoring
<4>[ 0.000000] PID hash table entries: 2048 (order: 11, 8192 bytes)
<6>[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
<6>[ 0.001126] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
<6>[ 0.029960] Memory: 224MB 127MB = 351MB total <--------- THE MEMORY
<5>[ 0.030006] Memory: 273664KB available (4456K code, 1250K data, 140K init)
<6>[ 0.030546] Calibrating delay loop... 255.59 BogoMIPS (lpj=1277952)
...
Ciao Angelo
Click to expand...
Click to collapse
this nearly 384
256MB RAM
128MB video memory or VRAM
i mentioned it b4
here
&
here
And how much ram the Nexus One has? 512mb all for the system?
IMO the ram is VERY important, and if the X10 only has 256mb for the system and the HTC Desire or de N1 has the double (n1) or more (HTC desire) i think i will make the change...
Don't clog up the dev forums with this stuff this is exactly what general Is for
Nexus one has a full 512 for system. I also thought the x10 has 384 as mentioned by gsmarena. Might return mine for an acer liquid e now
-------------------------------------
Sent from my X10a
Don't clog up the dev forums with this stuff this is exactly what general Is for
Click to expand...
Click to collapse
+1
-------------------------------------
Sent via the XDA Tapatalk App
sory my mistake please move it mods
Legend112 said:
+1
-------------------------------------
Sent via the XDA Tapatalk App
Click to expand...
Click to collapse
Only a mod can move the thread can't they?
Since its not moved yet - I've done a test with my X10i.
Using the system panel app with 51% of memory used there is (49% left of course) 130.2MB available, so there must be at least 260.4MB free to the user, and there is a lot used by the system too.
130.2/49 = 1% of user available ram = 2.657 MB (to 3 decimal places)
2.657MB x 100 = approximately 100% of user available ram = 265.7MB
265.7MB is more than 256MB of ram without system memory added to the total.
With my old t-mobile pulse which had 192MB of ram, only 90-something MB was available to the user, with 102 used by system etc.
So there is probably 384MB of ram in all X10's.
EDIT:
the X10i look like have 384Mb RAM, but it's not detailled :
http://www.gsmarena.com/sony_ericsson_xperia_x10-2964.php
The Nexus One have 512 Mb, not detailled too :
http://www.gsmarena.com/htc_google_nexus_one-3069.php
But the X10 is look better than Nexus1 in fact... better Photos, better Videos, better pretty... speed look a little bit the same... perhaps more slowly with much applications executed at the same time..
In France, the Nexus1 is cheaper than X10, but i decide to buy the X10... more design, better photos, Videos, ....
I use to have an iPhone 3G, photos and videos are really poor... but applications are really GOOD... but i'm not a player...
Off my X10a:
Code:
*$ cat /proc/meminfo
cat /proc/meminfo
MemTotal: 274608 kB
MemFree: 7464 kB
Buffers: 108 kB
Cached: 33080 kB
SwapCached: 0 kB
Active: 110884 kB
Inactive: 117880 kB
Active(anon): 96816 kB
Inactive(anon): 100984 kB
Active(file): 14068 kB
Inactive(file): 16896 kB
Unevictable: 1124 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 196716 kB
Mapped: 23468 kB
Slab: 8160 kB
SReclaimable: 2028 kB
SUnreclaim: 6132 kB
PageTables: 17236 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 137304 kB
Committed_AS: 6417160 kB
VmallocTotal: 1179648 kB
VmallocUsed: 152160 kB
VmallocChunk: 951292 kB
MOD EDIT - Moved to general forum as not related to android development
Apparently the donut limits the ram so once an upgrade appears we'll have it all
-------------------------------------
Sent via the XDA Tapatalk App
Sorry, that I post in an old topic...
Android system info and Quadrant are showing 280MB RAM. Quadrant shows also 100MB unused, it's not the free RAM, I had 50MB RAM free when I locked at it, so my question is:
Can we activate these 100MB somehow? That would help big games and when a lot of apps are running simultaneous...
only if you crack bootloader.

[INFO] CPU [MSM8974AC] Binning Concept, Overclocking, Undervolting

MSM8974AC Snapdragon 801 CPU Binning
​
!! INTRO !!
Click to expand...
Click to collapse
Hello XDA Friends,
I just collected some information related to CPU Binning and undervolting. Different sections of this POST is collected from different internet sources.
All Source Links are given below in each section. I am just the info collector and all credits goes to them (Original Author in different sources...)
Please share your views and updated information here
*** I don’t know, this thread should be in "General" or in "Android Development". Request to Moderators: please move this to proper thread-category***
APPS & Kernel You May Need For OnePlus One
Click to expand...
Click to collapse
Apps
[ROOT] Kernel Tweaker -- Google Play - https://play.google.com/store/apps/details?id=com.dsht.kerneltweaker
Trickster MOD Kernel Settings --- Google Play - https://play.google.com/store/apps/details?id=com.bigeyes0x0.trickstermod
Custom Kernel with UV Support (undervolting)
Franco Kernel -- http://forum.xda-developers.com/oneplus-one/orig-development/kernel-franco-kernel-r1-t2800871
!! SECTION 1 !!
Click to expand...
Click to collapse
Code:
[SIZE=4][B]Source[/B]: [URL]https://forums.oneplus.net/threads/check-your-opo-cpu-binning.33330/[/URL][/SIZE]
CPU binning quality defines the quality of a semiconductor processor.. like if it needs more voltage
to run stable than others of the same version.
it normally means, the lesser demanding stable vcore on stock clock, the higher binning
the cpu got and more capable it could be in terms of overclocking.
it's like intel processors. the i5 4570 has lessened stock clock than a i5 4670 for example and this is due to the
chip quality of the i5 4570 didn't turn out as good as the i5 4670 to operate at targeted stock clock
think of it like cutting out a perfect circle out of paper with a normal pair of scissors.
would every circle look the same by your hand by their tiniest nanometers?
no they probably wouldn't unless you're chuck norris but this is the same which applies to creating semi conductors..
they don't turn out perfect all the time and get sorted out but still are usable.
this is also why some i5 4670k hit a 4.3ghz overclock on air whilst other 4670k might reach even higher 4.7ghz
because their binning rate/grade of quality is actually higher
other than that there was once a great news about the nexus 4 because some people felt betrayed since the variety of
fast and slow snapdragon processors differed very much and geeks wanted to exchange it
because of that since it really made a slight difference in processor power
Phone must be rooted!!
1. Install Busybox
2. Install a Terminal Emulator
3. Reboot
4. Open Terminal and type:
Code:
su
dmesg | grep PVS
5. A line should be outputted that tells you what type you have.
1= slow
2= nominal
3= fast
4= faster
dmesg is a limited buffer of kernel messages so if the phone has been on for a while the command suggested may not show anything.
An alternative command is:
Code:
grep PVS /proc/kmsg
This is where all the kernel messages are stored (similar to /var/log/messages on linux).
!! SECTION 2 !!
Click to expand...
Click to collapse
PVS Bins for MSM8974AC are --> 0 to 15
Snapdragon 801 2.5ghz MSM8974AC v3
=======================================
Code:
MSM8974AC 2.5ghz PVS 0 - 422mhz
MSM8974AC 2.5ghz PVS 1 - 499mhz
MSM8974AC 2.5ghz PVS 2 - 576mhz
MSM8974AC 2.5ghz PVS 3 - 652mhz
MSM8974AC 2.5ghz PVS 4 - 729mhz
MSM8974AC 2.5ghz PVS 5 - 806mhz
MSM8974AC 2.5ghz PVS 6 - 652mhz
MSM8974AC 2.5ghz PVS 7 - 729mhz
MSM8974AC 2.5ghz PVS 8 - 806mhz
MSM8974AC 2.5ghz PVS 9 - 883mhz
MSM8974AC 2.5ghz PVS 10 - 960mhz
MSM8974AC 2.5ghz PVS 11 - 1036mhz
MSM8974AC 2.5ghz PVS 12 - 1113mhz
MSM8974AC 2.5ghz PVS 13 - 1190mhz
MSM8974AC 2.5ghz PVS 14 - 1113mhz
MSM8974AC 2.5ghz PVS 15 - 1190mhz
========= By XDA Recognized Developer @HD2Owner (Thank You Sir) =================
Best max frequency (sweet performance/power spot):
MSM8974AC 2.5ghz - 1.57ghz
How to get the maximum battery life:
if you have a MSM8974AB pvs 6 for example, try the following steps:
try the next higher pvs levels (pvs7). don't try AC pvs values on AB chips.
AB chips are binned for lower frequencies while AC are binned for higher frequencies (duh).
so if you have a AB chip, work your way up the AB pvs values until you have freezes or similar and move back.
if you have a AC chip, work your way up the AC pvs values etc...
if you found highest setting that does not cause any problems after intensive testing and usage:
congratulations, you did it.
How to get the maximum frequency:
first try higher than stock maximum clock and see how it behaves.
if you don't reach your desired clockspeed, try the next lower pvs setting of your chip. yes, i said LOWER.
this gives the processor more voltage to reach higher overclocks.
i don't recommend it tho since we all want our phones to last as long as possible usually.
==========================================================
Source -- XDA
http://forum.xda-developers.com/htc-one-m8/general/guide-snapdragon-801-clocking-voltage-t2807173
I have one question ...Higher Bin indicates higher quality chip ?
Similar question asked here.... see details...
https://developer.qualcomm.com/forum/qdn-forums/general-discussion/27244
Another nice command to get binning info is
Code:
su
cat /sys/module/clock_krait_8974/parameters/table_name
Note 1:
Click to expand...
Click to collapse
It's said that the higher the PVS bin value the better - in terms of it gives of less heat and requires less voltage:
0 requires the MOST/HIGHEST voltage range to boot, and 7 required the LEAST/LOWEST voltage range to boot.
Because lower binning SOCs use higher voltage values, they tend to run hotter than higher binning versions.
===================
Source: XDA
http://forum.xda-developers.com/showthread.php?t=2786841
Note 2:
Click to expand...
Click to collapse
users with CPU
Binning 0 running @ 2.3 GHz is using 1.100 volts
Binning 1 running @ 2.3 GHz is using 1.075 volts
...
Binning 6 running @ 2.3 GHz is using 0.95 volts
so if you take binning 6 compare to binning 0, you are "effectively" pre-undervolted from the factory by 150mv ALREADY! Wow...
So users with binning 0's MASSIVE -150mv undervolt compare to binning 6's STOCK voltage is effectively the SAME!
Wait a second... Isn't Binning 0 designed to run @ higher voltage? SO the massive undervoltage should crash correct?
Answer: Yes and No...
Lower Binning SOCs may need higher voltage to BOOT, but when running, it may use the same nominal voltage as the higher binning SOCs.
So once successfully booted, you can run the lower binning SOCs at lower voltage values than during boot.
===========================
Source: Google+
https://plus.google.com/+PaulReioux/posts/YXxQnnZxC7j
Note 3:
Click to expand...
Click to collapse
Snapdragon 801 2.5ghz MSM8974AC v3 --- Also Known As ---- MSM8974Pro AC Rev 1
(Two Revisions are available 0, 1)
============================
Code:
/* 8974Pro AC 2.5GHz */ (REV 0)
[0][3][0] = { pro_rev0_2p5g_pvs0, sizeof(pro_rev0_2p5g_pvs0) },
[0][3][1] = { pro_rev0_2p5g_pvs1, sizeof(pro_rev0_2p5g_pvs1) },
[0][3][2] = { pro_rev0_2p5g_pvs2, sizeof(pro_rev0_2p5g_pvs2) },
[0][3][3] = { pro_rev0_2p5g_pvs3, sizeof(pro_rev0_2p5g_pvs3) },
[0][3][4] = { pro_rev0_2p5g_pvs4, sizeof(pro_rev0_2p5g_pvs4) },
[0][3][5] = { pro_rev0_2p5g_pvs5, sizeof(pro_rev0_2p5g_pvs5) },
[0][3][6] = { pro_rev0_2p5g_pvs6, sizeof(pro_rev0_2p5g_pvs6) },
[0][3][7] = { pro_rev0_2p5g_pvs6, sizeof(pro_rev0_2p5g_pvs6) },
/* 8974Pro AC 2.5GHz */ (REV 1)
[1][3][0] = { pro_rev1_2p5g_pvs0, sizeof(pro_rev1_2p5g_pvs0) },
[1][3][1] = { pro_rev1_2p5g_pvs1, sizeof(pro_rev1_2p5g_pvs1) },
[1][3][2] = { pro_rev1_2p5g_pvs2, sizeof(pro_rev1_2p5g_pvs2) },
[1][3][3] = { pro_rev1_2p5g_pvs3, sizeof(pro_rev1_2p5g_pvs3) },
[1][3][4] = { pro_rev1_2p5g_pvs4, sizeof(pro_rev1_2p5g_pvs4) },
[1][3][5] = { pro_rev1_2p5g_pvs5, sizeof(pro_rev1_2p5g_pvs5) },
[1][3][6] = { pro_rev1_2p5g_pvs6, sizeof(pro_rev1_2p5g_pvs6) },
[1][3][7] = { pro_rev1_2p5g_pvs7, sizeof(pro_rev1_2p5g_pvs7) },
[1][3][8] = { pro_rev1_2p5g_pvs8, sizeof(pro_rev1_2p5g_pvs8) },
[1][3][9] = { pro_rev1_2p5g_pvs9, sizeof(pro_rev1_2p5g_pvs9) },
[1][3][10] = { pro_rev1_2p5g_pvs10, sizeof(pro_rev1_2p5g_pvs10) },
[1][3][11] = { pro_rev1_2p5g_pvs11, sizeof(pro_rev1_2p5g_pvs11) },
[1][3][12] = { pro_rev1_2p5g_pvs12, sizeof(pro_rev1_2p5g_pvs12) },
[1][3][13] = { pro_rev1_2p5g_pvs13, sizeof(pro_rev1_2p5g_pvs13) },
[1][3][14] = { pro_rev1_2p5g_pvs14, sizeof(pro_rev1_2p5g_pvs14) },
[1][3][15] = { pro_rev1_2p5g_pvs15, sizeof(pro_rev1_2p5g_pvs15) },
Voltage Table of REV 0 and REV 1 are following....
Code:
For Rev 0
------------------------------
Ordinary 8974AC PVS 0
static struct acpu_level pro_rev0_2p5g_pvs0 [] __ initdata = {
{1, {300000, PLL_0, 0, 0}, L2 (0), 800000, 76},
{1, {422400, HFPLL, 2, 44}, L2 (2), 800000, 106},
{1, {652800, HFPLL, 1, 34}, L2 (3), 810000, 165},
{1, {729600, HFPLL, 1, 38}, L2 (4), 820000, 186},
{1, {883200, HFPLL, 1, 46}, L2 (4), 840000, 229},
{1, {960000, HFPLL, 1, 50}, L2 (9), 850000, 251},
{1, {1036800, HFPLL, 1, 54}, L2 (10), 860000, 273},
{1, {1190400, HFPLL, 1, 62}, L2 (10), 880000, 319},
{1, {1267200, HFPLL, 1, 66}, L2 (13), 890000, 342},
{1, {1497600, HFPLL, 1, 78}, L2 (16), 920000, 415},
{1, {1574400, HFPLL, 1, 82}, L2 (17), 930000, 439},
{1, {1728000, HFPLL, 1, 90}, L2 (18), 960000, 493},
{1, {1958400, HFPLL, 1, 102}, L2 (19), 1005000, 579},
{1, {2265600, HFPLL, 1, 118}, L2 (19), 1065000, 700},
{1, {2457600, HFPLL, 1, 128}, L2 (19), 1100000, 785},
{0, 0}} {
};
Common 8974AC PVS 6/7
static struct acpu_level pro_rev0_2p5g_pvs6 [] __ initdata = {
{1, {300000, PLL_0, 0, 0}, L2 (0), 750000, 76},
{1, {422400, HFPLL, 2, 44}, L2 (2), 750000, 106},
{1, {652800, HFPLL, 1, 34}, L2 (3), 750000, 165},
{1, {729600, HFPLL, 1, 38}, L2 (4), 750000, 186},
{1, {883200, HFPLL, 1, 46}, L2 (4), 750000, 229},
{1, {960000, HFPLL, 1, 50}, L2 (9), 750000, 251},
{1, {1036800, HFPLL, 1, 54}, L2 (10), 750000, 273},
{1, {1190400, HFPLL, 1, 62}, L2 (10), 750000, 319},
{1, {1267200, HFPLL, 1, 66}, L2 (13), 755000, 342},
{1, {1497600, HFPLL, 1, 78}, L2 (16), 785000, 415},
{1, {1574400, HFPLL, 1, 82}, L2 (17), 795000, 439},
{1, {1728000, HFPLL, 1, 90}, L2 (18), 815000, 493},
{1, {1958400, HFPLL, 1, 102}, L2 (19), 855000, 579},
{1, {2265600, HFPLL, 1, 118}, L2 (19), 915000, 700},
{1, {2457600, HFPLL, 1, 128}, L2 (19), 950000, 785},
{0, 0}} {
};
For Rev 1
----------------------------------------------------
Revision 8974AC PVS 0
static struct acpu_level pro_rev1_2p5g_pvs0 [] __ initdata = {
{1, {300000, PLL_0, 0, 0}, L2 (0), 800000, 76},
{1, {422400, HFPLL, 2, 44}, L2 (2), 800000, 106},
{1, {652800, HFPLL, 1, 34}, L2 (3), 830000, 168},
{1, {729600, HFPLL, 1, 38}, L2 (4), 840000, 189},
{1, {883200, HFPLL, 1, 46}, L2 (4), 860000, 233},
{1, {960000, HFPLL, 1, 50}, L2 (9), 870000, 256},
{1, {1036800, HFPLL, 1, 54}, L2 (10), 880000, 278},
{1, {1190400, HFPLL, 1, 62}, L2 (10), 900000, 324},
{1, {1267200, HFPLL, 1, 66}, L2 (13), 910000, 348},
{1, {1497600, HFPLL, 1, 78}, L2 (16), 940000, 421},
{1, {1574400, HFPLL, 1, 82}, L2 (17), 950000, 446},
{1, {1728000, HFPLL, 1, 90}, L2 (18), 980000, 501},
{1, {1958400, HFPLL, 1, 102}, L2 (19), 1025000, 588},
{1, {2265600, HFPLL, 1, 118}, L2 (19), 1085000, 716},
{1, {2457600, HFPLL, 1, 128}, L2 (19), 1120000, 802},
{0, 0}} {
};
Revision 8974AC PVS 7
static struct acpu_level pro_rev1_2p5g_pvs7 [] __ initdata = {
{1, {300000, PLL_0, 0, 0}, L2 (0), 775000, 76},
{1, {422400, HFPLL, 2, 44}, L2 (2), 775000, 106},
{1, {652800, HFPLL, 1, 34}, L2 (3), 775000, 168},
{1, {729600, HFPLL, 1, 38}, L2 (4), 775000, 189},
{1, {883200, HFPLL, 1, 46}, L2 (4), 790000, 233},
{1, {960000, HFPLL, 1, 50}, L2 (9), 800000, 256},
{1, {1036800, HFPLL, 1, 54}, L2 (10), 810000, 278},
{1, {1190400, HFPLL, 1, 62}, L2 (10), 830000, 324},
{1, {1267200, HFPLL, 1, 66}, L2 (13), 840000, 348},
{1, {1497600, HFPLL, 1, 78}, L2 (16), 870000, 421},
{1, {1574400, HFPLL, 1, 82}, L2 (17), 880000, 446},
{1, {1728000, HFPLL, 1, 90}, L2 (18), 910000, 501},
{1, {1958400, HFPLL, 1, 102}, L2 (19), 955000, 588},
{1, {2265600, HFPLL, 1, 118}, L2 (19), 1015000, 716},
{1, {2457600, HFPLL, 1, 128}, L2 (19), 1050000, 802},
{0, 0}} {
};
Revision 8974AC PVS 15
static struct acpu_level pro_rev1_2p5g_pvs15 [] __ initdata = {
{1, {300000, PLL_0, 0, 0}, L2 (0), 750000, 76},
{1, {422400, HFPLL, 2, 44}, L2 (2), 750000, 106},
{1, {652800, HFPLL, 1, 34}, L2 (3), 750000, 168},
{1, {729600, HFPLL, 1, 38}, L2 (4), 750000, 189},
{1, {883200, HFPLL, 1, 46}, L2 (4), 750000, 233},
{1, {960000, HFPLL, 1, 50}, L2 (9), 750000, 256},
{1, {1036800, HFPLL, 1, 54}, L2 (10), 750000, 278},
{1, {1190400, HFPLL, 1, 62}, L2 (10), 750000, 324},
{1, {1267200, HFPLL, 1, 66}, L2 (13), 760000, 348},
{1, {1497600, HFPLL, 1, 78}, L2 (16), 790000, 421},
{1, {1574400, HFPLL, 1, 82}, L2 (17), 800000, 446},
{1, {1728000, HFPLL, 1, 90}, L2 (18), 830000, 501},
{1, {1958400, HFPLL, 1, 102}, L2 (19), 875000, 588},
{1, {2265600, HFPLL, 1, 118}, L2 (19), 935000, 716},
{1, {2457600, HFPLL, 1, 128}, L2 (19), 970000, 802},
{0, 0}} {
};
Sources:
1) http://www.anandtech.com/show/7846/...-snapdragon-800-and-801-clearing-up-confusion
2) http://tieba.baidu.com/p/2870895640 (Use Google Translate)
!! SECTION 3 !!
Click to expand...
Click to collapse
Fully Copied from Source: http://forum.xda-developers.com/galaxy-s3/general/guide-fastest-to-properly-undervolt-cpu-t2072087
Click to expand...
Click to collapse
===========================================
Hello.
Undervolting your CPU has always been a daunting task - there's so many CPU steps, if you pick say -100mV to all frequency steps and you get a reboot, how do you work out which step (or steps!) is causing the problem? If you undervolt -25mV on one frequency, then wait a couple of days to make sure it's stable, then reduce the same frequency by another 25mV.. you'll still be undervolting a year later.
This thread is my tutorial on how to do a best effort at quickly and safely undervolting your phone CPU.
First of all - is undervolting your CPU worth it?
Initially it was thought not to make much difference, but after some serious testing (thanks AndreiLux), "we" decided that it was a good idea. I also did my own basic testing, and it looks like it's worth it.
What are the advantages of undervolting?
Better battery life
Cooler phone, especially useful if you overclock your CPU
What are the disadvantages of undervolting?
That's the great thing! Really the worst that can happen is your phone freezes or reboots. The steps below should eliminate all of that. Once you have undervolted your CPU to just above its freeze/crash levels, there are no disadvantages!
Note: I have had some minor data loss (eg an app forgets a setting) after an undervolting related crash, but it was rare and I believe has to do with the Perseus kernel "Enable dynamic FSync" setting. I note below how to mitigate against this.
What do you need?
A rooted phone, and a kernel that supports undervolting. Perseus and Siyah will work, but any kernel should be fine that supports SetCPU's undervolting schema
SetCPU or you can use a combination of STweaks and Stability Test (use STweaks for setting the frequency and voltage, and use Stability Test's Classic Test for the stress test)
A paper and a pen - I used Sticky Notes as I was at a computer for most of the process
Some patience
Let’s begin.
Open SetCPU. You’ll be greeted by the Main screen which has the min/max CPU frequencies, the governor options, and the IO scheduler options. Reduce the max CPU frequency to the lowest step. On the SGS3 this will be reducing 1400MHz down to 200MHz, so you now have both the min and the max set at 200MHz. The phone will get pretty slow at this point. Ensure the Set on Boot option is unticked
Set the governor to Performance (note: you have to make sure all cores of your CPU are being used. In a complex kernel such as Perseus, you'll have to go into STweaks and set the CPU hotplug lock to 4 so all 4 cores are used. Also note there appears to be a bug in Perseus at the time of writing: you have to set the hotplug lock BEFORE you change the governor to performance)
Move to the Voltages screen
Ensure the Set on Boot option is unticked, and scroll down to the lowest setting, and change it to something low, like 700mV, and then apply it (click the third icon from the right at the top of the screen, a rectangle with a tick on it) . This first setting is always a bit of guess and check, and to be honest you’re hoping for the phone to freeze or crash on this first one. Has it frozen? If so move on to the next step. If not, reduce it by a further 25mV and apply again, repeat until your phone freezes or reboots.
So, you have undervolted too far. Reboot the phone, and perform steps 1-3 again. At step 4, use the voltage that crashed your phone +25mV (eg if it crashed at 675mV, this time set it to 700mV). Now, you have a very slow phone running a low voltage that doesn’t immediately crash it. Move on to the next step
An easy crash test I found was simply allowing the phone to go into deep sleep, and waking it up again. To do this, unplug your phone if it’s charging, and turn the screen off. At this point I usually wrote the time down on my piece of paper, as well as what frequency and voltage I was testing as I’m prone to forget these things. Wait 5 minutes with the screen off (and make sure no notifications have come in while the screen is off – this wakes the phone up and you’ll have to wait another 5 mins), then turn the phone on. You’ll know it’s gone into deep sleep as there’ll be a slight delay before the screen turns on as compared to no delay when turning it off and immediately back on again. If the phone doesn’t turn on, go to step 5. If your phone comes out of deep sleep OK, move on to the next step.
Now, we stress test. In SetCPU scroll over to the Info screen, and scroll down to the Stress Test option. Start it, and note down the time on your paper/Sticky Notes. Your CPU will now run as hard as it can at the current frequency. Let it run for 15-20 minutes. At the lowest frequency it will be pretty laggy and slow, if you think it has frozen always give it 30 seconds to see if it picks up again. If it gets stuck for over a minute, you probably have a crash. Go to step 5. If after 15-20 minutes it’s still running, you have found your first stable(ish) voltage for that frequency! At this point I saved the voltages in SetCPU by pressing the diskette icon. To ensure the changes are written to disk turn the phone screen off for 5 seconds then turn it back on again.
We are now ready for the next frequency. There’s pretty much no way a frequency will run stably on a lower voltage than a frequency below it, so our first voltage for the next frequency up should be the same stable voltage we found for the previous frequency. For example if we found a stable voltage of 725mV on the 200MHz frequency, our first test voltage for 300MHz should be 725mV. Write this down with the frequency on your paper. In the Main screen of SetCPU, change the max frequency to the next step up. Then, in the Voltages screen, adjust the voltage to be the same as the lower frequency, as discussed above. If your phone immediately freezes or reboots, move to the next step. If not, go to step 10.
So, you have undervolted too far, again! Reboot your phone, open up SetCPU, and in the main screen ensure the max frequency is set to the frequency we’re testing. Give the sliding bar things a jiggle to apply it. Ensure the governor is set to Performance by pressing it on the lower left part of the screen. Move to the Voltages screen, and you’ll either see your previous “saved” voltage values ready to be applied in dark grey under the “current” voltage settings, or you’ll have lost your “saved” voltage settings. If you have lost them, never fear; just restore the latest settings by clicking the first from the right icon at the top (a square with an arrow pointing outwards). Adjust the frequency we’re testing’s value to 25mV more than the value you last used when it crashed, and apply it. If it crashes immediately, repeat this step. If not, move on
We now start the two tests in steps 6 and 7 again, but this time if your phone crashes or freezes, go to step 9. If it completes the deep sleep and stress test tests, go to step 8 for the next frequency test.
Sorry for the complexity here, but it was the easiest way I could write it without repeating myself too much. The TL;DR version goes like this:
Pick the lowest untested frequency, set the max frequency to this and the governor to Performance, and find the lowest voltage that doesn’t immediately crash the phone
Put the phone into deep sleep, and see if it crashes. If it does, increase the voltage for the current frequency we’re testing by 25mV and test again. If not, move on
Run a stress test on the phone for 15-20 minutes. If it crashes, raise the voltage by 25mV and go to step B. If it doesn’t crash the current frequency is now tested. Go to step A
You now have a set of frequencies that shouldn’t immediately crash the phone. Set the min and the max frequencies back to normal, and set the governor back to your usual governor. At this point for me I was able to use the phone for about 2 hours before I had my first crash. How running a stress test on each frequency for 20 minutes didn’t pick up this crash situation I’m not sure, but it didn't.
After screwing around for a while I found the easiest solution was to just raise each frequency step by 25mV and then continue every day usage. That was enough to stabilise my phone. If it still crashes for you, keep raising all the values by 25mV until it settles down. After a day or two of no crashes you can start slowly one by one reducing each step by 25mV again to find out which step caused the crash.
After that, you should be done!
===========================================
Please hit "thanks button", if the above information is somehow helpful to you
Thank you all
Reserved 1
Reserved 2
Great info! PVS8 here...
shojus said:
Great info! PVS8 here...
Click to expand...
Click to collapse
Thank you friend..
PVS 6
Manufactured JUNE 21.2014
ADJack said:
PVS 6
Manufactured JUNE 21.2014
Click to expand...
Click to collapse
Have you tried undervolting ?
Mnt-XDA said:
Have you tried undervolting ?
Click to expand...
Click to collapse
Besides rooting and installing PhilZ, I haven't tried anything else.
shojus said:
Great info! PVS8 here...
Click to expand...
Click to collapse
Thank you
1 here...rather disappointing
B3L13V3 said:
1 here...rather disappointing
Click to expand...
Click to collapse
Nothing to disappoint... because it does not indicate speed.
Its about the voltage required to reach a certain speed..
Mine is 2... but I configured it by undervolting
and its now working same as PVS 7 voltage table...
You can try that... and let me know in case of any issue..:good:
PVS7 here. Currently running tests at PVS15.
Will be interesting if it works.
Sent from my GT-N8010 using XDA Premium 4 mobile app
AJ RIMMER! said:
PVS7 here. Currently running tests at PVS15.
Will be interesting if it works.
Sent from my GT-N8010 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
PVS 15 table not worked for me...
7 worked..
I need voltage table form PVS 8 to PVS 14, Can somebody find those for us ?
Then I will try 8,9,10... 14...
PVS 4 here. Undervolted slightly lower than PVS 15. Here's my table:
300Mhz - 700mV
422Mhz - 700mV
652Mhz - 700mV
729Mhz - 700mV
883Mhz - 725mV
960Mhz - 725mV
1036Mhz - 750mV
1190Mhz - 750mV
1267Mhz - 775mV
1497Mhz - 800mV
1574Mhz - 825mV
1728Mhz - 850mV
1958Mhz - 875mV
2265Mhz - 950mV
2457Mhz - 1000mV
And that runs smoothly for you? No problems?
I ran the stress test for about 2 hours and it didn't even blink.
CM11s. Franco r7 Kernel. TWRP 2.7.1.0
Sent from my One, using the XDA app.
No problems for 3 days, ran scaling stability test for 30m and classic for 20m on each freq. I could probably go lower on some, but I bumped everything up by 25mV after they passed the stress test just to be safe.
Well, I just opened FKU and undervolted globally -50mV, used it for some days, and now running on -75mV since yesterday. No probs until now.
I touched global -100mV today, it crashed after screen off/on. Too lazy for finetuning though, the phone's running good enough.
My OPO is PVS8.
Table:
300Mhz - 700mV
422Mhz - 700mV
652Mhz - 700mV
729Mhz - 700mV
883Mhz - 710mV
960Mhz - 720mV
1036Mhz - 730mV
1190Mhz - 750mV
1267Mhz - 760mV
1497Mhz - 790mV
1574Mhz - 800mV
1728Mhz - 825mV
1958Mhz - 870mV
2265Mhz - 930mV
2457Mhz - 965mV
D4rkSoRRoW said:
Well, I just opened FKU and undervolted globally -50mV, used it for some days, and now running on -75mV since yesterday. No probs until now.
I touched global -100mV today, it crashed after screen off/on. Too lazy for finetuning though, the phone's running good enough.
My OPO is PVS8.
Table:
300Mhz - 700mV
422Mhz - 700mV
652Mhz - 700mV
729Mhz - 700mV
883Mhz - 710mV
960Mhz - 720mV
1036Mhz - 730mV
1190Mhz - 750mV
1267Mhz - 760mV
1497Mhz - 790mV
1574Mhz - 800mV
1728Mhz - 825mV
1958Mhz - 870mV
2265Mhz - 930mV
2457Mhz - 965mV
Click to expand...
Click to collapse
Is it the default table for PVS 8 or your modified table ?
Mnt-XDA said:
Is it the default table for PVS 8 or your modified table ?
Click to expand...
Click to collapse
Modified after 75mV UV.
Okay, I'm confused.
I used this command
Code:
su
dmesg | grep PVS
and got this
Code:
<6>[ 1.020314] clock-krait-8974 f9016000.qcom,clock-krait: PVS config version: 1
<6>[ 1.020587] clock-krait-8974 f9016000.qcom,clock-krait: PVS bin: 8
<6>[ 1.020741] clock-krait-8974 f9016000.qcom,clock-krait: PVS version: 1
What does that mean exactly?
I think it's the slowest version because it's obviously version 1.
The second line just tells us what voltage settings are used right?

Possible Tampering?

Hello,
I purchased a used Note 3 from eBay recently and I've been having issues with it. The phone was rooted when it was sent to me. It also still contained the previous owner's personal information so I performed a factory restore of the phone.
However, after the restore, the phone now gives an invalid IMEI message and no network functions work. I attempted to check what the IMEI was on the phone and it returned a message saying:
IMEI(SLOT 1): Unknown, IMEI(SLOT 1): 78.
I then attempted to retrieve the IMEI from under the phone's battery, but there was no information at all under the battery.
So, I now suspected a possibility that the phone had been tampered with so I searched various forums and found discussion about cloned phones having these symptoms.
I scanned the hardware of this phone. So I was wondering if anyone could tell me if based on these specs if there's any reason to suspect anything.
I tried to post pictures of the results but was unable to (new account rule). So here are some of the specs found from the scan of the hardware:
Model: SM-N900 (SM-N900)
Board: lcsh82_wet_jb5
Display: ALPS.JB5.MP.V1.5
Hardware: mt6582
Android Version: 4.4
OpenGL ES Version: 2.0
Kernel Architecture: armv71
Screen Resolution in pixels: 720x1279
Screen resolution in dp: 360 x 639
Screen density; 320 dpi
Total RAM: 966 MB
Internal Storage: 0.99 GB
Available Storage: 0.90 GB
Root Access: Yes
CPU Architecture: ARM Cortex A7
Cores: 4
Revision: r0p3
Process: 38 nm
Clock Speed: 598 MHz - 1.30 GHz
CPU 0: 598 MHz
CPU 1: Stopped
CPU 2: Stopped
CPU 3: Stopped
GPU Vendor: ARM
GPU Renderer: Mali-400 MP
Scaling Governor: hotplug
Battery Voltage: 4221 mV
Thank you for any assistance.
Looks like a clone
That's bad mate. I'd be fuming.
Sent from my SM-N9005 using XDA Free mobile app
kill the seller, it's a cheap clone xD
Fake.
StagnantSloth said:
Hello,
I purchased a used Note 3 from eBay recently and I've been having issues with it. The phone was rooted when it was sent to me. It also still contained the previous owner's personal information so I performed a factory restore of the phone.
However, after the restore, the phone now gives an invalid IMEI message and no network functions work. I attempted to check what the IMEI was on the phone and it returned a message saying:
IMEI(SLOT 1): Unknown, IMEI(SLOT 1): 78.
I then attempted to retrieve the IMEI from under the phone's battery, but there was no information at all under the battery.
So, I now suspected a possibility that the phone had been tampered with so I searched various forums and found discussion about cloned phones having these symptoms.
I scanned the hardware of this phone. So I was wondering if anyone could tell me if based on these specs if there's any reason to suspect anything.
I tried to post pictures of the results but was unable to (new account rule). So here are some of the specs found from the scan of the hardware:
Model: SM-N900 (SM-N900)
Board: lcsh82_wet_jb5
Display: ALPS.JB5.MP.V1.5
Hardware: mt6582
Android Version: 4.4
OpenGL ES Version: 2.0
Kernel Architecture: armv71
Screen Resolution in pixels: 720x1279
Screen resolution in dp: 360 x 639
Screen density; 320 dpi
Total RAM: 966 MB
Internal Storage: 0.99 GB
Available Storage: 0.90 GB
Root Access: Yes
CPU Architecture: ARM Cortex A7
Cores: 4
Revision: r0p3
Process: 38 nm
Clock Speed: 598 MHz - 1.30 GHz
CPU 0: 598 MHz
CPU 1: Stopped
CPU 2: Stopped
CPU 3: Stopped
GPU Vendor: ARM
GPU Renderer: Mali-400 MP
Scaling Governor: hotplug
Battery Voltage: 4221 mV
Thank you for any assistance.
Click to expand...
Click to collapse
It appears to be fake.
You can use Phone INFO ★Samsung★ app > Menu > 'Refurbishment Check' for more information.
it's a Pure Cheap A$$ Fake. How much did you pay for it ???
N1NJATH3ORY said:
it's a Pure Cheap A$$ Fake. How much did you pay for it ???
Click to expand...
Click to collapse
It was $358.00
Thank you for all the responses and for confirming my suspicions. :good:
Could anyone point out a few of the specific parts of the specs that don't match that of a genuine Note 3?
Thank you in advance!
Many differences, including the CPU, RAM, screen resolution, etc...
Sent from my SM-N9005 using Tapatalk
StagnantSloth said:
It was $358.00
Click to expand...
Click to collapse
wow thats a pure rip off how long has it been since you purchased it ??
StagnantSloth said:
Model: SM-N900 (SM-N900)
Board: lcsh82_wet_jb5
Display: ALPS.JB5.MP.V1.5
Hardware: mt6582
Android Version: 4.4
OpenGL ES Version: 2.0
Kernel Architecture: armv71
Screen Resolution in pixels: 720x1279
Screen resolution in dp: 360 x 639
Screen density; 320 dpi
Total RAM: 966 MB
Internal Storage: 0.99 GB
Available Storage: 0.90 GB
Root Access: Yes
CPU Architecture: ARM Cortex A7 (Exynos comes with N900)
Cores: 4 (With an N900 device you should have 8 cores)
Revision: r0p3
Process: 38 nm
Clock Speed: 598 MHz - 1.30 GHz
CPU 0: 598 MHz
CPU 1: Stopped
CPU 2: Stopped
CPU 3: Stopped
GPU Vendor: ARM
GPU Renderer: Mali-400 MP
Scaling Governor: hotplug (Should be defaulted to interactive on 4.4)
Battery Voltage: 4221 mV
Click to expand...
Click to collapse
Pointed out all the errors in the specs.
Thank you for all the replies to this thread. The issue was resolved with a full refund from the seller.
already answered...
StagnantSloth said:
Thank you for all the replies to this thread. The issue was resolved with a full refund from the seller.
Click to expand...
Click to collapse
What was the seller's response when you raised this issue with him?

Recording capabilities and hopefully mods

This mod has been done, but still a WIP. Check it out here: http://forum.xda-developers.com/note-4-sprint/themes-apps/mod-camera-quality-mod-t2917501/
This may still be updated for developers, i just wont be updating it often
Back in the past I tried to increase the limit of the note 3s video recording size, I was able to increase the length of video but the file size limit seemed to always stop at 3.8GB (or in any case 4GB "4,294,967,296" FFFFFFFF). Now I would like to get this started back up fresh and new. I am asking for the help of developers to help me find what is causing the video recording to stop at 3.8GB if the note 4 has this same problem which I imagine it will.
If interested in helping please comment here or message me. I am seriously dedicating 99% of my free time to figure this out due to wanting to record longer than 13 minutes (most I could get out of 4k on the note 3).
Also hoping to increase quality of pictures and of all video modes. I know how to decomplie but not sure how to recompile or read everything in the file. So I am asking for others help on this project. I was pretty upset to fail on the note 3 but the note 4 looks to be another potential project.
Ill be out for the next few days for a interview but here are the smali files to look through. Maxfilesize or MaxRecording size were used in the note3 but i cant seem to find it in here so they might be using something different. Anyone know hex?
https://dl.dropboxusercontent.com/u/38128929/app.rar
Ok here's what I've found so far:
Oct 24th 2014
JPEG QUALITY
CameraSettings.smali - Line 2732 -
const/16 v0, 0x60
0x60 = 96%
0x61 = 97%
0x62 = 98%
0x63 = 99%
0x64 = 100%
RECORD TIME
CommonEngine.smali - Line 148 -
.field private static final MAX_DUAL_FHD_RECORD_TIME:I = 0x12c
CommonEngine.smali - Line 150 -
.field private static final MAX_DUAL_HD_RECORD_TIME:I = 0x258
CommonEngine.smali - Line 154 -
.field private static final MAX_SMOOTH_MOTION_RECORD_TIME:I = 0x258
CommonEngine.smali - Line 156 -
.field private static final MAX_UHD_RECORD_TIME:I = 0x12c
CommonEngine.smali - Line 158 -
.field private static final MAX_VIDEO_FILE_SIZE:J = 0xffffffffL
0x12c = 300 (in seconds) = 5 (minutes)
0x258 = 600 (in seconds) = 10 (minutes)
0x384 = 900 (in seconds) = 15 (minutes)
0xffffffffL = 4294967295 (in bytes) = 4 (Gigabytes)
RECORD QUALITY
1920x1080 recording
MediaRecorderProfile.smali - Line 756 -
.line 72
:array_0
.array-data 0x4
0x2t 0x0t 0x0t 0x0t (Dont touch)
0x40t 0x66t 0x3t 0x1t (Adjust this for bitrate see notes below in red)
0xc0t 0xe1t 0xe4t 0x0t (Dont touch)
0x40t 0x5dt 0xc6t 0x0t (Dont touch)
0x1et 0x0t 0x0t 0x0t (FPS but not sure if the note 4 can handle higher)
0x2t 0x0t 0x0t 0x0t (Dont touch)
0x3t 0x0t 0x0t 0x0t (Dont touch)
0x0t 0xe8t 0x3t 0x0t (Audio bitrate in bits "see notes below in yellow")
0x2t 0x0t 0x0t 0x0t (Dont touch)
0x80t 0xbbt 0x0t 0x0t (Sampling rate in hz "see notes below in Green")
.end array-data
0x40t 0x66t 0x3t 0x1t = 0x136604 = 1271300 = 12Mbits
so
0x80t 0x84t 0xet 0x1t = 0x1E8480 = 2000000 = 20Mbits
Not sure about this section yet
0x80t 0xbbt 0x0t 0x0t = 0xbb80 = 48000
so
0x00t 0x7dt 0x0t 0x0t = 32000 (According to alexhc18 that decreases background hissing)
Gonna tag a few who have helped in the past
ALEXHC18 said:
Tag
Click to expand...
Click to collapse
evolone said:
Tag
Click to expand...
Click to collapse
meawww said:
Tag
Click to expand...
Click to collapse
killa12222 said:
Tag
Click to expand...
Click to collapse
Interesting. Does the stock Note 4 have a 5 minute limit like the Note 3? I record alot of videos for YouTube and I never actually planned to record in 4K.
Can someone tell me if there is a SamsungCamera.apk or SecCamera.apk under /system/apps? Don't want to root just yet but I want to start digging
Yes note 4 has 5 min limit
Just use open camera when you know you will need more. You can tell it to use ext sd you can also tell it to auto restart after x minutes AND you can increase the bit rate. Wicked nice app.
---------- Post added at 10:55 PM ---------- Previous post was at 10:52 PM ----------
No to both of those files kevin. There is a samsungcamera3.apk and no seccamera at all
nerys71 said:
Yes note 4 has 5 min limit
Just use open camera when you know you will need more. You can tell it to use ext sd you can also tell it to auto restart after x minutes AND you can increase the bit rate. Wicked nice app.
---------- Post added at 10:55 PM ---------- Previous post was at 10:52 PM ----------
No to both of those files kevin. There is a samsungcamera3.apk and no seccamera at all
Click to expand...
Click to collapse
Someone sent me the samsungcamera3 apk and im hopefully going to tear it down tonight to get the 5 min limit extended to 15 minutes (hopefully) and the bitrate turned up
Nice. What we need is a file size limit not a time limit. Ie stop at 3.99gb or whatever the actual file system limit is.
nerys71 said:
Nice. What we need is a file size limit not a time limit. Ie stop at 3.99gb or whatever the actual file system limit is.
Click to expand...
Click to collapse
file size aint gonna happen... unless someone knows how to rewrite 32 bit code to 64 bit
I know you can't record longer than 5 minutes on the internal sd because of the filesystem. However, has anyone tried formatting an external sd with ntfs, or ext4 to see if the camera app will read it? I think that might be the key to this problem.
quick edit: I would try it myself, but I'm still looking for a 32gb microSD I dropped in this room last week. Damn my decision to paint my walls midnight blue, and lay down dark bamboo laminate flooring. Great for a computer room.....bad for finding anything dark that's dropped......grrrrrrrrrr
currentuserjade said:
I know you can't record longer than 5 minutes on the internal sd because of the filesystem. However, has anyone tried formatting an external sd with ntfs, or ext4 to see if the camera app will read it? I think that might be the key to this problem.
quick edit: I would try it myself, but I'm still looking for a 32gb microSD I dropped in this room last week. Damn my decision to paint my walls midnight blue, and lay down dark bamboo laminate flooring. Great for a computer room.....bad for finding anything dark that's dropped......grrrrrrrrrr
Click to expand...
Click to collapse
Heres the thing. Its not a filesystem limit. It is a ffffffff limit which means 4gb. That is 32 bit and the max file size. The recording time is set to 5 minutes but in all reality 5 minutes is actually around 1.4gb. I can set the record time to 6 million minutes but as long as there is a 32 bit limit of ffffffff its not possible to go further. I have a 128gb sdcard. Now if youd like to help there are a few framework files i need to actually start ripping this apart to start looking at it
framework-res, twframework-res, and SystemUI.
I need those from system
I couldn't find systemui but have the other two files for you:
https://www.dropbox.com/sh/yt0kidzmiymcj52/AACZQCMz3zemSKRuAfa5vCfLa?dl=0
Here is the systemui
https://www.dropbox.com/s/ux90k5hdroebxfq/SystemUI.apk?dl=0
On my device 5 minutes usually ends up around 2.8gb ???
I am interested in this. I am planning to upgrade my YouTube channel to WQHD, not going 4K till smartphones come in 4K. So dropping the 5 minute limit for WQHD would be handy.
nerys71 said:
Nice. What we need is a file size limit not a time limit. Ie stop at 3.99gb or whatever the actual file system limit is.
Click to expand...
Click to collapse
hermeticist said:
I couldn't find systemui but have the other two files for you:
https://www.dropbox.com/sh/yt0kidzmiymcj52/AACZQCMz3zemSKRuAfa5vCfLa?dl=0
Click to expand...
Click to collapse
CJPRICO said:
Here is the systemui
https://www.dropbox.com/s/ux90k5hdroebxfq/SystemUI.apk?dl=0
Click to expand...
Click to collapse
thank ya! Time to start ripping this apart
gpvlog said:
I am interested in this. I am planning to upgrade my YouTube channel to WQHD, not going 4K till smartphones come in 4K. So dropping the 5 minute limit for WQHD would be handy.
Click to expand...
Click to collapse
Ill do the best I can!
Ill be out for the next few days for a interview but here are the smali files to look through. Maxfilesize or MaxRecording size were used in the note3 but i cant seem to find it in here so they might be using something different. Anyone know hex?
https://dl.dropboxusercontent.com/u/38128929/app.rar
Added some info to the 1st post
Found all points to increase jpeg quality, video quality and video length!
I was testing WQHD and found that i can get around 22 minutes into a 4 gig block or around 180 megs per minute.
This mod would be so helpfull allowing me to increase the time limite to 22 minutes.

CPU binning PVS

Anyone no where the CPU/ PVS binning is located on the N6P 
I'm not really sure, but I found this in the output of the dmesg command (straight after a reboot):
Code:
[ 0.385299] cpu-clock-8994 f9015000.qcom,cpu-clock-8994: using A57 speed bin 0 and pvs_ver 0
JustinTrouble said:
I'm not really sure, but I found this in the output of the dmesg command (straight after a reboot):
Code:
[ 0.385299] cpu-clock-8994 f9015000.qcom,cpu-clock-8994: using A57 speed bin 0 and pvs_ver 0
Click to expand...
Click to collapse
I got the same, I'd like to know what binning these have and which is best. Doesn't look like thats the binning unless it starts at 0
Sent from my Nexus 6P using Tapatalk
I also had a look at another 6P, which reported the same: cpu-clock-8994 f9015000.qcom,cpu-clock-8994: using A57 speed bin 0 and pvs_ver 0
I wonder if the CPU binning is no longer reported in dmesg.
I wonder if we could determine it from cpr_adjust_init_voltages, which differed on my two 6Ps.
I can't remember where in Android the voltages are defined, to compare them.
The first 6P:
Code:
[ 0.273414] cpr_adjust_init_voltages: apc0_corner: adjusted initial voltage[2]: [B]880000 -> 855000[/B] uV
[ 0.273435] cpr_adjust_init_voltages: apc0_corner: adjusted initial voltage[3]: 930000 -> 905000 uV
[ 0.273464] cpr_pvs_init: apc0_corner: pvs voltage: [[B]780000 855000[/B] 905000[B] 1145000[/B]] uV
[ 0.274333] cpr_adjust_init_voltages: apc1_corner: adjusted initial voltage[3]: 950000 -> 925000 uV
[ 0.274355] cpr_adjust_init_voltages: apc1_corner: adjusted initial voltage[4]: 1145000 -> 1110000 uV
[ 0.274375] cpr_pvs_init: apc1_corner: pvs voltage: [840000 840000 925000 1110000] uV
The second 6P:
Code:
[ 0.272297] cpr_adjust_init_voltages: apc0_corner: adjusted initial voltage[2]: [B]860000 -> 835000[/B] uV
[ 0.272318] cpr_adjust_init_voltages: apc0_corner: adjusted initial voltage[3]: 930000 -> 905000 uV
[ 0.272346] cpr_pvs_init: apc0_corner: pvs voltage: [[B]760000 835000[/B] 905000 [B]1125000[/B]] uV
[ 0.273220] cpr_adjust_init_voltages: apc1_corner: adjusted initial voltage[3]: 950000 -> 925000 uV
[ 0.273242] cpr_adjust_init_voltages: apc1_corner: adjusted initial voltage[4]: 1145000 -> 1110000 uV
[ 0.273261] cpr_pvs_init: apc1_corner: pvs voltage: [840000 840000 925000 1110000] uV
Nobody has found where this information is located?
Sent from my Nexus 6P using Tapatalk
I would like to know where the CPU binning is located since its not in the usual place like on the 32bit SD805
Any updates?
I'm curious as well. I looked thru system with root explorer but had no luck.
I am still very interested in some insight into this
App to detect CPU quality and bin
Hi guys,
I would like to let you know that we've developed an app that should help identify CPU bin differences.
The app will inform you of your CPU bin if your device is rooted, otherwise, it runs a 'benchmark' to detect how good/bad your CPU is relative to other user's devices.
On older SoCs, like the Snapdragon 800, it was straightforward to determine the quality of the CPU from the CPU bin number. This is no longer the case with SoCs containing heterogeneous cores such as the Nexus 6P. Newer SoCs use AVS (Adaptive Voltage Scaling) rather than PVS (Passive Voltage Scaling) and thus, the voltages are determined by the device at runtime. To the best of our knowledge, there is no longer a simple CPU bin number that tells you how good or bad your chip is. Even if you did get hold of a CPU bin number, is a higher bin number really better? (dl.acm.org/citation.cfm?id=3032982)
Today, we're left with trying to determine the quality of our devices by running benchmarks and comparing the scores obtained. One of the biggest problems with benchmarks is that they don't account for temperature; both CPU and ambient. A good CPU running at room temperature can never match up to a bad CPU running inside, say, a refrigerator. Thus, benchmark results are skewed in favor of those that ran at lower ambient temperatures. Often, in benchmarks like Antutu, we're left with the scores of our device and the scores of the top 50 devices overall; a list in which our device model may not even make an appearance.
Our app is designed to account for both CPU temperature and ambient temperature. Comparisons between the results of your phone and others of the same make & model are further filtered based on temperature.
In other words, if you ran an experiment in a very cold environment, your results are compared against other iterations that ran under similar conditions.
We've had good success in identifying the quality of CPUs on the Nexus 5 and Nexus 6. We're trying to get the word out and collect data from a larger set of devices. Do note that the app is experimental and may have a few bugs. However, I'm actively working on improving it to providing better and more accurate results. Our end goal is to be able to allow users to run our app and get to know the quality of their smartphone before they buy it.
The app is available for Android on the PlayStore at:
Code:
play.google.com/store/apps/details?id=edu.buffalo.cse.phonelab.smartphonesexposed

Categories

Resources