Electronic – MDIO bus pull-ups

miipullup

What is the proper way to connect multiple ethernet devices via MDIO bus?

I know that MDIO (similarly to I2C) is open drain, so I think that I need (just as in I2C) two 1-4, 7 kOhm pull-ups both for MDIO and MDC pins (Do I actually need a pull-up for MDC pin as long as it is a clock output?).

So, my question is the following: if I want to connect 8 devices, what is the proper choice for nominals (1 kOhm or 4.7 kOhm) and is it sufficient to have only one pull-up on the bus or do I need multiple pull-ups (for each IC)? Thanks.

Best Answer

There is no need for multiple pull-ups on MDIO as that would amount to a single pull-up resistance anyway. You would look at MAC or PHY requirements for pull-up resistance and take a value that is compatible with all devices and can provide the timings that are necessary, as bus capacitance will slow down the rising edges.

MDC is an output. Basically, it does not need a pull-up. It might need a pull-down, but again, that is dependent on the MAC and PHY devices you are using.