[Galaxy S6 Android Development] Setialpha:
note that

next version

part, though I agree my wording was ambigous.

Development Update for 3.1:

I'm currently working on an kernel independent shell script (with configuration files) for changing kernel values (yay for no more Synapse or Kernel Adiutor).

Here's what I got so far, if you wanna test before release [only for advanced users and only if you now what mkdir/chmod means].

First rm /system/su.d/96kernel, uninstall Synapse / Kernel Adiutor or whatever from your system and mkdir /system/etc/kernel.

Save the following as 999kernel (and cp to /system/su.d/ and make executable (chmod 0755))

#!/system/bin/bash

kernel=$(uname -r)

# default settings based on kernel
#
# Note: Kernel Adiutor or Synapse will override those settings
#
# Note: for custom settings use
#	/system/etc/kernel/custom.settings
# which MUST include values for all variables!

if [[ ! -f /etc/kernel/custom.settings ]]; then

case ${kernel} in

*arter97* )
source /etc/kernel/arter97.settings
;;

*Hacker* )
source /etc/kernel/hacker.settings
;;

* )
source /etc/kernel/stock.settings
;;
esac

else	source /etc/kernel/custom.settings
fi

# Get available CPU governors:
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
for core in {0..7}; do
chmod 644 /sys/devices/system/cpu/cpu${core}/cpufreq/scaling_governor
echo ${cpu_governor} > /sys/devices/system/cpu/cpu${core}/cpufreq/scaling_governor
chmod 444 /sys/devices/system/cpu/cpu${core}/cpufreq/scaling_governor
done

# Power Suspend Mode:
# 0	Autosleep (not working on arter97)
# 1	Userspace
# 2	LCD
# 3	Hybrid (not working on arter97)
echo ${power_suspend_mode} > /sys/kernel/power_suspend/power_suspend_mode

# Screen-Off kernel power management:
# 0	Off
# 1	On (only working with Mode=1 (Userspace))
chmod 644 /sys/kernel/power_suspend/power_suspend_state
echo ${power_suspend_state} > /sys/kernel/power_suspend/power_suspend_state
chmod 444 /sys/kernel/power_suspend/power_suspend_state

echo ${gentle_fair_sleepers} > /sys/kernel/sched/gentle_fair_sleepers

# Architecture specific power optimizations
echo ${arch_power} > /sys/kernel/sched/arch_power

# Get available clock speeds:
# low
# cat /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster0_freq_table
# big
# cat /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster1_freq_table
echo ${low_max_freq} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster0_max_freq
echo ${low_min_freq} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster0_min_freq
echo ${big_max_freq} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster1_max_freq
echo ${big_min_freq} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster1_min_freq

# Voltage Table
for key in ${low_volt_table[@]}; do
freq=${key/:*/}
volt=${key/*:/}
echo ${freq} ${volt} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster0_volt_table
done

for key in ${big_volt_table[@]}; do
freq=${key/:*/}
volt=${key/*:/}
echo ${freq} ${volt} > /sys/devices/system/cpu/cpufreq/mp-cpufreq/cluster1_volt_table
done

# TCP congestion control
sysctl -wq net.ipv4.tcp_congestion_control=${tcp_congestion}

# Get available I/O schedulers:
# cat /sys/block/sda/queue/scheduler
chmod 0644 /sys/block/sda/queue/scheduler
echo ${io_scheduler} > /sys/block/sda/queue/scheduler
chmod 0444 /sys/block/sda/queue/scheduler
echo ${io_readahead} > /sys/block/sda/queue/read_ahead_kb

cp the following as /system/etc/kernel/arter97.settings

# kernel settings for arter97 kernel

cpu_governor=userspace
io_scheduler=fiops
io_readahead=2048
tcp_congestion=westwood
power_suspend_mode=2
power_suspend_state=0
gentle_fair_sleepers=0
big_max_freq=2400000
big_min_freq=200000
low_max_freq=1800000
low_min_freq=200000
arch_power=0

# increment by multiples of 6250
# eg: 625000 > 631250 > 637500 > 643750
low_volt_table=(1800000:500000
1704000:625000
1600000:500000
1500000:637500
1400000:975000
1296000:925000
1200000:887500
1104000:850000
1000000:812500
900000:775000
800000:737500
700000:706250
600000:681250
500000:656250
400000:631250
300000:625000
200000:625000)

big_volt_table=(2400000:1062500
2304000:1062500
2200000:1062500
2100000:1050000
2000000:1012500
1896000:975000
1800000:937500
1704000:906250
1600000:875000
1500000:843750
1400000:818750
1300000:793750
1200000:775000
1100000:750000
1000000:725000
900000:706250
800000:687500
700000:668750
600000:650000
500000:650000
400000:650000
300000:650000
200000:625000)

cp the following as /system/etc/kernel/hacker.settings

# Kernel settings for Hacker

cpu_governor=userspace
io_scheduler=sioplus
io_readahead=2048
tcp_congestion=reno
power_suspend_mode=1
power_suspend_state=1
gentle_fair_sleepers=1
big_max_freq=2400000
big_min_freq=200000
low_max_freq=1800000
low_min_freq=200000
arch_power=1

# increment by multiples of 6250
# eg: 625000 > 631250 > 637500 > 643750
low_volt_table=(1800000:500000
1704000:625000
1600000:500000
1500000:637500
1400000:975000
1296000:925000
1200000:887500
1104000:850000
1000000:812500
900000:775000
800000:737500
700000:706250
600000:681250
500000:656250
400000:631250
300000:625000
200000:625000)

big_volt_table=(2400000:1062500
2304000:1062500
2200000:1062500
2100000:1050000
2000000:1012500
1896000:975000
1800000:937500
1704000:906250
1600000:875000
1500000:843750
1400000:818750
1300000:793750
1200000:775000
1100000:750000
1000000:725000
900000:706250
800000:687500
700000:668750
600000:650000
500000:650000
400000:650000
300000:650000
200000:625000)

cp the following as /system/etc/kernel/stock.settings

# Kernel settings for Stock

cpu_governor=userspace
io_scheduler=cfq
io_readahead=2048
tcp_congestion=cubic
power_suspend_mode=2
power_suspend_state=0
gentle_fair_sleepers=0
big_max_freq=2400000
big_min_freq=200000
low_max_freq=1800000
low_min_freq=200000
arch_power=0

# increment by multiples of 6250
# eg: 625000 > 631250 > 637500 > 643750
low_volt_table=(1800000:500000
1704000:625000
1600000:500000
1500000:637500
1400000:975000
1296000:925000
1200000:887500
1104000:850000
1000000:812500
900000:775000
800000:737500
700000:706250
600000:681250
500000:656250
400000:631250
300000:625000
200000:625000)

big_volt_table=(2400000:1062500
2304000:1062500
2200000:1062500
2100000:1050000
2000000:1012500
1896000:975000
1800000:937500
1704000:906250
1600000:875000
1500000:843750
1400000:818750
1300000:793750
1200000:775000
1100000:750000
1000000:725000
900000:706250
800000:687500
700000:668750
600000:650000
500000:650000
400000:650000
300000:650000
200000:625000)

You can modify the values and save your custom configuration as /system/etc/kernel/custom.settings