gpio: add InOut
authorSebastien Bourdeauducq <sebastien@milkymist.org>
Thu, 5 Dec 2013 23:06:53 +0000 (00:06 +0100)
committerSebastien Bourdeauducq <sebastien@milkymist.org>
Thu, 5 Dec 2013 23:06:53 +0000 (00:06 +0100)
misoclib/gpio/__init__.py

index d02332eca6bea9e37b8373f0ed9366f1766a732c..c29dc0fdd786d667fbd77dfcab8452b59211f3ff 100644 (file)
@@ -12,6 +12,14 @@ class GPIOOut(Module, AutoCSR):
                self._r_out = CSRStorage(flen(signal))
                self.comb += signal.eq(self._r_out.storage)
 
+class GPIOInOut(Module):
+       def __init__(self, in_signal, out_signal):
+               self.submodules.gpio_in = GPIOIn(in_signal)
+               self.submodules.gpio_out = GPIOOut(out_signal)
+
+       def get_csrs(self):
+               return self.gpio_in.get_csrs() + self.gpio_out.get_csrs()
+
 class Blinker(Module):
        def __init__(self, signal, divbits=26):
                counter = Signal(divbits)