try this diff: ```diff diff --git a/software/glasgow/platform/generic.py b/software/glasgow/platform/generic.py index cf9bbc69..190dba0e 100644 --- a/software/glasgow/platform/generic.py +++ b/software/glasgow/platform/generic.py @@ -77,13 +77,14 @@ class GlasgowGenericPlatform: # If necessary (on revC+), create another buffer driving `oe_port` while being careful # to match the latency of `io_port`. if buffer.port.oe_port is not None: + oe_wide = buffer.oe.replicate(len(buffer.port.oe_port)) m.submodules.oe = oe_buffer = type(buffer)("o", buffer.port.oe_port, **o_domain_kwarg) if buffer.direction in (io.Direction.Output, io.Direction.Bidir): if isinstance(buffer, (io.Buffer, io.FFBuffer)): - m.d.comb += oe_buffer.o.eq(buffer.oe) + m.d.comb += oe_buffer.o.eq(oe_wide) elif isinstance(buffer, io.DDRBuffer): - m.d.comb += oe_buffer.o.eq(buffer.oe.replicate(2)) + m.d.comb += oe_buffer.o.eq(oe_wide.replicate(2)) else: raise TypeError(f"I/O buffer {buffer!r} is not supported") return m ```