X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=decoders%2Fmx25lxx05d%2Fpd.py;h=96393863f01195631cb1f49f658380ca148af1c0;hb=0c7d5a56449babeb84013118935c0dacecdadd70;hp=1099953553d4c0333484624ca20b56b803ea3208;hpb=4e4f8527de0927f2eb1d98e90b58e018ba28d341;p=libsigrokdecode.git diff --git a/decoders/mx25lxx05d/pd.py b/decoders/mx25lxx05d/pd.py index 1099953..9639386 100644 --- a/decoders/mx25lxx05d/pd.py +++ b/decoders/mx25lxx05d/pd.py @@ -83,7 +83,7 @@ def decode_status_reg(data): return ret class Decoder(srd.Decoder): - api_version = 1 + api_version = 2 id = 'mx25lxx05d' name = 'MX25Lxx05D' longname = 'Macronix MX25Lxx05D' @@ -109,7 +109,6 @@ class Decoder(srd.Decoder): self.data = [] def start(self): - # self.out_python = self.register(srd.OUTPUT_PYTHON) self.out_ann = self.register(srd.OUTPUT_ANN) def putx(self, data): @@ -127,7 +126,7 @@ class Decoder(srd.Decoder): def handle_rdid(self, mosi, miso): if self.cmdstate == 1: # Byte 1: Master sends command ID. - self.start_sample = self.ss + self.ss_block = self.ss self.putx([2, ['Command: %s' % cmds[self.state][1]]]) elif self.cmdstate == 2: # Byte 2: Slave sends the JEDEC manufacturer ID. @@ -144,7 +143,7 @@ class Decoder(srd.Decoder): # TODO: Check self.device_id is valid & exists in device_names. # TODO: Same device ID? Check! d = 'Device: Macronix %s' % device_name[self.device_id] - self.put(self.start_sample, self.es, self.out_ann, [0, [d]]) + self.put(self.ss_block, self.es, self.out_ann, [0, [d]]) self.state = None else: self.cmdstate += 1 @@ -216,7 +215,7 @@ class Decoder(srd.Decoder): if self.cmdstate == 1: # Byte 1: Master sends command ID. self.addr = 0 - self.start_sample = self.ss + self.ss_block = self.ss self.putx([8, ['Command: %s' % cmds[self.state][1]]]) elif self.cmdstate in (2, 3, 4): # Bytes 2/3/4: Master sends sectror address (24bits, MSB-first). @@ -226,12 +225,12 @@ class Decoder(srd.Decoder): if self.cmdstate == 4: d = 'Erase sector %d (0x%06x)' % (self.addr, self.addr) - self.put(self.start_sample, self.es, self.out_ann, [24, [d]]) + self.put(self.ss_block, self.es, self.out_ann, [24, [d]]) # TODO: Max. size depends on chip, check that too if possible. if self.addr % 4096 != 0: # Sector addresses must be 4K-aligned (same for all 3 chips). d = 'Warning: Invalid sector address!' - self.put(self.start_sample, self.es, self.out_ann, [101, [d]]) + self.put(self.ss_block, self.es, self.out_ann, [101, [d]]) self.state = None else: self.cmdstate += 1 @@ -289,7 +288,7 @@ class Decoder(srd.Decoder): def handle_rems(self, mosi, miso): if self.cmdstate == 1: # Byte 1: Master sends command ID. - self.start_sample = self.ss + self.ss_block = self.ss self.putx([16, ['Command: %s' % cmds[self.state][1]]]) elif self.cmdstate in (2, 3): # Bytes 2/3: Master sends two dummy bytes. @@ -314,7 +313,6 @@ class Decoder(srd.Decoder): self.putx([24, ['%s ID' % d]]) if self.cmdstate == 6: - self.end_sample = self.es id = self.ids[1] if self.manufacturer_id_first else self.ids[0] self.putx([24, ['Device: Macronix %s' % device_name[id]]]) self.state = None @@ -361,7 +359,7 @@ class Decoder(srd.Decoder): self.ss, self.es = ss, es # If we encountered a known chip command, enter the resp. state. - if self.state == None: + if self.state is None: self.state = mosi self.cmdstate = 1 @@ -373,4 +371,3 @@ class Decoder(srd.Decoder): else: self.putx([24, ['Unknown command: 0x%02x' % mosi]]) self.state = None -