~ubuntu-branches/ubuntu/saucy/seabios/saucy-proposed

« back to all changes in this revision

Viewing changes to tools/readserial.py

  • Committer: Bazaar Package Importer
  • Author(s): Vagrant Cascadian
  • Date: 2010-11-26 17:54:44 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20101126175444-rpdeja25wf6fjycx
Tags: 0.6.1.2-1
* New upstream version from git tag. 
  - Fixes virtio-blk failure after reboot (Closes: #604735).
* Update debian/watch file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
import sys
12
12
import time
13
13
import select
14
 
import serial
 
14
import optparse
15
15
 
16
16
# Reset time counter after this much idle time.
17
17
RESTARTINTERVAL = 60
41
41
            if len(res[0]) == 1:
42
42
                continue
43
43
        d = infile.read(4096)
 
44
        if not d:
 
45
            break
44
46
        datatime = time.time()
45
47
 
46
48
        datatime -= len(d) * byteadjust
86
88
        logfile.write(out)
87
89
        logfile.flush()
88
90
 
89
 
def printUsage():
90
 
    print "Usage:\n   %s [<serialdevice> [<baud>]]" % (sys.argv[0],)
91
 
    sys.exit(1)
92
 
 
93
91
def main():
 
92
    usage = "%prog [options] [<serialdevice> [<baud>]]"
 
93
    opts = optparse.OptionParser(usage)
 
94
    opts.add_option("-f", "--file",
 
95
                    action="store_false", dest="serial", default=True,
 
96
                    help="read from file instead of serialdevice")
 
97
    opts.add_option("-n", "--no-adjust",
 
98
                    action="store_false", dest="adjustbaud", default=True,
 
99
                    help="don't adjust times by serial rate")
 
100
    options, args = opts.parse_args()
94
101
    serialport = 0
95
102
    baud = 115200
96
 
    if len(sys.argv) > 3:
97
 
        printUsage()
98
 
    if len(sys.argv) > 1:
99
 
        serialport = sys.argv[1]
100
 
    if len(sys.argv) > 2:
101
 
        baud = int(sys.argv[2])
 
103
    if len(args) > 2:
 
104
        opts.error("Too many arguments")
 
105
    if len(args) > 0:
 
106
        serialport = args[0]
 
107
    if len(args) > 1:
 
108
        baud = int(args[1])
 
109
    global ADJUSTBAUD
 
110
    ADJUSTBAUD=options.adjustbaud
102
111
 
103
 
    ser = serial.Serial(serialport, baud, timeout=0)
 
112
    if options.serial:
 
113
        # Read from serial port
 
114
        import serial
 
115
        ser = serial.Serial(serialport, baud, timeout=0)
 
116
    else:
 
117
        # Read from a file
 
118
        ser = open(serialport, 'rb')
 
119
        import fcntl
 
120
        import os
 
121
        fcntl.fcntl(ser, fcntl.F_SETFL
 
122
                    , fcntl.fcntl(ser, fcntl.F_GETFL) | os.O_NONBLOCK)
104
123
 
105
124
    logname = time.strftime("seriallog-%Y%m%d_%H%M%S.log")
106
125
    f = open(logname, 'wb')