Skip to content

Commit c61ecfe

Browse files
committed
Add RGMIIResource
1 parent a35d870 commit c61ecfe

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

nmigen_boards/resources/interface.py

+18-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
__all__ = [
55
"UARTResource", "IrDAResource", "SPIResource", "I2CResource",
6-
"DirectUSBResource", "ULPIResource"
6+
"DirectUSBResource", "ULPIResource", "RGMIIResource"
77
]
88

99

@@ -130,3 +130,20 @@ def ULPIResource(*args, data, clk, dir, nxt, stp, rst=None,
130130
if attrs is not None:
131131
io.append(attrs)
132132
return Resource.family(*args, default_name="usb", ios=io)
133+
134+
135+
def RGMIIResource(*args, txc, txd, tx_ctl, rxc, rxd, rx_ctl, mdc, mdio, attrs=None, conn=None):
136+
io = []
137+
138+
io.append(Subsignal("txc", Pins(txc, dir="o", conn=conn, assert_width=1)))
139+
io.append(Subsignal("txd", Pins(txd, dir="o", conn=conn, assert_width=4)))
140+
io.append(Subsignal("tx_ctl", Pins(txc, dir="o", conn=conn, assert_width=1)))
141+
io.append(Subsignal("rxc", Pins(rxc, dir="i", conn=conn, assert_width=1)))
142+
io.append(Subsignal("rxd", Pins(rxd, dir="i", conn=conn, assert_width=4)))
143+
io.append(Subsignal("rx_ctl", Pins(txc, dir="i", conn=conn, assert_width=1)))
144+
io.append(Subsignal("mdc", Pins(mdc, dir="o", conn=conn, assert_width=1)))
145+
io.append(Subsignal("mdio", Pins(mdio, dir="io", conn=conn, assert_width=1)))
146+
147+
if attrs is not None:
148+
io.append(attrs)
149+
return Resource.family(*args, default_name="rgmii", ios=io)

0 commit comments

Comments
 (0)