#!/bin/sh
#
# Simple script to alter kernel parameters for CPUMODE.d
# Andrew Wyatt
#
# Sysctl script for altering parameters when shifting to [performance] mode.
#
# Add any custom kernel parameters here.
#

echo 0 > /proc/sys/vm/laptop_mode
echo 500 > /proc/sys/vm/dirty_writeback_centisecs
echo 1 > /proc/sys/kernel/nmi_watchdog
echo 0 > /sys/module/snd_hda_intel/parameters/power_save
echo 0 > /sys/devices/system/cpu/sched_smt_power_savings

### OSS Radeon Driver power management
echo high > /sys/class/drm/card0/device/power_profile

for fdevice in /sys/bus/{pci,spi,i2c}/devices/*; do
  echo on > $fdevice/power/control
done

for sdevice in /sys/class/scsi_host/host*/link_power_management_policy; do
  echo max_performance > $sdevice
done

for usb in /sys/bus/usb/devices/*/power/autosuspend; do
  echo 2 > $usb;
done

### WIFI power management
WIFI_ADAPTER=$(find /sys/class/net/*/ | grep wireless | head -n 1 | sed -s -e "s#^/sys.*net/##" -e "s#/wireless.*\$##")
iw dev $WIFI_ADAPTER set power_save off
