]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/x2444m/pd.py
x2444m: Eliminate duplicate annotation class ID.
[libsigrokdecode.git] / decoders / x2444m / pd.py
index 751e6d36feb4f5a7ba994379e6a13d0ba00a3fdf..57f12252d750c1d467a144a542c559b2ec85f6b2 100644 (file)
@@ -28,7 +28,8 @@ registers = {
     0x84: ['WREN',  4, lambda _: ''],
     0x85: ['RCL',   5, lambda _: ''],
     0x86: ['READ',  6, lambda v: '0x%x' % v],
-    0x87: ['READ',  7, lambda v: '0x%x' % v],
+    0x87: ['READ',  6, lambda v: '0x%x' % v],
+    # 0x86/0x87 are both valid READ commands (bit 0 is "don't care").
 }
 
 class Decoder(srd.Decoder):
@@ -39,7 +40,8 @@ class Decoder(srd.Decoder):
     desc = 'Xicor X2444M/P nonvolatile static RAM protocol.'
     license = 'gplv2+'
     inputs = ['spi']
-    outputs = ['x2444m']
+    outputs = []
+    tags = ['IC', 'Memory']
     annotations = (
         ('wrds', 'Write disable'),
         ('sto', 'Store RAM data in EEPROM'),
@@ -48,7 +50,6 @@ class Decoder(srd.Decoder):
         ('wren', 'Write enable'),
         ('rcl', 'Recall EEPROM data into RAM'),
         ('read', 'Data read from RAM'),
-        ('read', 'Data read from RAM'),
     )
 
     def __init__(self):
@@ -64,10 +65,11 @@ class Decoder(srd.Decoder):
 
     def putreadwrite(self, ss, es, reg, idx, addr, value):
         self.put(ss, es, self.out_ann,
-                 [idx, ['%s: %s => 0x%4.4x' % (reg, addr, value)]])
+                 [idx, ['%s: %s => 0x%4.4x' % (reg, addr, value),
+                        '%s: %s => 0x%4.4x' % (reg[0], addr, value), reg[0]]])
 
     def putcmd(self, ss, es, reg, idx):
-        self.put(ss, es, self.out_ann, [idx, ['%s' % reg]])
+        self.put(ss, es, self.out_ann, [idx, [reg, reg[0]]])
 
     def decode(self, ss, es, data):
         ptype, mosi, miso = data