diff --git a/usr/bin/power_key.py b/usr/bin/power_key.py index 25c65bdd5bec168ef2a57ea297fbb4f68e579f8f..eb8f7626b1cadbda1d20eb3615a00618ebacec72 100755 --- a/usr/bin/power_key.py +++ b/usr/bin/power_key.py @@ -20,47 +20,19 @@ def check_screen(): return True -def find_dram_devfreq(): - for node in ['devfreq0', '3d400000.memory-controller']: - dram = "/sys/class/devfreq/{}".format(node) - if os.path.isdir(dram): - break - return dram - - -set_freq = os.path.join(find_dram_devfreq(), 'userspace/set_freq') - - -def set_dram_freq(freq): - with open(set_freq, "w+") as f: - f.write(freq + "\n") - - -def get_low_freq(): - with open("/proc/version") as f: - return ["25000000", "100000000"]['version 5.3.' in f.read()] - - def main(args): powerkeyname = '30370000.snvs:snvs-powerkey' - hi_speed = "800000000" path = [path for path in evdev.list_devices() if evdev.InputDevice(path).name == powerkeyname] foundpath = ''.join(path) dev = InputDevice(foundpath) - with open(os.path.join(find_dram_devfreq(), 'governor'), "w+") as f: - f.write("userspace\n") - - set_dram_freq(hi_speed) - power_wait_time = 1.5 if check_screen(): blank = False else: blank = True - set_dram_freq(get_low_freq()) # wait for the key release event so that we can differentiate # between long and short press @@ -78,7 +50,6 @@ def main(args): if event.code == ecodes.KEY_POWER and blank: print("screen wakeup") blank = False - set_dram_freq(hi_speed) else: state[event.code] = event.timestamp(), event print("Key: %s %d %d pressed" % (ecodes.KEY[event.code], event.code, ecodes.KEY_POWER)) @@ -88,10 +59,8 @@ def main(args): delta = time() - event.timestamp() print("Key: %s released %3.2f" % (ecodes.KEY[event.code], delta)) if event.code == ecodes.KEY_POWER and delta < power_wait_time: - # short power key press blanks the screen so change the DDR freq + # short power key press blanks the screen and prevents shutdown blank = True - set_dram_freq(get_low_freq()) - # os.system("systemctl suspend -q") del state[event.code]