According to Wikipedia:

GMII [...] is backwards compatible with the media-independent interface (MII)

But is RGMII backwards compatible with RMII?

I'm asking this because I'm making a schematic of an iMX6 System on Module. I have the RGMII pins, I only want a 100/10 interface, I found some RGMII interface (for gigabit ethernet), and some RMII and MII interfaces (for 10/100).

  • \$\begingroup\$ Can you post the information about the SoM you are implementing? Specifically, what processor is used by that board? \$\endgroup\$ – user2943160 Jun 2 '16 at 17:37

RGMII is Gigabit, RMII is Fast Ethernet as you've found and they have different pin counts. It's actually pretty easy to adapt RGMII <-> RMII if needed...if you have a FPGA or some digital logic fabric.

RGMII uses a 4-bit data interface, RMII is only 2-bits. I take it you want to interface a PHY to the RGMII controller on the i.MX6, but only run it at 10/100 speeds. I've had that design constraint a couple of times, and generally, the most flexible option is to use a gigabit PHY running at 10/100 at all times.

RGMII will be clocked much slower running at 10/100 speeds, which can make your layout a little bit easier (RGMII has an IMO poor design constraint where data changes simultaneously on a clock edge, requiring the designer to add delay in his PCB routing) as the constraints are relaxed when not at 10/100/1000 speeds.

If you must have a 10/100 PHY that uses RGMII, the Marvell 88E3018 is a rare part that is Fast Ethernet, but with RGMII MAC interface.

If you're lucky, the i.MX6 MAC may support running its RGMII host port in RMII mode, but if it doesn't, I think your best bet is to choose a common GigE PHY such as the KSZ9031RNX or 88E1512.

I am fairly certain though that you cannot take a host who has a RGMII only port and connect it up to a RMII PHY and expect that work out of the box. The MAC has to know it only has two-bits of data, not four (RMII-mode vs RGMII).

  • \$\begingroup\$ Thank you for the answer! I also found the KSZ9031RNX, and I think I will use it in 10/100 mode. \$\endgroup\$ – PierreOlivier Jun 3 '16 at 7:02

From HP's specifications on RGMII and TI's description of RMII mode, RMII is a subset of the RGMII pins, dropping 2 each of Tx and Rx. Thus, RMII operates at 50MHz for 100Mb operation while RGMII operates at 25MHz for 100Mb operation.

Looking a Broadcom switch product, it has a port that supports both RGMII and RMII. I suggest consulting your iMX6 SoM datasheet and processor datasheet to see if that RGMII port can be configured in RMII mode.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.