Я хочу нарисовать схему и развести плату. Это надо сделать так, чтобы потом не переделывать.
MDIO используется в общем случае не только для переговоров, но и для чтения\записи любых регистров, которые есть внутри PHY.
В случае SFP-модуля c SGMII внутри него есть не только PHY, но и EEPROM. Я пока не смотрел детально, но думаю, что EPROM имеет адрес 0, а PHY - адрес 1 на шине I2C.
По стандарту SFP в EPROM может содержаться много всего. Кроме того, как мне стало известно, большинство таких SFP делается на марвеле 1111, а сколько там регистров я хорошо представляю.

Т.о. нужно как-то управлять SFP.
В моем случае управление имеется на том же чипе, что и MAC, и оно сделано на MDIO. Там есть автоматический поллинг по MDIO и другие вещи, которые хотелось бы использовать по назначению. Данные, которые чип получает по MDIO, он сразу складывает в свои внутренние регистры, к которым обеспечивается доступ стандартными драйверами, без переписывания софта. От этого всего не хочется отказываться.
Конечно, можно прицепить какую-то внешнюю (по отношению к MAC) I2С, но хочется решить задачу красиво и правильно.