diff --git a/anykernel.sh b/anykernel.sh index 3f4155e..f4f2653 100644 --- a/anykernel.sh +++ b/anykernel.sh @@ -12,7 +12,7 @@ do.systemless=1 do.cleanup=1 do.cleanuponabort=0 device.name1=tissot -supported.versions=9 - 12 +supported.versions=9 - 12.1 supported.patchlevels= '; } # end properties @@ -37,8 +37,21 @@ set_perm_recursive 0 0 750 750 $ramdisk/init* $ramdisk/sbin; ## AnyKernel boot install dump_boot; # begin ramdisk changes +# Clean up other kernels' ramdisk overlay.d files +rm -rf $ramdisk/overlay.d +# Add our ramdisk files if Magisk is installed +if [ -d $ramdisk/.backup ]; then + ui_print " "; ui_print "Installing Spectrum..." + mv /tmp/anykernel/overlay.d $ramdisk/overlay.d + cp -f /system_root/init.rc $ramdisk/overlay.d + sleep 2 + insert_line $ramdisk/overlay.d/init.rc "init.spectrum.rc" after 'import /init.usb.rc' "import /init.spectrum.rc" + ui_print "Spectrum installed succesfully" + set_perm_recursive 0 0 750 750 $ramdisk/* +fi; + write_boot; ## end boot install -ui_print "Cakeby Kernel OC Installed Succesfully"; \ No newline at end of file +ui_print "Cakeby Kernel OC Installed Succesfully"; diff --git a/overlay.d/init.spectrum.rc b/overlay.d/init.spectrum.rc new file mode 100644 index 0000000..c000fe4 --- /dev/null +++ b/overlay.d/init.spectrum.rc @@ -0,0 +1,143 @@ +# SPECTRUM KERNEL MANAGER +# Ramdisk file for profile based kernel management + +# Initialization +on property:sys.boot_completed=1 + # Set default profile on first boot + exec u:r:init:s0 root root -- /init.spectrum.sh + exec u:r:su:s0 root root -- /init.spectrum.sh + # Enable Spectrum support + setprop spectrum.support 1 + # Add kernel name + setprop persist.spectrum.kernel Cakeby + + #Kcal + write /sys/devices/platform/kcal_ctrl.0/kcal 256 256 256 + write /sys/devices/platform/kcal_ctrl.0/kcal_enable 1 + write /sys/devices/platform/kcal_ctrl.0/kcal_sat 262 + write /sys/devices/platform/kcal_ctrl.0/kcal_val 253 + write /sys/devices/platform/kcal_ctrl.0/kcal_cont 248 + write /sys/devices/platform/kcal_ctrl.0/kcal_hue 0 + write /sys/devices/platform/kcal_ctrl.0/kcal_min 35 + +# Balance (default profile) +on property:persist.spectrum.profile=0 + #CPU + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor schedutil + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 652800 + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 2016000 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor schedutil + write /sys/devices/system/cpu/cpufreq/schedutil/up_rate_limit_us 850 + write /sys/devices/system/cpu/cpufreq/schedutil/down_rate_limit_us 3000 + write /sys/devices/system/cpu/cpufreq/schedutil/hispeed_load 85 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq 652800 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq 2016000 + write /sys/devices/system/cpu/cpufreq/schedutil/pl 1 + write /sys/module/msm_performance/parameters/touchboost 0 + write /sys/module/workqueue/parameters/power_efficient N + write /sys/devices/system/cpu/cpu0/online 1 + write /sys/devices/system/cpu/cpu1/online 1 + write /sys/devices/system/cpu/cpu2/online 1 + write /sys/devices/system/cpu/cpu3/online 1 + write /sys/devices/system/cpu/cpu4/online 1 + write /sys/devices/system/cpu/cpu5/online 1 + write /sys/devices/system/cpu/cpu6/online 1 + write /sys/devices/system/cpu/cpu7/online 1 + + #I/O + write /sys/block/mmcblk1/queue/scheduler maple + + #GPU + write /sys/class/kgsl/kgsl-3d0/devfreq/governor msm-adreno-tz + write /sys/module/adreno_idler/parameters/adreno_idler_active 1 + write /sys/module/adreno_idler/parameters/adreno_idler_idlewait 30 + write /sys/module/adreno_idler/parameters/adreno_idler_idleworkload 4000 + write /sys/class/kgsl/kgsl-3d0/devfreq/min_freq 133300000 + write /sys/class/kgsl/kgsl-3d0/max_gpuclk 800000000 + +# Performance +on property:persist.spectrum.profile=1 + #CPU + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor performance + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 1747000 + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 2016000 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor performance + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq 1747000 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq 2016000 + write /sys/module/msm_performance/parameters/touchboost 1 + write /sys/module/workqueue/parameters/power_efficient N + write /sys/devices/system/cpu/cpu0/online 1 + write /sys/devices/system/cpu/cpu1/online 1 + write /sys/devices/system/cpu/cpu2/online 1 + write /sys/devices/system/cpu/cpu3/online 1 + write /sys/devices/system/cpu/cpu4/online 1 + write /sys/devices/system/cpu/cpu5/online 1 + write /sys/devices/system/cpu/cpu6/online 1 + write /sys/devices/system/cpu/cpu7/online 1 + + #I/O + write /sys/block/mmcblk1/queue/scheduler maple + #GPU + write /sys/class/kgsl/kgsl-3d0/devfreq/governor msm-adreno-tz + write /sys/module/adreno_idler/parameters/adreno_idler_active 0 + write /sys/module/adreno_idler/parameters/adreno_idler_idlewait 15 + write /sys/module/adreno_idler/parameters/adreno_idler_idleworkload 7000 + write /sys/class/kgsl/kgsl-3d0/devfreq/min_freq 500000000 + write /sys/class/kgsl/kgsl-3d0/max_gpuclk 800000000 + +# Battery +on property:persist.spectrum.profile=2 + #CPU + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ondemand + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 652800 + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 1401600 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor ondemand + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq 652800 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq 1401600 + write /sys/devices/system/cpu/cpu0/online 1 + write /sys/devices/system/cpu/cpu1/online 1 + write /sys/devices/system/cpu/cpu2/online 1 + write /sys/devices/system/cpu/cpu3/online 1 + write /sys/devices/system/cpu/cpu4/online 1 + write /sys/devices/system/cpu/cpu5/online 1 + write /sys/devices/system/cpu/cpu6/online 1 + write /sys/devices/system/cpu/cpu7/online 1 + + #I/O + write /sys/block/mmcblk1/queue/scheduler maple + + #GPU + write /sys/class/kgsl/kgsl-3d0/devfreq/governor simple_ondemand + write /sys/class/kgsl/kgsl-3d0/devfreq/min_freq 133300000 + write /sys/class/kgsl/kgsl-3d0/max_gpuclk 500000000 + write /sys/module/adreno_idler/parameters/adreno_idler_active 1 + write /sys/module/adreno_idler/parameters/adreno_idler_idlewait 15 + write /sys/module/adreno_idler/parameters/adreno_idler_idleworkload 4000 + +# Gaming +on property:persist.spectrum.profile=3 + #CPU + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor performance + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 2016000 + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 2016000 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor performance + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq 2016000 + write /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq 2016000 + write /sys/module/msm_performance/parameters/touchboost 1 + write /sys/module/workqueue/parameters/power_efficient N + write /sys/devices/system/cpu/cpu0/online 1 + write /sys/devices/system/cpu/cpu1/online 1 + write /sys/devices/system/cpu/cpu2/online 1 + write /sys/devices/system/cpu/cpu3/online 1 + write /sys/devices/system/cpu/cpu4/online 1 + write /sys/devices/system/cpu/cpu5/online 1 + write /sys/devices/system/cpu/cpu6/online 1 + write /sys/devices/system/cpu/cpu7/online 1 + + #GPU + write /sys/class/kgsl/kgsl-3d0/devfreq/governor performance + write /sys/class/kgsl/kgsl-3d0/devfreq/min_freq 600000000 + write /sys/class/kgsl/kgsl-3d0/max_gpuclk 800000000 + write /sys/module/adreno_idler/parameters/adreno_idler_active 0 + write /sys/module/adreno_idler/parameters/adreno_idler_idlewait 15 + write /sys/module/adreno_idler/parameters/adreno_idler_idleworkload 7000 diff --git a/overlay.d/init.spectrum.sh b/overlay.d/init.spectrum.sh new file mode 100644 index 0000000..764f9cb --- /dev/null +++ b/overlay.d/init.spectrum.sh @@ -0,0 +1,8 @@ +#!/system/bin/sh +# SPECTRUM KERNEL MANAGER +# Profile initialization script by nathanchance + +# If there is not a persist value, we need to set one +if [ ! -f /data/property/persist.spectrum.profile ]; then + setprop persist.spectrum.profile 0 +fi diff --git a/overlay.d/sbin/ak-post_boot.sh b/overlay.d/sbin/ak-post_boot.sh new file mode 100644 index 0000000..d64583a --- /dev/null +++ b/overlay.d/sbin/ak-post_boot.sh @@ -0,0 +1,21 @@ +#!/system/bin/sh +BB=/sbin/busybox; +echo "[AK] Boot Script Started" | tee /dev/kmsg + + +# Mount root as RW to apply tweaks and settings Start +$BB mount -o remount,rw / +$BB mount -o rw,remount /system + +sleep 5 + + +#Build.prop +echo "net.rmnet0.dns1=1.1.1.1" >> /system/build.prop +echo "net.rmnet0.dns2=8.8.8.8" >> /system/build.prop +echo "net.dns1=1.1.1.1" >> /system/build.prop +echo "net.dns2=8.8.8.8" >> /system/build.prop + + +#Finish +echo "[AK] Exiting post-boot script" | tee /dev/kmsg diff --git a/overlay.d/sbin/busybox b/overlay.d/sbin/busybox new file mode 100644 index 0000000..fceaf55 Binary files /dev/null and b/overlay.d/sbin/busybox differ