X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=decoders%2Fusb_request%2Fpd.py;h=61dedb16ad1ee5c56fd7174f520f28a7ce95a8cd;hp=4227856a2d394b08b29e33eede08f5c0f9347ada;hb=502acfc2c71a2bbc97d4d7597150cd479bead1ee;hpb=72b2a50cc23388ba3568fc96deda79a7e39cbfc5 diff --git a/decoders/usb_request/pd.py b/decoders/usb_request/pd.py index 4227856..61dedb1 100644 --- a/decoders/usb_request/pd.py +++ b/decoders/usb_request/pd.py @@ -270,8 +270,8 @@ class Decoder(srd.Decoder): # Issue PCAP 'SUBMIT' packet. ts = self.ts_from_samplenum(ss) pkt = pcap_usb_pkt(request, ts, True) - self.putb(ss, (0, pkt.record_header())) - self.putb(ss, (0, pkt.packet())) + self.putb(ss, [0, pkt.record_header()]) + self.putb(ss, [0, pkt.packet()]) if request_end == 1: # Write annotation. @@ -288,8 +288,8 @@ class Decoder(srd.Decoder): # Issue PCAP 'COMPLETE' packet. ts = self.ts_from_samplenum(es) pkt = pcap_usb_pkt(request, ts, False) - self.putb(ss, (0, pkt.record_header())) - self.putb(ss, (0, pkt.packet())) + self.putb(ss, [0, pkt.record_header()]) + self.putb(ss, [0, pkt.packet()]) del self.request[(addr, ep)] def decode(self, ss, es, data): @@ -308,9 +308,10 @@ class Decoder(srd.Decoder): return if self.transaction_state == 'TOKEN RECEIVED': transaction_timeout = self.transaction_es - # token length is 35 bits, timeout is 16..18 bit times (USB 2.0 7.1.19.1) + # Token length is 35 bits, timeout is 16..18 bit times + # (USB 2.0 7.1.19.1). transaction_timeout += int((self.transaction_es - self.transaction_ss) / 2) - if (ss > transaction_timeout): + if ss > transaction_timeout: self.transaction_es = transaction_timeout self.handshake = 'timeout' self.handle_transfer() @@ -350,6 +351,9 @@ class Decoder(srd.Decoder): self.transaction_es = es self.handle_transfer() + elif pname == 'PRE': + return + else: self.putr(ss, es, [4, ['ERR: received unhandled %s token in state %s' % (pname, self.transaction_state)]])