check pin position overwriting
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 30 Mar 2018 09:10:00 +0000 (10:10 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Fri, 30 Mar 2018 09:10:00 +0000 (10:10 +0100)
src/spec/interfaces.py

index b47545d78cd6a1b33721c80b210479fbe9ed24d0..194cf909228bb789d67a540eddf7b4413d248842 100644 (file)
@@ -32,6 +32,10 @@ class Pinouts(object):
         if pinidx not in self.pins:
             self.pins[pinidx] = v
         else:
+            for k in v:
+                assert k not in self.pins[pinidx], \
+                    "pin %d position %d already taken\n%s\n%s" % \
+                        (pinidx, k, str(v), self.pins[pinidx])
             self.pins[pinidx].update(v)
 
     def keys(self):