[Xperia Z1 Original Android Development] krabappel2548:
Reserved

== Kernel FAQ - GPU OC - Voltage Control - Sound Control==

Entering recovery

While booting, your device will vibrate and LED will turn puple while you see the sony kernel logo. When the phone vibrates, you need to press volume up or volume down to enter the recovery you like:

- Volume up: CWM Touch recovery

- Volume down: TWRP Touch recovery

GPU OC

OVERCLOCKING GPU WILL REDUCE BATTERY LIFE!

you can overclock/underclock GPU manually via scripts/commands...

[ how to do this manually/script ]

To check current max clock of GPU clock use:

cat /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/max_gpuclk

To set GPU to particular frequency (overclock or underclock) use:

echo 533333000 > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/max_gpuclk

available scaling frequencies are:

[LIST]
[*]600000000 - 600 MHz
[*]533333000 - 533 MHz
[*]450000000 - 450 MHz (DEFAULT)
[*]320000000 - 320 MHz
[*]200000000 - 200 MHz
[/LIST]

Voltage Control

All credits for this interface go to Faux123!

WARNING!

DO NOT USE TOO HIGH OR TOO LOW VOLTAGES, SLOWLY increase the voltage one notch at a time for a particular frequency and do stability/testing for few hours. once you have verified that you CPU chip can handle that voltage ONLY then "Set at boot"/Use init.d script

You can either use an APP (like IncrediControl) [others mentioned in OP] or use an init.d script to do the work...

to see current voltage table use:

[B]cat /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels[/B]

to set voltage for a particular frequency:

[B]echo 1512000 1150000 > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels[/B]

will set 1512Mhz freq voltage at 1150mV

to reduce voltages for ALL frequencies:

[B]echo -25000 > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels[/B]

to increase voltages for ALL frequencies:

[B]echo +25000 > /sys/devices/system/cpu/cpufreq/vdd_table/vdd_levels[/B]

Sound Control

Kernel level Sound Control

This feature has been added by faux123 himself!

The sources for this feature are covered under GPL and are released along with my kernel sources at my GITHUB repo.

[ WARNING ]

high volume can damage hearing!

Krabappel2548, DooMLoRD or faux123 are not to be held responsible if this damages ur headphones/speakers/etc

USE THIS AT YOUR OWN RISK!

There are two ways to use this interface.

manual control through sysfs interface

paid app (FauxSound Audio/Sound Control)

How to use the app FauxSound Audio/Sound Control is pretty self explanatory so I will write on how to control using the sysfs interface...

BEFORE DOING ANY ADJUSTMENTS EXIT THE APPS LIKE MUSIC PLAYER/etc!!

The interface to control the sound output is located at:

[B]/sys/kernel/sound_control_3[/B]

it has 4 control interfaces:

Camera MIC

/sys/kernel/sound_control_3/gpl_cam_mic_gain

Headphone

/sys/kernel/sound_control_3/gpl_headphone_gain

MIC

/sys/kernel/sound_control_3/gpl_mic_gain

Internal Speaker

/sys/kernel/sound_control_3/gpl_speaker_gain

each supports gain levels from 20 (-20) to 50 (+10), base is 40 (0)

(the number in the brackets correspond to the numbers displayed in the app)

say if u want to boost headphone output (both left and right channels) then use the following command:

echo "44 44" > /sys/kernel/sound_control_3/gpl_headphone_gain

u can also individually increase/decrease the gain for each right and left channel

similarly other interfaces can be controlled

TIP:

do not jump to maximum values as sometimes the headphones/speakers might start distorting the audio... slowly increase and do testing for the levels which suit you!

not all accessories will work well with boosted audio output