From 40cbda22f7da4b48ff73c0cd8a0235fda6ba319a Mon Sep 17 00:00:00 2001 From: Mathieu Maret Date: Tue, 1 Mar 2011 00:47:41 +0100 Subject: [PATCH] [script] select PM for radeon --- scripts/enable_gpu_powersave.sh | 2 + scripts/select_pgu_powersave.sh | 85 +++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100755 scripts/enable_gpu_powersave.sh create mode 100755 scripts/select_pgu_powersave.sh diff --git a/scripts/enable_gpu_powersave.sh b/scripts/enable_gpu_powersave.sh new file mode 100755 index 0000000..099cd7e --- /dev/null +++ b/scripts/enable_gpu_powersave.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo dynpm > /sys/class/drm/card0/device/power_method diff --git a/scripts/select_pgu_powersave.sh b/scripts/select_pgu_powersave.sh new file mode 100755 index 0000000..a0b058e --- /dev/null +++ b/scripts/select_pgu_powersave.sh @@ -0,0 +1,85 @@ +#!/bin/sh + +enableui=1 + +enable_method () { + echo "$1" > /sys/class/drm/card0/device/power_method +} + +enable_profile () { + echo "$1" > /sys/class/drm/card0/device/power_profile +} + +display_result () { + + if [ -e /sys/kernel/debug/dri/0/radeon_pm_info ] + then + res=$(cat /sys/kernel/debug/dri/0/radeon_pm_info) + echo "$res" + else + echo "You can watch GPU frequency by mountint debug fs" + echo "mount -t debugfs none /sys/kernel/debug" + echo "cat /sys/kernel/debug/dri/0/radeon_pm_info" + fi +} + + +displayui () { + PS3='Choose Power method: ' # Sets the prompt string. + # Otherwise it defaults to #? . + echo + + select methode in "dynpm" "profile" + do + echo + echo "Methode $methode choose" + echo + break + done + + + if [ "$methode" = "dynpm" ] + then + enable_method $methode + display_result + exit; + fi + + PS3='Choose Power profile ' + select profile in "low" "mid" "high" "auto" "default" + do + echo + echo "Profile $profile choose" + echo + break + done + + enable_method $methode + enable_profile $profile + +} + +if [[ $# = 1 && "$1" = "dynpm" ]] +then + enableui=0; + enable_method $1; +elif [[ $# = 2 && "$1" = "profile" ]] +then + case $2 in + "low" | "mid" | "high" | "auto" | "default" ) enableui=0; enable_method $1; enable_profile $2;; + *) enableui=1;; + esac +else + enableui=1 +fi + +if [ $enableui ] +then + displayui +fi + +display_result + +exit 0 + +