[breaking-change] nexys4ddr: fix UART RTS/CTS pins.
authorIvan Grokhotkov <ivan@espressif.com>
Mon, 8 Jun 2020 21:19:24 +0000 (23:19 +0200)
committerwhitequark <whitequark@whitequark.org>
Thu, 11 Jun 2020 14:10:55 +0000 (14:10 +0000)
According to the schematic, RTS is E5 and CTS is D3. Previously these
were reversed to work around signal direction set in UARTResource.
Un-reverse the signals, and set correct direction by passing role=dce.

Ref. https://reference.digilentinc.com/_media/nexys4-ddr:nexys_4_ddr_sch.pdf

nmigen_boards/nexys4ddr.py

index 02dc1016b33e7bf4d1d4a2caf388ef25dc3f7115..f67979cc305fa13ecdcf9e7489f09ebf92219929 100644 (file)
@@ -100,8 +100,9 @@ class Nexys4DDRPlatform(Xilinx7SeriesPlatform):
             Attrs(IOSTANDARD="LVCMOS33")),
 
         UARTResource(0,
-            rx="C4", tx="D4", rts="D3", cts="E5",
-            attrs=Attrs(IOSTANDARD="LVCMOS33")),
+            rx="C4", tx="D4", rts="E5", cts="D3",
+            attrs=Attrs(IOSTANDARD="LVCMOS33"),
+            role="dce"),
 
         Resource("ps2_host", 0,
             Subsignal("clk", Pins("F4", dir="i")),