X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/7319cb85c7a9a6304ac92a7854a5d79c9d9f115b..d8bb70354594dddb6ef28f6d41ce733bd9caf4e6:/lib/python/Tools/DreamboxHardware.py diff --git a/lib/python/Tools/DreamboxHardware.py b/lib/python/Tools/DreamboxHardware.py index 4f873e9e..5461f7b0 100644 --- a/lib/python/Tools/DreamboxHardware.py +++ b/lib/python/Tools/DreamboxHardware.py @@ -1,7 +1,58 @@ +from fcntl import ioctl +from struct import pack, unpack + def getFPVersion(): - from fcntl import ioctl + ret = None try: - fp = open("/dev/dbox/fp0") - return ioctl(fp.fileno(),0) + ret = long(open("/proc/stb/fp/version", "r").read()) except IOError: - return None + try: + fp = open("/dev/dbox/fp0") + ret = ioctl(fp.fileno(),0) + except IOError: + print "getFPVersion failed!" + return ret + +def setFPWakeuptime(wutime): + try: + open("/proc/stb/fp/wakeup_time", "w").write(str(wutime)) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ioctl(fp.fileno(), 6, pack('L', wutime)) # set wake up + except IOError: + print "setFPWakeupTime failed!" + +def getFPWakeuptime(): + ret = 0 + try: + ret = long(open("/proc/stb/fp/wakeup_time", "r").read()) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ret = unpack('L', ioctl(fp.fileno(), 5, ' '))[0] # get wakeuptime + except IOError: + print "getFPWakeupTime failed!" + return ret + +def getFPWasTimerWakeup(): + was_wakeup = False + try: + was_wakeup = int(open("/proc/stb/fp/was_timer_wakeup", "r").read()) and True or False + except: + try: + fp = open("/dev/dbox/fp0") + was_wakeup = unpack('B', ioctl(fp.fileno(), 9, ' '))[0] and True or False + except IOError: + print "wasTimerWakeup failed!" + return was_wakeup + +def clearFPWasTimerWakeup(): + try: + open("/proc/stb/fp/was_timer_wakeup", "w").write('0') + except: + try: + fp = open("/dev/dbox/fp0") + ioctl(fp.fileno(), 10) + except IOError: + print "clearFPWasTimerWakeup failed!"