add support for dm8000 rtc,
[enigma2.git] / lib / python / Tools / DreamboxHardware.py
1 from fcntl import ioctl
2 from struct import pack, unpack
3
4 def getFPVersion():
5         try:
6                 fp = open("/dev/dbox/fp0")
7                 return ioctl(fp.fileno(),0)
8         except IOError:
9                 print "getFPVersion failed!"
10                 return None
11
12 def setFPWakeuptime(wutime):
13         try:
14                 open("/proc/stb/fp/wakeup_time", "w").write(str(wutime))
15         except IOError:
16                 try:
17                         fp = open("/dev/dbox/fp0")
18                         ioctl(fp.fileno(), 6, pack('L', wutime)) # set wake up
19                 except IOError:
20                         print "setFPWakeupTime failed!"
21
22 def getFPWakeuptime():
23         ret = 0
24         try:
25                 ret = long(open("/proc/stb/fp/wakeup_time", "r").read())
26         except IOError:
27                 try:
28                         fp = open("/dev/dbox/fp0")
29                         ret = unpack('L', ioctl(fp.fileno(), 5, '    '))[0] # get wakeuptime
30                 except IOError:
31                         print "getFPWakeupTime failed!"
32         return ret
33
34 def getFPWasTimerWakeup():
35         was_wakeup = False
36         try:
37                 was_wakeup = int(open("/proc/stb/fp/was_timer_wakeup", "r").read()) and True or False
38         except:
39                 try:
40                         fp = open("/dev/dbox/fp0")
41                         was_wakeup = unpack('B', ioctl(fp.fileno(), 9, ' '))[0] and True or False
42                 except IOError:
43                         print "wasTimerWakeup failed!"
44         return was_wakeup
45
46 def clearFPWasTimerWakeup():
47         try:
48                 open("/proc/stb/fp/was_timer_wakeup", "w").write('0')
49         except:
50                 try:
51                         fp = open("/dev/dbox/fp0")
52                         ioctl(fp.fileno(), 10)
53                 except IOError:
54                         print "clearFPWasTimerWakeup failed!"