summarylogtreecommitdiffstats
path: root/use-sysfs.patch
diff options
context:
space:
mode:
authorQue Quotion2017-02-16 02:22:37 +0900
committerQue Quotion2017-02-16 02:22:37 +0900
commitd0a74b48e7645d751c9b91d108fb9b76d4b637e5 (patch)
tree2324935e77c34ea3d25da1f6551e50d90f8345e0 /use-sysfs.patch
parente99a57dfe695cb7319e974dba37e728d5927925b (diff)
downloadaur-d0a74b48e7645d751c9b91d108fb9b76d4b637e5.tar.gz
Transitional: use sysfs instead of mangled cpufreq/cpupower functions
Diffstat (limited to 'use-sysfs.patch')
-rw-r--r--use-sysfs.patch90
1 files changed, 90 insertions, 0 deletions
diff --git a/use-sysfs.patch b/use-sysfs.patch
new file mode 100644
index 000000000000..9b06a5071e0e
--- /dev/null
+++ b/use-sysfs.patch
@@ -0,0 +1,90 @@
+--- src/indicator-cpufreq/indicator_cpufreq/indicator.py 2016-10-23 20:53:24.066983494 +0900
++++ src/indicator-cpufreq/indicator_cpufreq/indicator.py 2017-02-16 01:09:11.625695652 +0900
+@@ -29,6 +29,7 @@
+ from gettext import gettext as _
+ #gettext.textdomain('indicator-cpufreq')
+
++import glob
+
+ def readable_throttle(t):
+ return t
+@@ -101,24 +103,26 @@
+
+ # frequency menu items
+ #freqs = cpufreq.get_available_frequencies(self.cpus[0])
+- freqs = reversed(sorted(set(cpufreq.get_available_frequencies(self.cpus[0]))))
+- freqmenu = Gtk.Menu()
+- freqm = Gtk.MenuItem("CPU Frequency")
+- freqm.set_submenu(freqmenu)
+- for freq in freqs:
+- menu_item = Gtk.RadioMenuItem.new_with_label(group, readable_frequency(freq))
+- group = menu_item.get_group()
+- freqmenu.append(menu_item)
+- menu_item.connect("activate", self.select_activated, 'frequency', freq)
+- self.select_items[freq] = menu_item
+- menu.append(freqm)
++ #freqs = reversed(sorted(set(cpufreq.get_available_frequencies(self.cpus[0]))))
++ #freqmenu = Gtk.Menu()
++ #freqm = Gtk.MenuItem("CPU Frequency")
++ #freqm.set_submenu(freqmenu)
++ #for freq in freqs:
++ # menu_item = Gtk.RadioMenuItem.new_with_label(group, readable_frequency(freq))
++ # group = menu_item.get_group()
++ # freqmenu.append(menu_item)
++ # menu_item.connect("activate", self.select_activated, 'frequency', freq)
++ # self.select_items[freq] = menu_item
++ #menu.append(freqm)
+
+ # governor menu items
+- governors = cpufreq.get_available_governors(self.cpus[0])
++ govFile = open("/sys/devices/system/cpu/cpufreq/policy0/scaling_available_governors")
++ governors = govFile.readline().strip("\n")
++ govList = governors.split(" ")
+ govmenu = Gtk.Menu()
+ govm = Gtk.MenuItem("CPU Governor")
+ govm.set_submenu(govmenu)
+- for governor in governors:
++ for governor in govList:
+ if governor == 'userspace':
+ continue
+ menu_item = Gtk.RadioMenuItem.new_with_label(group, readable_governor(governor))
+@@ -127,6 +131,7 @@
+ menu_item.connect('activate', self.select_activated, 'governor', governor)
+ self.select_items[governor] = menu_item
+ menu.append(govm)
++ govFile.close
+
+ # p-state turbo menu items
+ psturbo = ['on', 'off']
+@@ -182,13 +187,29 @@
+ for i in self.select_items.values():
+ i.handler_block_by_func(self.select_activated)
+
+- fmin, fmax, governor = cpufreq.get_policy(self.cpus[0])
++ govFile = open("/sys/devices/system/cpu/cpufreq/policy0/scaling_governor", 'r')
++ governor = govFile.readline().strip("\n")
++ fmnFile = open("/sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq", 'r')
++ fmin = int(fmnFile.readline().strip("\n"))
++ fmxFile = open("/sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq", 'r')
++ fmax = int(fmxFile.readline().strip("\n"))
+ # use the highest freq among cores for display
+- freq = max([cpufreq.get_freq_kernel(cpu) for cpu in self.cpus])
++ freq_list = glob.glob('/sys/devices/system/cpu/cpufreq/policy*/scaling_cur_freq')
++ freqs = []
++ for cur_freq in freq_list:
++ f = open(cur_freq, 'r')
++ freqs.append(int(f.readline().strip("\n")))
++ f.close
++
++ freq = max(freqs)
+
+ ratio = min([25, 50, 75, 100], key=lambda x: abs((fmax - fmin) * x / 100.0 - (freq - fmin)))
+ if freq < fmax and ratio == 100:
+ ratio = 75
++
++ govFile.close
++ fmnFile.close
++ fmxFile.close
+
+ #self.set_icon(get_data_file('media', 'indicator-cpufreq-%d.png' % ratio))
+ self.ind.set_icon('indicator-cpufreq-%d' % ratio)